Changes from v2:
* Added patch for platforms.config to change default TOS_BIN setting * Added patch to remove copy of TOS_BIN to UEFI dir
--- Changes from v1:
* Added commit message to patches * Moved 2nd patch from platforms.config to edk2-platforms.config * Added 3rd patch to allow use of UART5 in OP-TEE for hikey960
--- v1 cover letter: Previously, we were using a 'headless' version of optee_os binary for hikey and hikey960. With BL32_EXTRA1 and BL32_EXTRA2, we now enable optee_os header parsing to allow dynamic runtime support of either a 64- or 32-bit optee_os build, and also the pager feature.
Victor Chong (5): platforms.config: hikey: Change default TOS_BIN opteed-build.sh: Remove copy of images to UEFI dir atf, opteed: Support BL32_EXTRA1 and BL32_EXTRA2 edk2-platforms.config: hikey*: Set TOS_BIN_EXTRA{1,2} edk2-platforms.config: hikey960: Add UART5 option
atf-build.sh | 14 ++++++++++++-- edk2-platforms.config | 12 ++++++++++-- opteed-build.sh | 6 ++---- platforms.config | 10 ++++++---- 4 files changed, 30 insertions(+), 12 deletions(-)
-- 2.16.2
Now that most, if not all, Linaro builds have reverted to using upstream ATF instead of one of the 96boards's forks, change the default TOS_BIN value to match.
Signed-off-by: Victor Chong victor.chong@linaro.org --- platforms.config | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/platforms.config b/platforms.config index 8d8c224..3d501cf 100644 --- a/platforms.config +++ b/platforms.config @@ -196,9 +196,11 @@ PACKAGES_PATH=OpenPlatformPkg/Platforms/AMD/Styx/Binary UEFI_BIN=STYX_ROM.fd UEFI_IMAGE_DIR=Cello
-# NOTE: If using upstream ATF, i.e. -# https://github.com/ARM-software/arm-trusted-firmware -# please set TOS_BIN=tee-pager.bin +# NOTE: If using 96board's forks of ATF, i.e. +# https://github.com/96boards-hikey/arm-trusted-firmware +# or +# https://github.com/96boards/arm-trusted-firmware +# please set TOS_BIN=tee.bin [hikey] LONGNAME=CircuitCo HiKey DSC=OpenPlatformPkg/Platforms/Hisilicon/HiKey/HiKey.dsc @@ -207,7 +209,7 @@ UEFI_BIN=BL33_AP_UEFI.fd UEFI_IMAGE_DIR=HiKey BUILD_ATF=yes ATF_SPD=opteed -TOS_BIN=tee.bin +TOS_BIN=tee-pager.bin TOS_PLATFORM_FLAVOR=hikey BUILD_TOS=yes SCP_BIN=OpenPlatformPkg/Platforms/Hisilicon/HiKey/Binary/mcuimage.bin
The copy was originally mirrored after atf-build.sh but in restrospect TOS_BIN doesn't really have to be copied since it's already embedded in fip.bin and not directly required for programming the platform.
Signed-off-by: Victor Chong victor.chong@linaro.org --- opteed-build.sh | 4 ---- 1 file changed, 4 deletions(-)
diff --git a/opteed-build.sh b/opteed-build.sh index 4de48d3..be16913 100755 --- a/opteed-build.sh +++ b/opteed-build.sh @@ -103,10 +103,6 @@ function build_platform # Copy resulting images to UEFI image dir # TOS_BIN="`$TOOLS_DIR/parse-platforms.py $PLATFORM_CONFIG -p $1 get -o tos_bin`" - if [ $VERBOSE -eq 1 ]; then - echo "Copying '$TOS_BIN' to '$EDK2_DIR/Build/$PLATFORM_IMAGE_DIR/$BUILD_PROFILE/FV/'" - fi - cp -a out/arm-plat-"$TOS_PLATFORM"/core/"$TOS_BIN" "$EDK2_DIR/Build/$PLATFORM_IMAGE_DIR/$BUILD_PROFILE/FV/" else return 1 fi
Previously, we were using a 'headless' version of optee_os binary for hikey and hikey960. With BL32_EXTRA1 and BL32_EXTRA2, we now enable optee_os header parsing to allow dynamic runtime support of either a 64- or 32-bit optee_os builds, and also the pager feature.
Signed-off-by: Victor Chong victor.chong@linaro.org --- atf-build.sh | 14 ++++++++++++-- opteed-build.sh | 2 ++ 2 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/atf-build.sh b/atf-build.sh index 5e03569..fb80ad0 100755 --- a/atf-build.sh +++ b/atf-build.sh @@ -67,7 +67,7 @@ function build_platform echo "PLATFORM_BUILDFLAGS=$PLATFORM_BUILDFLAGS" fi
- unset BL30 BL31 BL32 BL33 + unset BL30 BL31 BL32 BL32_EXTRA1 BL32_EXTRA2 BL33 BL30="`$TOOLS_DIR/parse-platforms.py $PLATFORM_CONFIG -p $1 get -o scp_bin`" if [ $ATF_BUILDVER -gt 1 ]; then unset SCP_BL2 @@ -100,9 +100,17 @@ function build_platform SPD="`$TOOLS_DIR/parse-platforms.py $PLATFORM_CONFIG -p $1 get -o atf_spd`"
TOS_BIN="`$TOOLS_DIR/parse-platforms.py $PLATFORM_CONFIG -p $1 get -o tos_bin`" + TOS_BIN_EXTRA1="`$TOOLS_DIR/parse-platforms.py $PLATFORM_CONFIG -p $1 get -o tos_bin_extra1`" + TOS_BIN_EXTRA2="`$TOOLS_DIR/parse-platforms.py $PLATFORM_CONFIG -p $1 get -o tos_bin_extra2`" if [ X"$TOS_BIN" != X"" ]; then BL32=$WORKSPACE/Build/$PLATFORM_IMAGE_DIR/$BUILD_PROFILE/FV/$TOS_BIN fi + if [ X"$TOS_BIN_EXTRA1" != X"" ]; then + BL32_EXTRA1=$WORKSPACE/Build/$PLATFORM_IMAGE_DIR/$BUILD_PROFILE/FV/$TOS_BIN_EXTRA1 + fi + if [ X"$TOS_BIN_EXTRA2" != X"" ]; then + BL32_EXTRA2=$WORKSPACE/Build/$PLATFORM_IMAGE_DIR/$BUILD_PROFILE/FV/$TOS_BIN_EXTRA2 + fi
if [ X"$SPD" != X"" ] && [ X"$BL32" != X"" ]; then # @@ -149,7 +157,7 @@ function build_platform ;; esac
- export BL30 BL31 BL32 BL33 + export BL30 BL31 BL32 BL32_EXTRA1 BL32_EXTRA2 BL33
echo "BL30=$BL30" if [ $ATF_BUILDVER -gt 1 ] && [ X"$BL30" != X"" ]; then @@ -158,6 +166,8 @@ function build_platform fi echo "BL31=$BL31" echo "BL32=$BL32" + echo "BL32_EXTRA1=$BL32_EXTRA1" + echo "BL32_EXTRA2=$BL32_EXTRA2" echo "BL33=$BL33" echo "$SPD_OPTION" echo "BUILD_TYPE=$BUILD_TYPE" diff --git a/opteed-build.sh b/opteed-build.sh index be16913..40fb844 100755 --- a/opteed-build.sh +++ b/opteed-build.sh @@ -103,6 +103,8 @@ function build_platform # Copy resulting images to UEFI image dir # TOS_BIN="`$TOOLS_DIR/parse-platforms.py $PLATFORM_CONFIG -p $1 get -o tos_bin`" + TOS_BIN_EXTRA1="`$TOOLS_DIR/parse-platforms.py $PLATFORM_CONFIG -p $1 get -o tos_bin_extra1`" + TOS_BIN_EXTRA2="`$TOOLS_DIR/parse-platforms.py $PLATFORM_CONFIG -p $1 get -o tos_bin_extra2`" else return 1 fi
Previously, we were using a 'headless' version of optee_os binary for hikey and hikey960. With BL32_EXTRA1 and BL32_EXTRA2, we now enable optee_os header parsing to allow dynamic runtime support of either a 64- or 32-bit optee_os builds, and also the pager feature.
Signed-off-by: Victor Chong victor.chong@linaro.org --- edk2-platforms.config | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/edk2-platforms.config b/edk2-platforms.config index 15c68c8..8d63ed1 100644 --- a/edk2-platforms.config +++ b/edk2-platforms.config @@ -39,6 +39,8 @@ # different from UEFI platform name. # - SCP_BIN SCP image to pass to ARM Trusted Firmware. # - TOS_BIN Trusted OS image to pass to ARM Trusted Firmware. +# - TOS_BIN_EXTRA1 First extra Trusted OS image +# - TOS_BIN_EXTRA2 Second extra Trusted OS image # The path is relative to # $EDK2_DIR/Build/$PLATFORM_IMAGE_DIR/$BUILD_PROFILE/FV/. # To actually build the Trusted OS, you must also set @@ -111,7 +113,9 @@ UEFI_BIN=BL33_AP_UEFI.fd UEFI_IMAGE_DIR=HiKey SCP_BIN=Platform/Hisilicon/HiKey/mcuimage.bin ATF_SPD=opteed -TOS_BIN=tee-pager.bin +TOS_BIN=tee-header_v2.bin +TOS_BIN_EXTRA1=tee-pager_v2.bin +TOS_BIN_EXTRA2=tee-pageable_v2.bin TOS_PLATFORM_FLAVOR=hikey BUILD_TOS=yes # Uncomment this to use UART0 as the EDK2 console @@ -129,7 +133,9 @@ UEFI_BIN=BL33_AP_UEFI.fd UEFI_IMAGE_DIR=HiKey960 BUILD_ATF=yes ATF_SPD=opteed -TOS_BIN=tee-pager.bin +TOS_BIN=tee-header_v2.bin +TOS_BIN_EXTRA1=tee-pager_v2.bin +TOS_BIN_EXTRA2=tee-pageable_v2.bin TOS_PLATFORM=hikey TOS_PLATFORM_FLAVOR=hikey960 BUILD_TOS=yes
Add comment to allow use of UART5 in OP-TEE
Signed-off-by: Victor Chong victor.chong@linaro.org --- edk2-platforms.config | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/edk2-platforms.config b/edk2-platforms.config index 8d63ed1..f4578e8 100644 --- a/edk2-platforms.config +++ b/edk2-platforms.config @@ -142,6 +142,8 @@ BUILD_TOS=yes SCP_BIN=Platform/Hisilicon/HiKey960/lpm3.img # Uncomment this to use UART5 as the EDK2 console for v1 hardware #BUILDFLAGS=-DSERIAL_BASE=0xFDF05000 +# Uncomment this to use UART5 as the OP-TEE Trusted OS console +#TOS_BUILDFLAGS=CFG_CONSOLE_UART=5
[d02] LONGNAME=Hisilicon D02
Hi Haojian,
Please ack v3.
Thanks!
On Mon, Mar 19, 2018 at 2:42 PM, Victor Chong victor.chong@linaro.org wrote:
Changes from v2:
- Added patch for platforms.config to change default TOS_BIN setting
- Added patch to remove copy of TOS_BIN to UEFI dir
Changes from v1:
- Added commit message to patches
- Moved 2nd patch from platforms.config to edk2-platforms.config
- Added 3rd patch to allow use of UART5 in OP-TEE for hikey960
v1 cover letter: Previously, we were using a 'headless' version of optee_os binary for hikey and hikey960. With BL32_EXTRA1 and BL32_EXTRA2, we now enable optee_os header parsing to allow dynamic runtime support of either a 64- or 32-bit optee_os build, and also the pager feature.
Victor Chong (5): platforms.config: hikey: Change default TOS_BIN opteed-build.sh: Remove copy of images to UEFI dir atf, opteed: Support BL32_EXTRA1 and BL32_EXTRA2 edk2-platforms.config: hikey*: Set TOS_BIN_EXTRA{1,2} edk2-platforms.config: hikey960: Add UART5 option
atf-build.sh | 14 ++++++++++++-- edk2-platforms.config | 12 ++++++++++-- opteed-build.sh | 6 ++---- platforms.config | 10 ++++++---- 4 files changed, 30 insertions(+), 12 deletions(-)
-- 2.16.2
Reviewed-by: Fathi Boudra fathi.boudra@linaro.org
On 19 March 2018 at 08:45, Victor Chong victor.chong@linaro.org wrote:
Hi Haojian,
Please ack v3.
Thanks!
On Mon, Mar 19, 2018 at 2:42 PM, Victor Chong victor.chong@linaro.org wrote:
Changes from v2:
- Added patch for platforms.config to change default TOS_BIN setting
- Added patch to remove copy of TOS_BIN to UEFI dir
Changes from v1:
- Added commit message to patches
- Moved 2nd patch from platforms.config to edk2-platforms.config
- Added 3rd patch to allow use of UART5 in OP-TEE for hikey960
v1 cover letter: Previously, we were using a 'headless' version of optee_os binary for hikey and hikey960. With BL32_EXTRA1 and BL32_EXTRA2, we now enable optee_os header parsing to allow dynamic runtime support of either a 64- or 32-bit optee_os build, and also the pager feature.
Victor Chong (5): platforms.config: hikey: Change default TOS_BIN opteed-build.sh: Remove copy of images to UEFI dir atf, opteed: Support BL32_EXTRA1 and BL32_EXTRA2 edk2-platforms.config: hikey*: Set TOS_BIN_EXTRA{1,2} edk2-platforms.config: hikey960: Add UART5 option
atf-build.sh | 14 ++++++++++++-- edk2-platforms.config | 12 ++++++++++-- opteed-build.sh | 6 ++---- platforms.config | 10 ++++++---- 4 files changed, 30 insertions(+), 12 deletions(-)
-- 2.16.2
Linaro-uefi mailing list Linaro-uefi@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-uefi
On 19 March 2018 at 14:42, Victor Chong victor.chong@linaro.org wrote:
Changes from v2:
- Added patch for platforms.config to change default TOS_BIN setting
- Added patch to remove copy of TOS_BIN to UEFI dir
Changes from v1:
- Added commit message to patches
- Moved 2nd patch from platforms.config to edk2-platforms.config
- Added 3rd patch to allow use of UART5 in OP-TEE for hikey960
v1 cover letter: Previously, we were using a 'headless' version of optee_os binary for hikey and hikey960. With BL32_EXTRA1 and BL32_EXTRA2, we now enable optee_os header parsing to allow dynamic runtime support of either a 64- or 32-bit optee_os build, and also the pager feature.
Victor Chong (5): platforms.config: hikey: Change default TOS_BIN opteed-build.sh: Remove copy of images to UEFI dir atf, opteed: Support BL32_EXTRA1 and BL32_EXTRA2 edk2-platforms.config: hikey*: Set TOS_BIN_EXTRA{1,2} edk2-platforms.config: hikey960: Add UART5 option
atf-build.sh | 14 ++++++++++++-- edk2-platforms.config | 12 ++++++++++-- opteed-build.sh | 6 ++---- platforms.config | 10 ++++++---- 4 files changed, 30 insertions(+), 12 deletions(-)
-- 2.16.2
Acked on the patch set
Best Regards Haojian
Thanks all.
For the series: Reviewed-by: Leif Lindholm leif.lindholm@linaro.org
Pushed as 7e9ec1e..632d0c3.
On Mon, Mar 19, 2018 at 06:42:39AM +0000, Victor Chong wrote:
Changes from v2:
- Added patch for platforms.config to change default TOS_BIN setting
- Added patch to remove copy of TOS_BIN to UEFI dir
Changes from v1:
- Added commit message to patches
- Moved 2nd patch from platforms.config to edk2-platforms.config
- Added 3rd patch to allow use of UART5 in OP-TEE for hikey960
v1 cover letter: Previously, we were using a 'headless' version of optee_os binary for hikey and hikey960. With BL32_EXTRA1 and BL32_EXTRA2, we now enable optee_os header parsing to allow dynamic runtime support of either a 64- or 32-bit optee_os build, and also the pager feature.
Victor Chong (5): platforms.config: hikey: Change default TOS_BIN opteed-build.sh: Remove copy of images to UEFI dir atf, opteed: Support BL32_EXTRA1 and BL32_EXTRA2 edk2-platforms.config: hikey*: Set TOS_BIN_EXTRA{1,2} edk2-platforms.config: hikey960: Add UART5 option
atf-build.sh | 14 ++++++++++++-- edk2-platforms.config | 12 ++++++++++-- opteed-build.sh | 6 ++---- platforms.config | 10 ++++++---- 4 files changed, 30 insertions(+), 12 deletions(-)
-- 2.16.2