From 0cabb612f5e2d5f321048320981b6d0ba1f8b08c Mon Sep 17 00:00:00 2001 From: Pascal Brand Date: Tue, 12 Jan 2016 14:56:14 +0100 Subject: [PATCH] README: update toolchain versions As suggested by https://github.com/oliviermartin in #597, toolchain versions to be used are updated. Reviewed-by: Joakim Bech Reviewed-by: Jens Wiklander Signed-off-by: Pascal Brand --- README.md | 15 +++- documentation/arm_trusted_firmware.md | 104 -------------------------- 2 files changed, 14 insertions(+), 105 deletions(-) delete mode 100644 documentation/arm_trusted_firmware.md diff --git a/README.md b/README.md index 01f0a67d759..340e7001227 100644 --- a/README.md +++ b/README.md @@ -116,8 +116,21 @@ $ sudo apt-get install android-tools-fastboot autoconf bison cscope curl \ #### 4.2.1 Get the compiler We strive to use the latest available compiler from Linaro. Start by downloading and unpacking the compiler. Then export the `PATH` to the compilers `bin` -folder. +folder. Beware that we are using a couple of different toolchains depending on +the target device. This includes both 64- and 32-bit toolchains. For the exact +toolchain in use, please have a look at [toolchain.mk](https://github.com/OP-TEE/build/blob/master/toolchain.mk) +and then look at the targets makefile (see [build.git](https://github.com/OP-TEE/build)) +to find out where the respective toolchain will be used. For example in the +[QEMU makefile](https://github.com/OP-TEE/build/blob/master/qemu.mk#L12-L15) you +will see: +``` +CROSS_COMPILE_NS_USER ?= "$(CCACHE)$(AARCH32_CROSS_COMPILE)" +CROSS_COMPILE_NS_KERNEL ?= "$(CCACHE)$(AARCH32_CROSS_COMPILE)" +CROSS_COMPILE_S_USER ?= "$(CCACHE)$(AARCH32_CROSS_COMPILE)" +CROSS_COMPILE_S_KERNEL ?= "$(CCACHE)$(AARCH32_CROSS_COMPILE)" +``` +However, if you only want to compile optee_os, then you can do like this: ``` $ cd $HOME $ mkdir toolchains diff --git a/documentation/arm_trusted_firmware.md b/documentation/arm_trusted_firmware.md deleted file mode 100644 index 11582f3544c..00000000000 --- a/documentation/arm_trusted_firmware.md +++ /dev/null @@ -1,104 +0,0 @@ -ARM Trusted Firmware with OP-TEE -================================ - -Contents : - -1. Introduction -2. Host machine requirements -3. Tools -4. Building OP-TEE -5. Building the Trusted Firmware -6. Obtaining the normal world software -7. Running the software - -1. Introduction ----------------- -This document describes how to build [OP-TEE OS] and run it together with -ARM Trusted Firmware ([ARM-TF]). - -The bridge between normal world and [OP-TEE OS] resides in [ARM-TF] and is a -[secure monitor] referred to as the OP-TEE Dispatcher. - -This document is limited to only describe how to boot ARM-TF together with -OP-TEE. It does not cover how to enable normal world TEE Client API to -comunicate with OP-TEE. - -2. Host machine requirements ------------------------------ -See "Host machine requirements" in [ARM-TF User Guide]. - -3. Tools ---------- -See "Tools" in [ARM-TF User Guide]. - -In addition to that is gcc-linaro-arm-linux-gnueabihf-4.8-2013.12_linux.tar.bz2 -used as to compile OP-TEE. - - wget http://releases.linaro.org/13.12/components/toolchain/binaries/gcc-linaro-arm-linux-gnueabihf-4.8-2013.12_linux.tar.bz2 - tar -xf gcc-linaro-arm-linux-gnueabihf-4.8-2013.12_linux.tar.bz2 - - -4. Building OP-TEE -------------------- - -To build OP-TEE for FVP, follow these steps: - -1. Clone OP-TEE OS from the repository on GitHub: - - git clone https://github.com/OP-TEE/optee_os.git - -2. Change to OP-TEE OS directory: - - cd optee_os - -3. Set compiler path and build: - - export PATH="/bin:${PATH}" \ - export PLATFORM=vexpress \ - export PLATFORM_FLAVOR=fvp \ - export O=out \ - make all - -To get debug prints from OP-TEE OS add for instance: - - export CFG_TEE_CORE_LOG_LEVEL=4 - -5. Building the Trusted Firmware ---------------------------------- -See "Building the Trusted Firmware" in [ARM-TF User Guide]. - -Before the OP-TEE Dispatcher is integrated in [ARM-TF] it may be -nececcary to clone [ARM-TF] from an inofficial repository. - -Build ARM Trusted Firmware with OP-TEE Dispatcher: - - export CROSS_COMPILE=/bin/aarch64-none-elf- \ - export BL33=/ \ - export BL32=/tee.bin \ - make FVP_TSP_RAM_LOCATION=tdram FVP_SHARED_DATA_LOCATION=tdram \ - SPD=opteed PLAT=fvp all fip - - -6. Obtaining the normal world software ---------------------------------------- -See "Obtaining the normal world software" in [ARM-TF User Guide] - -7. Running the software ------------------------- -See "Running the software" in [ARM-TF User Guide] - -To do anything more than watching the psci hooks getting called in [OP-TEE OS] -there's some additional software required, -[OP-TEE Client](https://github.com/OP-TEE/optee_client.git) and -[OP-TEE Linux driver](https://github.com/OP-TEE/optee_linuxdriver.git). -It's outside then scope of this document to guide how to use that software. - -- - - - - - - - - - - - - - - - - - - - - - - - - - - -_Copyright (c) 2014, Linaro Limited. All rights reserved._ -[OP-TEE]: http://github.com/OP-TEE -[OP-TEE OS]: http://github.com/OP-TEE/optee_os.git -[ARM-TF]: http://github.com/ARM-software/arm-trusted-firmware -[ARM-TF User Guide]: http://github.com/ARM-software/arm-trusted-firmware/tree/master/docs/user-guide.md -[secure monitor]: http://www.arm.com/products/processors/technologies/trustzone/tee-smc.php -