summaryrefslogtreecommitdiff
path: root/members/arm/platforms/README.textile
blob: aee987b1e51dc7b05d9f0135e679657b65420cac (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
h1. ARM Juno Development Platform Software

This page describes the monthly ARM landing team software release for Juno

TABLE OF CONTENTS

"1. Preface":#preface

"2. Software":#sw

"2.1 Prerequisites":#pre

"2.2 Downloading the software and binaries":#down

"2.3 Building the software":#build

"2.4 Installing on your Juno":#install

"2.4 Installing prebuilt binaries your Juno":#prebuilt


h2(#preface). 1. Preface

The ARM software images contained in this released are distributed according to the "EULA":#https://releases.linaro.org/15.04/members/arm/android/images/armv8-android-juno-lsk#tabs-5

This release page describes how to download the source code and binaries, build the source code and install all the binaries on your Juno platform. There are also links below to download Linaro prebuilt binaries.

For a description of the Juno hardware and how to get started with the platform see the "Juno getting started guide":#http://community.arm.com/docs/DOC-8393

For any problems with your Juno system or this software please contact juno-support@arm.com

h2(#sw). 2. Software

This release supports 3 different software stacks which have been validated on the Juno platform. All include board firmware, System Power Controller firmware, ARM Trusted firmware and a choice of UEFI or u-boot loader. The options are:

* LSK - Linaro Stable Kernel (v3.10) + Android LCR
* LSK - Linaro Stable Kernel (v3.10) + OpenEmbedded Filesystem
* Linaro Tracking Kernel (latest) + OpenEmbedded Filesystem

For each option the instructions here use prebuilt binaries for the filesystem.

h3(#pre). 2.1 Prerequisites

* To be run on an Ubuntu 14.04 LTS system

* Preinstall the following packages:
                bc
                bison
                build-essential
                curl
                flex
                g++-multilib
                gcc-multilib
                genext2fs
                git
                gperf
                iasl
                libc6:i386
                libstdc++6:i386,
                libncurses5:i386
                libxml2-utils
                make
                openjdk-7-jdk
                python
                python-mako
                uuid-dev
                wget
                zlib1g:i386
                zlib1g-dev:i386
                zip

* Install Linaro GCC (aarch64 little endian) from "here":#http://releases.linaro.org/14.11/components/toolchain/binaries/aarch64-linux-gnu/gcc-linaro-4.9-2014.11-x86_64_aarch64-linux-gnu.tar.xz

* Install the 'Repo' tool as per "Installing Repo":#https://source.android.com/source/downloading.html. Do not initialize the Repo client

* If necessary, also register for authenticated access by following the instructions in the "Using Authentication" section of "Installing Repo":#https://source.android.com/source/downloading.html

* Configure Git's user.email and user.name attributes before using repo.

h3(#down). 2.2 Downloading the software and binaries

* Create a workspace directory and cd into it
* Use the repo tool to sync all the software GITs
For a LSK kernel:
repo init -u https://git.linaro.org/landing-teams/working/arm/manifest -b juno -m lsk.xml
For the latest tracking kernel:
repo init -u https://git.linaro.org/landing-teams/working/arm/manifest -b juno -m latest.xml
Then in both cases:
repo sync -j8

* Download the filesystem binary image you want to use:
For Android, download juno.img.bz2 from "here":#https://releases.linaro.org/15.04/android/lcr/armv8-android-juno-lsk (accept the EULA to download)
For OE, download your preferred filesystem image from "here":#https://releases.linaro.org/15.04/openembedded/juno-lsk - (called lt-vexpress64-openembedded-<type>-armv8-gcc-<version>.img.gz where <type> is minimal or lamp)
For either case unpack the .img file. Insert a USB stick (minimum 4GB) into your system and run:

sudo dd if=<downloaded file>.img of=/dev/sd<x> (where <x> is the letter corresponding to the USB stick)

h3(#build). 2.3 Building the software

* First edit your <workspace>/build-scripts/variants/juno-oe to make LINUX_COMPILER point at the relative path and prefix to where you installed Linaro GCC

* From the root directory of your workspace execute the following commands to build the software components and package them into an output folder:

* For LSK - Linaro Stable Kernel (v3.10) + Android LCR

./build-scripts/build-all.sh juno-android
./build-scripts/build-all.sh juno-android package

* For LSK - Linaro Stable Kernel (v3.10) + OpenEmbedded Filesystem OR
* For Linaro Tracking Kernel (latest) + OpenEmbedded Filesystem

./build-scripts/build-all.sh juno-oe
./build-scripts/build-all.sh juno-oe package

The build will create binaries for ARM Trusted Firmware, UEFI, u-boot, Linux and a DTB. The Firmware components will then be packaged into a FIP and all the binaries copied under the "output" folder.
Running a different build will overwrite derived objects in the source tree, but will not overwrite the output folder created by the package step.

h3(#install). 2.4 Installing on your Juno

* Copy the NOR flash binaries to your Juno

Connect up the USB configuration port to your build system whereby the NOR flash will be mounted as a new drive For UEFI copy the contents of output/<variant>/uefi to the SOFTWARE folder
For u-boot copy the contents of output/<variant>/uboot to the SOFTWARE folder
Where <variant> is one of juno-android or juno-oe

Insert the USB stick created above into your Juno

Power cycle your Juno and it will run the new software

h3(#prebuilt). 2.4 Installing prebuilt binaries your Juno

If you want to use prebuilt binaries rather than download and build the software as described above, they can be downloaded from:

* "Linaro Stable Kernel (v3.10) + Android LCR":#https://releases.linaro.org/15.04/android/lcr/armv8-android-juno-lsk
* "Linaro Stable Kernel (v3.10) + OpenEmbedded Filesystem":#https://releases.linaro.org/15.04/openembedded/juno-lsk
* "Linaro Tracking Kernel (latest) + OpenEmbedded Filesystem":#https://releases.linaro.org/15.04/openembedded/aarch64

In each case follow the instructions in the Binary Image Installation tab to install