summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRyan Harkin <ryan.harkin@linaro.org>2015-09-14 17:03:32 +0100
committerRyan Harkin <ryan.harkin@linaro.org>2015-09-14 17:03:32 +0100
commitfe35af0eb2486281680b3bb97e101660f54d1140 (patch)
tree1b3af817b5cabb77eb9b5bb0e38b699159f52535
parent5ca0d84871eaeb7e22f8cf6f8bbd4f056f11b64c (diff)
15.09: copy README from 15.08
Change-Id: I7ff4f7a7b673396c289c1cd6f29ef36c8d8ec4cb Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org>
-rw-r--r--members/arm/platforms/15.09/README.textile278
1 files changed, 278 insertions, 0 deletions
diff --git a/members/arm/platforms/15.09/README.textile b/members/arm/platforms/15.09/README.textile
new file mode 100644
index 0000000..1543df4
--- /dev/null
+++ b/members/arm/platforms/15.09/README.textile
@@ -0,0 +1,278 @@
+h1. ARM Development Platform Software
+
+This page describes the monthly ARM landing team 15.08 software release for the ARM Platforms
+
+TABLE OF CONTENTS
+
+"1. Preface":#preface
+
+"2. Software":#sw
+
+"2.1 Prerequisites":#pre
+
+"2.2 Downloading the software and binaries":#down
+
+"2.3 Downloading the filesystem binaries":#down-bins
+
+"2.4 Building the software":#build
+
+"2.5 Installing on your Juno or TC2":#install
+
+"2.6 Running the FVP":#fvp
+
+"2.7 Using prebuilt binaries":#prebuilt
+
+"2.8 Cleaning the build":#clean
+
+h2(#preface). 1. Preface
+
+The ARM software images contained in this release are distributed according to the "EULA":https://wiki.linaro.org/ARM/Juno/EULA
+
+* This release supports the following hardware platforms:
+** "Juno ARM Development Platform":http://www.arm.com/products/tools/development-boards/versatile-express/juno-arm-development-platform.php
+** "Cortile Express V2P-CA15x2_CA7x3 (TC2)":http://www.arm.com/products/tools/development-boards/versatile-express/coretile-express.php
+* and the following FVP (Fixed Virtual Platform) models:
+** "ARMv8 Foundation":http://www.arm.com/products/tools/models/fast-models/foundation-model.php, release 9.4
+** "AEMv8A Base":http://www.arm.com/fvp, release 9.4
+
+This document describes how to:
+
+* Obtain software sources and related binaries
+* Build the software sources
+* Install the resulting binaries on your platform
+
+There are also instructions detailing the use of Linaro's prebuilt binaries.
+
+For any problems with your Juno system, Fast Model / FVP, or this software, please contact "support@arm.com":mailto:support@arm.com.
+
+For a description of the Juno hardware and how to get started with the platform see the "Juno Getting Started Guide":http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0928a/index.html
+
+For a description of ARM Fastmodels see "Modeling and ESL":http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.set.models/index.html
+
+h2(#sw). 2. Software
+
+This release supports three different software stacks, each of which have been validated on the ARM Juno board, the ARMv8 Foundation Platform and the AEMv8-A Base FVP. These software stacks include board firmware, System Control Processor firmware, ARM Trusted Firmware, and a choice of either UEFI or U-Boot.
+
+The options are:
+
+* LSK - Linaro Stable Kernel, plus one of:
+** Android LCR filesystem
+** OpenEmbedded filesystem
+** BusyBox filesystem
+
+* Linaro Tracking Kernel (latest), plus one of:
+** OpenEmbedded filesystem
+** BusyBox filesystem
+
+Note: The Linaro Tracking Kernel does not support the Android LCR filesystem.
+
+h3(#pre). 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":http://releases.linaro.org/15.05/components/toolchain/binaries/aarch64-linux-gnu/gcc-linaro-4.9-2015.05-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 sources
+
+* Create a workspace directory and cd into it
+* Continue to follow the instructions below
+
+h3(#down-bins). 2.3 Downloading the filesystem binaries
+
+Ignore this section if you want to boot BusyBox
+
+For Juno Android, download "juno.img.bz2":https://releases.linaro.org/15.06/android/reference-lcr/juno/juno.img.bz2 (accept the EULA to download)
+
+For FVP Android, download "fvp.img.bz2":https://releases.linaro.org/15.06/android/reference-lcr/fvp/fvp.img.bz2
+
+For TC2 Android, download "vexpress.img.bz2":https://releases.linaro.org/15.06/android/reference-lcr/vexpress-tc2/vexpress.img.bz2
+
+For any 64-bit platform minimal OE, download "lt-vexpress64-openembedded_minimal-armv8-gcc-4.9_20150620-722.img.gz":https://releases.linaro.org/15.06/openembedded/juno-lsk/lt-vexpress64-openembedded_minimal-armv8-gcc-4.9_20150620-722.img.gz
+
+For any 64-bit platform LAMP OE, download "lt-vexpress64-openembedded_lamp-armv8-gcc-4.9_20150620-722.img.gz":https://releases.linaro.org/15.06/openembedded/juno-lsk/lt-vexpress64-openembedded_lamp-armv8-gcc-4.9_20150620-722.img.gz
+
+For any 32-bit platform ALIP OE, download "lsk-vexpress-openembedded_alip-armv7a-gcc-4.9_20150620-722.img.gz":http://releases.linaro.org/15.06/members/arm/openembedded/vexpress-lsk/lsk-vexpress-openembedded_alip-armv7a-gcc-4.9_20150620-722.img.gz
+
+Unpack the compressed image file.
+
+For FVP copy the image to the root directory of your workspace.
+
+For Juno or TC2 insert a USB stick (minimum 4GB) into your system and run:
+
+bc. sudo dd if=<downloaded file>.img of=/dev/sd<x>
+
+(where @<x>@ is the letter corresponding to the USB stick)
+
+For Juno Android, download "ramdisk.img":https://releases.linaro.org/15.06/android/reference-lcr/juno/ramdisk.img or
+for FVP Android, download "ramdisk.img":https://releases.linaro.org/15.06/android/reference-lcr/fvp/ramdisk.img or
+for TC2 Android, download "ramdisk.img":https://releases.linaro.org/15.06/android/reference-lcr/vexpress-tc2/ramdisk.img
+and copy to the root directory of your workspace.
+
+h3(#build). 2.4 Building the software
+
+* First decide how you wish to specify your cross compiler:
+** Add the @CROSS_COMPILE=<path-and-prefix>@ prefix to all build script invocations.
+** Edit @<workspace>/build-scripts/variants@ files 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.
+* Next, choose the setup from the tables below and copy the variables into your shell before executing the "Commands to run":
+
+h4. Choose your platform
+
+| *Platform* | *Variable* |
+| Juno ARM Development Platform | @PLATFORM=juno@ |
+| FVP Foundation or AEMv8 models | @PLATFORM=fvp@ |
+| Versatile Express TC2 | @PLATFORM=tc2@ |
+
+h4. Choose your manifest
+
+| *Kernel Version* | *Variable* |
+| LSK | @MANIFEST=lsk@ |
+| Latest Tracking Kernel | @MANIFEST=latest@ |
+
+h4. Choose your environment type
+
+| *Environment* | *Variable* |
+| Android | @TYPE=android@ |
+| BusyBox | @TYPE=busybox@ |
+| OpenEmbedded | @TYPE=oe@ |
+
+h4. Commands to run
+
+Once you have configured the variables in your shell, run these commands from the root directory of your workspace to build the software components and package them into an output folder:
+
+bc. repo init -u https://git.linaro.org/landing-teams/working/arm/manifest -b 15.08 -m pinned-${MANIFEST}.xml
+repo sync -j8
+./build-scripts/build-all.sh ${PLATFORM}-${TYPE}
+./build-scripts/build-all.sh ${PLATFORM}-${TYPE} package
+
+The build will create binaries for ARM Trusted Firmware, UEFI, U-Boot, Linux, ramdisk and a DTB where appropriate. For Aarch64 platforms, the Firmware components will then be packaged into a FIP. 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.5 Installing on your Juno or TC2
+
+* Mount the board's flash device
+
+Connect up the USB configuration port to your build system whereby the MMC which populates the NOR flash at boot will be mounted as a new drive.
+
+* Ensure your system binaries are up to date
+
+For Juno, take the system binaries from the recovery folder from your workspace
+For TC2, take the system binaries from the vexpress-firmware folder from your workspace
+
+For both Juno and TC2, delete all the files on the mounted drive and copy over all of @SOFTWARE@, @SITE1@, @MB@ and @config.txt@.
+
+* Copy the binaries you have built to your board
+
+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 the argument to build-all.sh above - eg: juno-android or tc2-android
+
+* For Android or OpenEmbedded Insert the USB stick created above into your board (not needed for BusyBox)
+
+Power cycle your board and it will copy and run the new software images.
+
+h3(#fvp). 2.6 Running the FVP
+
+To run the FVP models, you must first set the following variables:
+
+| *Variable* | *Usage* | *Example* |
+| $MODEL | This sets the path and filename of the model executable | /usr/local/FVP_Base_AEMv8A-AEMv8A |
+| $DISK | This sets the path and filename of the disk image. Busybox variants don't need to set DISK, however both OE and Android variants will fail to boot without it. You should download and unzip the disk image before running the model. | $USER/Downloads/fvp.img |
+
+Then, from your workspace root directory, you launch the model, telling it the path of the variant you wish to boot.
+
+First set the model variable
+
+bc. export MODEL=/usr/local/FVP_Base_AEMv8A-AEMv8A
+
+Example 1: Running a busybox uboot variant:
+
+bc. ./model-scripts/run_model.sh output/fvp-busybox/uboot
+
+Example 2: Running an Android uboot variant:
+
+bc. export DISK=fvp.img
+ ./model-scripts/run_model.sh output/fvp-android/uboot
+
+Example 3: Running an OpenEmbedded UEFI variant:
+
+bc. export DISK=lt-vexpress64-openembedded_minimal-armv8-gcc-4.9_20150620-722.img
+./model-scripts/run_model.sh output/fvp-oe/uefi
+
+h3(#prebuilt). 2.7 Using prebuilt binaries
+
+If you want to use prebuilt firmware and kernel binaries rather than download and build the software as described above, first, you should follow the instructions in "section 2.3":#down-bins and then download the prebuilt firmware images for the platform you wish to use.
+
+The pre-built ZIPs contain the files for each supported configuration. For Juno the contents should be copied to the
+root of the mounted drive as per the recovery image in section 2.5. For FVP the contents should be copied to your workspace output folder (which you will need to create if you have not run a build). For TC2, the files should be copied to the SOFTWARE folder of the mounted drive as per the vexpress-firmware image in section 2.7.
+
+Other variants are only available when built from source. The current prebuilt binaries are targeted at Mobile, Enterprise and developer segments.
+
+h4. Juno Prebuilt Binaries
+
+Prebuilt binaries are available by following the links in the table below. These binaries contain the Juno recovery images and so can be used to restore a broken system.
+
+| *Filename/Link* | *Variant* | *Kernel* | *Bootloader* |
+| "juno-lsk-android-uboot.zip":http://snapshots.linaro.org/member-builds/armlt-platforms-release/latest/juno-lsk-android-uboot.zip | Android | LSK | U-Boot |
+| "juno-latest-oe-uefi.zip":http://snapshots.linaro.org/member-builds/armlt-platforms-release/latest/juno-latest-oe-uefi.zip | OpenEmbedded | latest | UEFI |
+| "juno-latest-busybox-uboot.zip":http://snapshots.linaro.org/member-builds/armlt-platforms-release/latest/juno-latest-busybox-uboot.zip | BusyBox | latest | U-Boot |
+
+h4. FVP Prebuilt Binaries
+
+Prebuilt binaries are available by following the links in the table below.
+
+| *Filename/Link* | *Variant* | *Kernel* | *Bootloader* |
+| "fvp-lsk-android-uboot.zip":http://snapshots.linaro.org/member-builds/armlt-platforms-release/latest/fvp-lsk-android-uboot.zip | Android | LSK | U-Boot |
+| "fvp-latest-oe-uefi.zip":http://snapshots.linaro.org/member-builds/armlt-platforms-release/latest/fvp-latest-oe-uefi.zip | OpenEmbedded | latest | UEFI |
+| "fvp-latest-busybox-uboot.zip":http://snapshots.linaro.org/member-builds/armlt-platforms-release/latest/fvp-latest-busybox-uboot.zip | BusyBox | latest | U-Boot |
+
+h4. TC2 Prebuilt Binaries
+
+Prebuilt binaries are available by following the links in the table below.
+
+| *Filename/Link* | *Variant* | *Kernel* | *Bootloader* |
+| "tc2-lsk-android-uefi.zip":http://snapshots.linaro.org/member-builds/armlt-platforms-release/latest/tc2-lsk-android-uefi.zip | Android | LSK | U-Boot |
+| "tc2-latest-oe-uefi.zip":http://snapshots.linaro.org/member-builds/armlt-platforms-release/latest/tc2-latest-oe-uefi.zip | OpenEmbedded | latest | UEFI |
+| "tc2-latest-busybox-uefi.zip":http://snapshots.linaro.org/member-builds/armlt-platforms-release/latest/tc2-latest-busybox-uefi.zip | BusyBox | latest | U-Boot |
+
+
+h3(#clean). 2.8 Cleaning the build
+
+To clean the build artifacts, from the top level workspace folder:
+
+bc. ./build-scripts/build-all.sh ${PLATFORM}-${TYPE} clean