Last active
December 29, 2017 16:01
-
-
Save tnishinaga/5d73bf666e7c657a2abaec69eef94398 to your computer and use it in GitHub Desktop.
hikey uefi build script(https://github.com/ARM-software/arm-trusted-firmware/blob/master/docs/plat/hikey.rst)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh -x | |
# setup cross toolchain | |
wget http://releases.linaro.org/archive/15.02/components/toolchain/binaries/aarch64-linux-gnu/gcc-linaro-4.9-2015.02-3-x86_64_aarch64-linux-gnu.tar.xz | |
wget http://releases.linaro.org/archive/15.02/components/toolchain/binaries/arm-linux-gnueabihf/gcc-linaro-4.9-2015.02-3-x86_64_arm-linux-gnueabihf.tar.xz | |
mkdir arm-tc arm64-tc | |
tar --strip-components=1 -C ${PWD}/arm-tc -xf gcc-linaro-4.9-*-x86_64_aarch64-linux-gnu.tar.xz | |
tar --strip-components=1 -C ${PWD}/arm64-tc -xf gcc-linaro-4.9-*-x86_64_arm-linux-gnueabihf.tar.xz | |
export PATH="${PWD}/arm-tc/bin:${PWD}/arm64-tc/bin:$PATH" | |
git clone https://github.com/ARM-software/arm-trusted-firmware -b integration | |
git clone https://github.com/OP-TEE/optee_os | |
git clone https://github.com/96boards-hikey/edk2 -b testing/hikey960_v2.5 | |
git clone https://github.com/96boards-hikey/OpenPlatformPkg -b testing/hikey960_v1.3.4 | |
git clone https://github.com/96boards-hikey/l-loader -b testing/hikey960_v1.2 | |
git clone https://git.linaro.org/uefi/uefi-tools | |
git clone https://github.com/96boards-hikey/atf-fastboot | |
BUILD_PATH=$PWD | |
cd ${BUILD_PATH}/edk2 | |
ln -sf ../OpenPlatformPkg | |
BUILD_OPTION=RELEASE | |
export AARCH64_TOOLCHAIN=GCC49 | |
export UEFI_TOOLS_DIR=${BUILD_PATH}/uefi-tools | |
export EDK2_DIR=${BUILD_PATH}/edk2 | |
export EDK2_OUTPUT_DIR=${EDK2_DIR}/Build/HiKey/${BUILD_OPTION}_${AARCH64_TOOLCHAIN} | |
# Build fastboot for ARM Trust Firmware. It's used for recovery mode. | |
cd ${BUILD_PATH}/atf-fastboot | |
CROSS_COMPILE=aarch64-linux-gnu- make PLAT=hikey DEBUG=0 | |
# Convert DEBUG/RELEASE to debug/release | |
FASTBOOT_BUILD_OPTION=$(echo ${BUILD_OPTION} | tr '[A-Z]' '[a-z]') | |
cd ${EDK2_DIR} | |
# Build UEFI & ARM Trust Firmware | |
${UEFI_TOOLS_DIR}/uefi-build.sh -b ${BUILD_OPTION} -a ../arm-trusted-firmware -s ../optee_os hikey | |
cd ${BUILD_PATH}/l-loader | |
ln -sf ${EDK2_OUTPUT_DIR}/FV/bl1.bin | |
ln -sf ${EDK2_OUTPUT_DIR}/FV/fip.bin | |
ln -sf ${BUILD_PATH}/atf-fastboot/build/hikey/${FASTBOOT_BUILD_OPTION}/bl1.bin fastboot.bin | |
make hikey PTABLE_LST=linux-4g | |
mkdir ~/hikey_uefi_files | |
cp fip.bin ptable-* l-loader.bin ~/hikey_uefi_files | |
cd | |
tar Jcvf hikey_uefi_files.tar.xz hikey_uefi_files/ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment