diff --git a/meta-ti-bsp/conf/machine/include/am69.inc b/meta-ti-bsp/conf/machine/include/am69.inc index da8a5a8b..1a19410a 100644 --- a/meta-ti-bsp/conf/machine/include/am69.inc +++ b/meta-ti-bsp/conf/machine/include/am69.inc @@ -18,4 +18,4 @@ TFA_BOARD = "j784s4" OPTEEMACHINE = "k3-j784s4" -MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "cadence-mhdp-fw cnm-wave-fw ti-eth-fw" +MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "cadence-mhdp-fw cnm-wave-fw ti-eth-fw-j784s4" diff --git a/meta-ti-bsp/conf/machine/include/j7200.inc b/meta-ti-bsp/conf/machine/include/j7200.inc index b60b98e1..3cba71b6 100644 --- a/meta-ti-bsp/conf/machine/include/j7200.inc +++ b/meta-ti-bsp/conf/machine/include/j7200.inc @@ -26,4 +26,4 @@ TFA_BOARD = "generic" OPTEEMACHINE = "k3-j721e" -MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "ti-eth-fw" +MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "ti-eth-fw-j7200" diff --git a/meta-ti-bsp/conf/machine/include/j721e.inc b/meta-ti-bsp/conf/machine/include/j721e.inc index b5ba448e..30aa2a69 100644 --- a/meta-ti-bsp/conf/machine/include/j721e.inc +++ b/meta-ti-bsp/conf/machine/include/j721e.inc @@ -40,4 +40,4 @@ TI_VXE_VXD_DRIVER = "ti-vxe-vxd-driver" TI_VXE_VXD_DRIVER:bsp-ti-6_6 = "" TI_VXE_VXD_DRIVER:bsp-ti-6_1 = "" -MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "cadence-mhdp-fw vxd-dec-fw ti-eth-fw ${TI_VXE_VXD_DRIVER}" +MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "cadence-mhdp-fw vxd-dec-fw ti-eth-fw-j721e ${TI_VXE_VXD_DRIVER}" diff --git a/meta-ti-bsp/conf/machine/include/j784s4.inc b/meta-ti-bsp/conf/machine/include/j784s4.inc index fd3990a6..33224ee3 100644 --- a/meta-ti-bsp/conf/machine/include/j784s4.inc +++ b/meta-ti-bsp/conf/machine/include/j784s4.inc @@ -21,4 +21,4 @@ TFA_BOARD = "j784s4" OPTEEMACHINE = "k3-j784s4" -MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "cadence-mhdp-fw cnm-wave-fw ti-eth-fw" +MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "cadence-mhdp-fw cnm-wave-fw ti-eth-fw-j784s4" diff --git a/meta-ti-bsp/recipes-bsp/ti-eth-fw/ti-eth-fw.bb b/meta-ti-bsp/recipes-bsp/ti-eth-fw/ti-eth-fw.bb index 8037ac6c..04e43609 100644 --- a/meta-ti-bsp/recipes-bsp/ti-eth-fw/ti-eth-fw.bb +++ b/meta-ti-bsp/recipes-bsp/ti-eth-fw/ti-eth-fw.bb @@ -5,8 +5,6 @@ LIC_FILES_CHKSUM = "file://${THISDIR}/../../licenses/TI-TFL;md5=a1b59cb7ba626b9d COMPATIBLE_MACHINE = "j721e|j7200|j784s4" -PACKAGE_ARCH = "${MACHINE_ARCH}" - inherit update-alternatives require recipes-bsp/ti-linux-fw/ti-linux-fw.inc @@ -17,50 +15,60 @@ PR = "${INC_PR}.0" # Secure Build inherit ti-secdev -PLAT_SFX = "" -PLAT_SFX:j721e = "j721e" -PLAT_SFX:j7200 = "j7200" -PLAT_SFX:j784s4 = "j784s4" +PACKAGES += " \ + ${PN}-j721e \ + ${PN}-j7200 \ + ${PN}-j784s4 \ +" +# Disable arch checking as firmware is likely to be a different arch from the Yocto build +INSANE_SKIP:${PN}-j721e += "arch" +INSANE_SKIP:${PN}-j7200 += "arch" +INSANE_SKIP:${PN}-j784s4 += "arch" -ETH_FW_DIR = "ti-eth/${PLAT_SFX}" +RDEPENDS:${PN} += " \ + ${PN}-j721e \ + ${PN}-j7200 \ + ${PN}-j784s4 \ +" -INSTALL_ETH_FW_DIR = "${nonarch_base_libdir}/firmware/${ETH_FW_DIR}" +PLATS = "\ + j721e \ + j7200 \ + j784s4 \ +" ETH_FW = "app_remoteswitchcfg_server_strip.xer5f" -ETH_FW_LIST = "" -ETH_FW_LIST:j721e = "${ETH_FW}" -ETH_FW_LIST:j7200 = "${ETH_FW}" -ETH_FW_LIST:j784s4 = "${ETH_FW}" - do_install() { - # ETH firmware - for FW_NAME in ${ETH_FW_LIST} + for PLAT in ${PLATS} do - ${TI_SECURE_DEV_PKG}/scripts/secure-binary-image.sh ${S}/${ETH_FW_DIR}/${FW_NAME} ${S}/${ETH_FW_DIR}/${FW_NAME}.signed - done + # Sign ETH firmware + ${TI_SECURE_DEV_PKG}/scripts/secure-binary-image.sh ${S}/ti-eth/${PLAT}/${ETH_FW} ${S}/ti-eth/${PLAT}/${ETH_FW}.signed - # ETH firmware - install -d ${D}${INSTALL_ETH_FW_DIR} - for FW_NAME in ${ETH_FW_LIST} - do - install -m 0644 ${S}/${ETH_FW_DIR}/${FW_NAME} ${D}${INSTALL_ETH_FW_DIR} - install -m 0644 ${S}/${ETH_FW_DIR}/${FW_NAME}.signed ${D}${INSTALL_ETH_FW_DIR} + # Install ETH firmware + install -d ${D}${nonarch_base_libdir}/firmware/ti-eth/${PLAT} + install -m 0644 ${S}/ti-eth/${PLAT}/${ETH_FW} ${D}${nonarch_base_libdir}/firmware/ti-eth/${PLAT} + install -m 0644 ${S}/ti-eth/${PLAT}/${ETH_FW}.signed ${D}${nonarch_base_libdir}/firmware/ti-eth/${PLAT} done } +FILES:${PN} = "" +FILES:${PN}-j721e = "${nonarch_base_libdir}/firmware/ti-eth/j721e" +FILES:${PN}-j7200 = "${nonarch_base_libdir}/firmware/ti-eth/j7200" +FILES:${PN}-j784s4 = "${nonarch_base_libdir}/firmware/ti-eth/j784s4" + # Set up names for the firmwares -ALTERNATIVE:${PN}:j721e = "\ +ALTERNATIVE:${PN}-j721e = "\ j7-main-r5f0_0-fw \ j7-main-r5f0_0-fw-sec \ " -ALTERNATIVE:${PN}:j7200 = "\ +ALTERNATIVE:${PN}-j7200 = "\ j7200-main-r5f0_0-fw \ j7200-main-r5f0_0-fw-sec \ " -ALTERNATIVE:${PN}:j784s4 = "\ +ALTERNATIVE:${PN}-j784s4 = "\ j784s4-main-r5f0_0-fw \ j784s4-main-r5f0_0-fw-sec \ " @@ -76,13 +84,13 @@ ALTERNATIVE_LINK_NAME[j784s4-main-r5f0_0-fw] = "${nonarch_base_libdir}/firmw ALTERNATIVE_LINK_NAME[j784s4-main-r5f0_0-fw-sec] = "${nonarch_base_libdir}/firmware/j784s4-main-r5f0_0-fw-sec" # Create the firmware alternatives -ALTERNATIVE_TARGET[j7-main-r5f0_0-fw] = "${INSTALL_ETH_FW_DIR}/${ETH_FW}" -ALTERNATIVE_TARGET[j7-main-r5f0_0-fw-sec] = "${INSTALL_ETH_FW_DIR}/${ETH_FW}.signed" +ALTERNATIVE_TARGET[j7-main-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/ti-eth/j721e/${ETH_FW}" +ALTERNATIVE_TARGET[j7-main-r5f0_0-fw-sec] = "${nonarch_base_libdir}/firmware/ti-eth/j721e/${ETH_FW}.signed" -ALTERNATIVE_TARGET[j7200-main-r5f0_0-fw] = "${INSTALL_ETH_FW_DIR}/${ETH_FW}" -ALTERNATIVE_TARGET[j7200-main-r5f0_0-fw-sec] = "${INSTALL_ETH_FW_DIR}/${ETH_FW}.signed" +ALTERNATIVE_TARGET[j7200-main-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/ti-eth/j7200/${ETH_FW}" +ALTERNATIVE_TARGET[j7200-main-r5f0_0-fw-sec] = "${nonarch_base_libdir}/firmware/ti-eth/j7200/${ETH_FW}.signed" -ALTERNATIVE_TARGET[j784s4-main-r5f0_0-fw] = "${INSTALL_ETH_FW_DIR}/${ETH_FW}" -ALTERNATIVE_TARGET[j784s4-main-r5f0_0-fw-sec] = "${INSTALL_ETH_FW_DIR}/${ETH_FW}.signed" +ALTERNATIVE_TARGET[j784s4-main-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/ti-eth/j784s4/${ETH_FW}" +ALTERNATIVE_TARGET[j784s4-main-r5f0_0-fw-sec] = "${nonarch_base_libdir}/firmware/ti-eth/j784s4/${ETH_FW}.signed" ALTERNATIVE_PRIORITY = "5"