summaryrefslogtreecommitdiff
path: root/members/arm/openembedded/juno-lsk/HACKING.textile
diff options
context:
space:
mode:
authorAndy Pickard <andrew.pickard@arm.com>2014-10-29 21:13:05 +0000
committerAndy Pickard <andrew.pickard@arm.com>2014-10-29 21:13:05 +0000
commit942aebe0fff7b01aaa4348cf0b9e3000b550f1ef (patch)
tree93d7584aebaa81e349b310b5faf334aa42a1d26f /members/arm/openembedded/juno-lsk/HACKING.textile
parentec279e512a16ce650a672a3dd0ac706a41ff66e4 (diff)
Updated release notes for the 14.10 release
Signed-off-by: unknown <apickard@E105643.Emea.Arm.com>
Diffstat (limited to 'members/arm/openembedded/juno-lsk/HACKING.textile')
-rw-r--r--members/arm/openembedded/juno-lsk/HACKING.textile36
1 files changed, 20 insertions, 16 deletions
diff --git a/members/arm/openembedded/juno-lsk/HACKING.textile b/members/arm/openembedded/juno-lsk/HACKING.textile
index fc551ac..0f91d5d 100644
--- a/members/arm/openembedded/juno-lsk/HACKING.textile
+++ b/members/arm/openembedded/juno-lsk/HACKING.textile
@@ -61,9 +61,10 @@ The following tools and environment are required:
** `git` package to obtain source code
** `ia32-libs` package
** `build-essential` and `uuid-dev` packages for building the UEFI and Firmware Image Package (FIP) tool
+** bison and flex packages are required for building the IASL compiler which is used in the UEFI build process.
-* Baremetal GNU GCC tools. Can be downloaded from Linaro
-** "http://releases.linaro.org/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz":http://releases.linaro.org/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
+* Baremetal GNU GCC tools. Can be downloaded from Linaro
+** "http://releases.linaro.org/14.07/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.9-2014.07_linux.tar.xz":http://releases.linaro.org/14.07/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.9-2014.07_linux.tar.xz
* The instructions on this page below assume that the environment variable $JUNO_ROOT_DIR has been initialised to a working directory.
@@ -74,8 +75,6 @@ h2. SCP Firmware
The SCP Firmware is only available as a pre-built binary.
-
h2. ARM Trusted Firmware
The ARM trusted firmware consists of the following images:
@@ -95,7 +94,7 @@ Clone the ARM Trusted Firmware repository from GitHub:
bc. $ cd $JUNO_ROOT_DIR
$ git clone https://github.com/ARM-software/arm-trusted-firmware.git
$ cd arm-trusted-firmware
-$ git checkout v0.4-Juno-0.5
+$ git checkout v1.0
h3. Configuration
@@ -135,8 +134,6 @@ To clean the ARM Trusted Firmware source tree (warning, this will remove the bin
bc. $ make realclean
-
h2. UEFI
UEFI is a single bl33.bin image that is an input to the process of creating a Firmware Image Package.
@@ -148,17 +145,26 @@ Clone the Juno UEFI Github repository:
bc. $ cd $JUNO_ROOT_DIR
$ git clone https://github.com/ARM-software/edk2.git -b juno
$ cd edk2
-$ git checkout v1.0-rc0
-
+$ git checkout v2.0-rc1
h3. Configuration
1. Define the AArch64 GCC toolchain:
-bc. $ export GCC48_AARCH64_PREFIX=<path-to-aarch64-gcc>/bin/aarch64-none-elf-
+bc. $ export EDK2_TOOLCHAIN=GCC49
+$ export GCC49_AARCH64_PREFIX=<path-to-aarch64-gcc>/bin/aarch64-none-elf-
+
+2. Clone and Build IASL compiler
-2. Configure Tianocore environment:
+Note that this step requires the bison and flex packages to be present on the host build machine.
+
+bc. $ git clone https://github.com/acpica/acpica.git
+$ cd acpica
+$ git checkout R07_24_14
+$ make
+$ export IASL_PREFIX=<path-to-acpica>/generate/unix/bin/
+
+3. Configure Tianocore environment:
bc. $ cd $JUNO_ROOT_DIR/edk2
$ . edksetup.sh
@@ -174,20 +180,18 @@ bc. $ cd $JUNO_ROOT_DIR/edk2
bc. $ make -f ArmPlatformPkg/ArmJunoPkg/Makefile
-The build produces the binary $JUNO_ROOT_DIR/edk2/Build/ArmJuno/DEBUG_GCC48/FV/BL33_AP_UEFI.fd that should be used as 'bl33.bin' when generating the Firmware Image Package binary.
+The build produces the binary $JUNO_ROOT_DIR/edk2/Build/ArmJuno/DEBUG_GCC49/FV/BL33_AP_UEFI.fd that should be used as 'bl33.bin' when generating the Firmware Image Package binary.
To build RELEASE version of UEFI firmware:
bc. $ make -f ArmPlatformPkg/ArmJunoPkg/Makefile EDK2_BUILD=RELEASE
-Use the release binary $JUNO_ROOT_DIR/edk2/Build/ArmJuno/RELEASE_GCC48/FV/BL33_AP_UEFI.fd as bl33.bin when generating the Firmware Image Package binary.
+Use the release binary $JUNO_ROOT_DIR/edk2/Build/ArmJuno/RELEASE_GCC49/FV/BL33_AP_UEFI.fd as bl33.bin when generating the Firmware Image Package binary.
To clean EDK2 source tree:
bc. $ make -f ArmPlatformPkg/ArmJunoPkg/Makefile clean
-
h2. Packaging the binaries
ARM Trusted Firmware uses the Firmware Image Package (FIP) binary blob to load images into the system, so that the firmware can avoid managing lots of smaller images. The FIP will contain: