Name | Last modified | Size | License | |
---|---|---|---|---|
Parent Directory |
ARM Development Platform Software
This page describes the monthly ARM landing team software release for the ARM Juno Platform
TABLE OF CONTENTS
2.2 Downloading the software and binaries
2.3 Downloading the Juno filesystem binaries
2.4 Building the Juno software
2.6 Installing prebuilt binaries your Juno
1. Preface
The ARM software images contained in this released are distributed according to the EULA
This release page describes how to download the source code and binaries, build the source code and install all the binaries on your 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
For any problems with your Juno system or this software please contact juno-support@arm.com
2. Software
This release supports 3 different software stacks which have been validated on the 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 15.04 release prebuilt binaries for the filesystem. Standard Linaro instructions can be used to rebuild the filesystem yourself.
2.1 Prerequisites
- To be run on an Ubuntu 14.04 LTS system
- Preinstall the following packages:
- acpica-tools
- 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
- Install the ‘Repo’ tool as per Installing Repo. 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
- Configure Git’s user.email and user.name attributes before using repo.
2.2 Downloading the software sources
- 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 15.05 -m pinned-lsk.xml
For the latest tracking kernel:
repo init -u https://git.linaro.org/landing-teams/working/arm/manifest -b 15.05 -m pinned-latest.xml
Then in both cases:
repo sync -j8
2.3 Downloading the Juno filesystem binaries
For Android, download juno.img.bz2 from here (accept the EULA to download)
For OE, download your preferred filesystem image from here – (called lt-vexpress64-openembedded-armv8-gcc
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
For Android, download ramdisk.img from here and copy to the root directory of your workspace.
2.4 Building the Juno software
- First decide how you wish to specify your cross compiler:
- Add the CROSS_COMPILE=
prefix to all build script invocations. - Edit your
/build-scripts/variants/juno-oe to make CROSS_COMPILE point at the path and prefix to where you installed Linaro GCC. - note: you may specify the prefix without a path if the compiler is on your path.
- Add the CROSS_COMPILE=
- 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.
2.5 Installing on your Juno
- Mount the Juno flash device
Connect up the USB configuration port to your build system whereby the NOR flash will be mounted as a new drive.
- Ensure your Juno system binaries are up to date
From your workspace recovery folder copy all of:
SOFTWARE, SITE1, MB and config.txt overwriting the files that were already there on the mounted drive.
- Copy the binaries you have built to your Juno
For UEFI copy the contents of output/
For u-boot copy the contents of output/
Where
- Insert the USB stick created above into your Juno
Power cycle your Juno and it will copy and run the new software images.
2.6 Installing prebuilt binaries your Juno
If you want to use prebuilt firmware and kernel binaries rather than download and build the software as described above, first, you should create a USB disk by following the instructions in section 2.3 and then download the prebuilt firmware images for the latest release from here
The pre-built ZIP contains the following ZIP files that you unpack to the firmware volume on your board, depending upon the configuration you want:
Filename | Variant | Kernel | Bootloader |
juno-lsk-android-uboot.zip | Android | LSK 3.10 | U-Boot |
juno-latest-oe-uefi.zip | OpenEmbedded | latest | UEFI |
Other variants are only available when built from source. The current prebuilt binaries are targeted at Mobile and Enterprise segments.