diff mbox series

[scarthgap/master] ti-sgx-ddk-km: work around incorrect target name selection

Message ID 20250306141217.346689-1-matthias.schiffer@ew.tq-group.com
State New
Headers show
Series [scarthgap/master] ti-sgx-ddk-km: work around incorrect target name selection | expand

Commit Message

Matthias Schiffer March 6, 2025, 2:12 p.m. UTC
The omap5-sgx-ddk-linux Makefiles contain a list of target triple
patterns that are detected as "Yocto" to deal with arm vs. armhf target
selection. This breaks for Yocto distros that override TARGET_VENDOR,
requiring patches like [1]; similar patches can also be found in other
vendors' machine layers.

Work around the incorrect target selection by passing TARGET_PRIMARY_ARCH
via EXTRA_OEMAKE.

[1] https://github.com/tq-systems/meta-tq/blob/scarthgap.TQ.ARM.BSP.0003/meta-tq/dynamic-layers/meta-ti-bsp/recipes-bsp/powervr-drivers/ti-sgx-ddk-km/linux-5.10/0001-ti-sgx-ddk-km-properly-handle-more-OE-YP-compiler-pr.patch

Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com>
---

Tested with meta-tq + meta-ti scarthgap for am335x.

 .../powervr-drivers/ti-sgx-ddk-km_1.17.4948957.bb     | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)
diff mbox series

Patch

diff --git a/meta-ti-bsp/recipes-bsp/powervr-drivers/ti-sgx-ddk-km_1.17.4948957.bb b/meta-ti-bsp/recipes-bsp/powervr-drivers/ti-sgx-ddk-km_1.17.4948957.bb
index 49376221..aaeee1d2 100644
--- a/meta-ti-bsp/recipes-bsp/powervr-drivers/ti-sgx-ddk-km_1.17.4948957.bb
+++ b/meta-ti-bsp/recipes-bsp/powervr-drivers/ti-sgx-ddk-km_1.17.4948957.bb
@@ -28,8 +28,11 @@  TARGET_PRODUCT:am65xx = "ti654x_linux"
 PVR_BUILD = "release"
 PVR_WS = "lws-generic"
 
+TARGET_PRIMARY_ARCH = "target_armhf"
+TARGET_PRIMARY_ARCH:aarch64 = "target_aarch64"
+
 EXTRA_OEMAKE += 'KERNELDIR="${STAGING_KERNEL_DIR}" BUILD=${PVR_BUILD} \
-WINDOW_SYSTEM=${PVR_WS} PVR_BUILD_DIR=${TARGET_PRODUCT}'
+WINDOW_SYSTEM=${PVR_WS} PVR_BUILD_DIR=${TARGET_PRODUCT} TARGET_PRIMARY_ARCH=${TARGET_PRIMARY_ARCH}'
 
 # There are useful flags here that are interpreted by the final kbuild pass
 # These variables are not necessary when compiling outside of Yocto
@@ -40,11 +43,7 @@  export KERNEL_OBJCOPY
 export KERNEL_STRIP
 
 do_install() {
-    make -C ${STAGING_KERNEL_DIR} M=${B}/eurasiacon/binary_${TARGET_PRODUCT}_${PVR_WS}_${PVR_BUILD}/target_armhf/kbuild INSTALL_MOD_PATH=${D}${root_prefix} PREFIX=${STAGING_DIR_HOST} modules_install
-}
-
-do_install:am65xx() {
-    make -C ${STAGING_KERNEL_DIR} M=${B}/eurasiacon/binary_${TARGET_PRODUCT}_${PVR_WS}_${PVR_BUILD}/target_aarch64/kbuild INSTALL_MOD_PATH=${D}${root_prefix} PREFIX=${STAGING_DIR_HOST} modules_install
+    make -C ${STAGING_KERNEL_DIR} M=${B}/eurasiacon/binary_${TARGET_PRODUCT}_${PVR_WS}_${PVR_BUILD}/${TARGET_PRIMARY_ARCH}/kbuild INSTALL_MOD_PATH=${D}${root_prefix} PREFIX=${STAGING_DIR_HOST} modules_install
 }
 
 RRECOMMENDS:${PN} += "ti-sgx-ddk-um"