Skip to content

Commit 6137a68

Browse files
committed
fix(build): AM62LX OP-TEE and U-Boot build steps
Building U-Boot with current SDK documentation steps results in missing tee-os blob errors on AM62LX. Include OP-TEE support in U-Boot build steps to resolve this. AM62LX SDK does not include 32-bit ARM toolchain (k3r5-devkit), unlike other K3 platforms. Remove CROSS_COMPILE_32 requirement from OP-TEE build commands and add CFG_USER_TA_TARGETS=ta_arm64 to restrict OP-TEE to build only 64-bit TAs. This resolves "cannot find libgcc.a" errors during OP-TEE build and "missing external blobs" errors during U-Boot build. Signed-off-by: Shiva Tripathi <[email protected]>
1 parent d8d545d commit 6137a68

File tree

2 files changed

+29
-3
lines changed

2 files changed

+29
-3
lines changed

source/linux/Foundational_Components/U-Boot/BG-Build-K3.rst

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -447,6 +447,7 @@ Go :ref:`here <download-and-install-sdk>` to download and install the SDK.
447447
$ export UBOOT_DIR=<path-to-ti-u-boot>
448448
$ export TI_LINUX_FW_DIR=<path-to-ti-linux-firmware>
449449
$ export TFA_DIR=<path-to-arm-trusted-firmware>
450+
$ export OPTEE_DIR=<path-to-ti-optee-os>
450451
451452
.. note::
452453

@@ -465,7 +466,8 @@ Go :ref:`here <download-and-install-sdk>` to download and install the SDK.
465466
$ make CROSS_COMPILE="$CROSS_COMPILE_64" \
466467
BL1=$TFA_DIR/build/k3/am62l/release/bl1.bin \
467468
BL31=$TFA_DIR/build/k3/am62l/release/bl31.bin \
468-
BINMAN_INDIRS=$TI_LINUX_FW_DIR
469+
BINMAN_INDIRS=$TI_LINUX_FW_DIR \
470+
TEE=$OPTEE_DIR/out/arm-plat-k3/core/tee-pager_v2.bin
469471
470472
.. ifconfig:: CONFIG_part_variant not in ('AM64X', 'AM62X', 'AM62AX', 'AM62LX')
471473

source/linux/Foundational_Components_OPTEE.rst

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,17 +50,33 @@ Building OP-TEE OS
5050
Building the OP-TEE image
5151
*************************
5252

53+
.. ifconfig:: CONFIG_part_variant not in ('AM62LX')
54+
5355
.. parsed-literal::
5456
5557
$ make CROSS_COMPILE="$CROSS_COMPILE_32" CROSS_COMPILE64="$CROSS_COMPILE_64" PLATFORM=|__OPTEE_PLATFORM_FLAVOR__| CFG_ARM64_core=y
5658
59+
.. ifconfig:: CONFIG_part_variant in ('AM62LX')
60+
61+
.. parsed-literal::
62+
63+
$ make CROSS_COMPILE64="$CROSS_COMPILE_64" PLATFORM=|__OPTEE_PLATFORM_FLAVOR__| CFG_ARM64_core=y CFG_USER_TA_TARGETS=ta_arm64
64+
5765
Building the OP-TEE image with debug parameters
5866
***********************************************
5967

68+
.. ifconfig:: CONFIG_part_variant not in ('AM62LX')
69+
6070
.. parsed-literal::
6171
6272
$ make CROSS_COMPILE="$CROSS_COMPILE_32" CROSS_COMPILE64="$CROSS_COMPILE_64" PLATFORM=|__OPTEE_PLATFORM_FLAVOR__| CFG_ARM64_core=y CFG_TEE_CORE_LOG_LEVEL=2 CFG_TEE_CORE_DEBUG=y
6373
74+
.. ifconfig:: CONFIG_part_variant in ('AM62LX')
75+
76+
.. parsed-literal::
77+
78+
$ make CROSS_COMPILE64="$CROSS_COMPILE_64" PLATFORM=|__OPTEE_PLATFORM_FLAVOR__| CFG_ARM64_core=y CFG_TEE_CORE_LOG_LEVEL=2 CFG_TEE_CORE_DEBUG=y CFG_USER_TA_TARGETS=ta_arm64
79+
6480
.. _building-optee-with-prng:
6581

6682
Building OP-TEE with Pseudo RNG drivers
@@ -71,9 +87,17 @@ detrimental effect to the overall system latency. Using the
7187
``CFG_WITH_SOFTWARE_PRNG`` flag to use OP-TEE's Pseudo RNG drivers as a source
7288
of entropy can work around these issues.
7389

74-
.. parsed-literal::
90+
.. ifconfig:: CONFIG_part_variant not in ('AM62LX')
91+
92+
.. parsed-literal::
93+
94+
$ make CROSS_COMPILE="$CROSS_COMPILE_32" CROSS_COMPILE64="$CROSS_COMPILE_64" PLATFORM=k3-|__OPTEE_PLATFORM_FLAVOR__| CFG_ARM64_core=y CFG_WITH_SOFTWARE_PRNG=y
95+
96+
.. ifconfig:: CONFIG_part_variant in ('AM62LX')
97+
98+
.. parsed-literal::
7599
76-
$ make CROSS_COMPILE="$CROSS_COMPILE_32" CROSS_COMPILE64="$CROSS_COMPILE_64" PLATFORM=k3-|__OPTEE_PLATFORM_FLAVOR__| CFG_ARM64_core=y CFG_WITH_SOFTWARE_PRNG=y
100+
$ make CROSS_COMPILE64="$CROSS_COMPILE_64" PLATFORM=k3-|__OPTEE_PLATFORM_FLAVOR__| CFG_ARM64_core=y CFG_WITH_SOFTWARE_PRNG=y CFG_USER_TA_TARGETS=ta_arm64
77101
78102
.. _secure-storage-with-rpmb:
79103

0 commit comments

Comments
 (0)