cd linaro-edk2git clone git://git.linaro.org/uefi/linaro-edk2.gitBooting UEFI for our 64 bit models/platforms has become more complex due to upstream changes.You can build UEFI as per usual, however, before you can boot the .fd file, you will have to wrap it into a Firmware Image Package (aka FIP).
You will not be able to mix "old " and "new" versions of UEFI and TF.--------------------------------------------------------------------------------
- Get the UEFI build tools
--------------------------------------------------------------------------------
git clone git.linaro.org/arm/uefi/uefi-tools.gitPATH=$PATH:`pwd`/uefi-toolsYou can also download a pre-built binary from a release or snapshot build place such as:--------------------------------------------------------------------------------
http://releases.linaro.org/14.04/components/kernel/uefi-linaro
http://snapshots.linaro.org/components/kernel/linaro-edk2/latest
http://snapshots.linaro.org/components/kernel/linaro-edk2-release-prep/latest
http://snapshots.linaro.org/components/kernel/fvp-pre-boot/latest
- Build UEFI for the FVP models
--------------------------------------------------------------------------------
uefi-build fvp_minimalThis will give you a .fd file, such as:
./Build/ArmVExpress-FVP-AArch64/RELEASE_GCC48/FV/FVP_AARCH64_EFI.fdYou will then need to point the "BL33" environment variable to this file, eg:export BL33=`pwd`/Build/ArmVExpress-FVP-AArch64/RELEASE_GCC48/FV/FVP_AARCH64_EFI.fd
--------------------------------------------------------------------------------
- Build the Trusted Firmware for FVP models
--------------------------------------------------------------------------------
git clone git://git.linaro.org/arm/arm-trusted-firmware.git
CROSS_COMPILE=aarch64-linux-gnu- make PLAT=fvp all fipYou will then have two important files:
./build/fvp/release/bl1.bin
./build/fvp/release/fip.bin
--------------------------------------------------------------------------------
- Boot the model
--------------------------------------------------------------------------------
Pass the bl1.bin and fip.bin files as parameters to the model. Eg, this is how I booted my model:
/linaro/fastmodels/FVP_Base_AEMv8A-AEMv8A/models/Linux64_GCC-4.1/FVP_Base_AEMv8A-AEMv8A -C pctl.startup=0.0.0.0 -C bp.secure_memory=0 -C cluster0.NUM_CORES=1 -C cluster1.NUM_CORES=1 -C cache_state_modelled=0 -C bp.pl011_uart0.untimed_fifos=1 -C bp.secureflashloader.fname=./build/fvp/release/bl1.bin -C bp.flashloader0.fname=./build/fvp/release/fip.bin -C bp.virtioblockdevice.image_path=/linaro/releases/oe/14.04/fastmodel/sd.img -C bp.hostbridge.interfaceName=ARMryan -C bp.smsc_91c111.enabled=true -C bp.smsc_91c111.mac_address=00:02:f7:ef:67:e6
Of course, your installation path to the models and the location of your disk image will vary.Hope this all helps,
Regards,
Ryan.
_______________________________________________
Linaro-uefi mailing list
Linaro-uefi@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-uefi