All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-ti][scarthgap/master][PATCH 1/3] meta-ti-bsp: Split out ti-edgeai-fw from ti-rtos-echo-test-fw
@ 2025-06-27 20:24 Andrew Davis
  2025-06-27 20:24 ` [meta-ti][scarthgap/master][PATCH 2/3] ti-linux-fw: Remove default SUMMARY line Andrew Davis
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Andrew Davis @ 2025-06-27 20:24 UTC (permalink / raw)
  To: Denys Dmytriyenko, Ryan Eatmon, meta-ti; +Cc: Andrew Davis

TI EdgeAI firmware is distinct from the other "echo test" firmware
provided by ti-rtos-echo-test-fw. It belongs in its own package.
Split out the EdgeAI firmware from the "echo test" firmware.

Give this a higher ALTERNATIVE_PRIORITY so that if both are installed
the default will still be EdgeAI firmware for AM62A devices.

Signed-off-by: Andrew Davis <afd@ti.com>
---
 .../recipes-bsp/ti-rtos-fw/ti-edgeai-fw.bb    | 58 +++++++++++++++++++
 .../ti-rtos-fw/ti-rtos-echo-test-fw.bb        | 29 +++++-----
 2 files changed, 72 insertions(+), 15 deletions(-)
 create mode 100644 meta-ti-bsp/recipes-bsp/ti-rtos-fw/ti-edgeai-fw.bb

diff --git a/meta-ti-bsp/recipes-bsp/ti-rtos-fw/ti-edgeai-fw.bb b/meta-ti-bsp/recipes-bsp/ti-rtos-fw/ti-edgeai-fw.bb
new file mode 100644
index 00000000..67150968
--- /dev/null
+++ b/meta-ti-bsp/recipes-bsp/ti-rtos-fw/ti-edgeai-fw.bb
@@ -0,0 +1,58 @@
+SUMMARY = "TI EdgeAI prebuilt binary firmware images"
+
+LICENSE = "TI-TFL"
+LIC_FILES_CHKSUM = "file://${THISDIR}/../../licenses/TI-TFL;md5=a1b59cb7ba626b9dbbcbf00f3fbc438a"
+
+COMPATIBLE_MACHINE = "am62axx"
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+inherit update-alternatives
+
+PLAT_SFX = ""
+PLAT_SFX:am62axx = "am62axx"
+
+require recipes-bsp/ti-linux-fw/ti-linux-fw.inc
+
+PV = "${CORESDK_RTOS_VERSION}"
+PR = "${INC_PR}.1"
+
+# Secure Build
+inherit ti-secdev
+
+IPC_FW_DIR = "ti-ipc/${PLAT_SFX}"
+
+INSTALL_IPC_FW_DIR = "${nonarch_base_libdir}/firmware/${IPC_FW_DIR}"
+
+C7X_1_FW = "dsp_edgeai_c7x_1_release_strip.out"
+
+IPC_FW_LIST = ""
+IPC_FW_LIST:am62axx = "${C7X_1_FW}"
+
+do_install() {
+    # Sign Firmware
+    for FW_NAME in ${IPC_FW_LIST}
+    do
+        ${TI_SECURE_DEV_PKG}/scripts/secure-binary-image.sh ${S}/${IPC_FW_DIR}/${FW_NAME} ${S}/${IPC_FW_DIR}/${FW_NAME}.signed
+    done
+
+    # Install Firmware
+    install -d ${D}${INSTALL_IPC_FW_DIR}
+    for FW_NAME in ${IPC_FW_LIST}
+    do
+        install -m 0644 ${S}/${IPC_FW_DIR}/${FW_NAME}        ${D}${INSTALL_IPC_FW_DIR}
+        install -m 0644 ${S}/${IPC_FW_DIR}/${FW_NAME}.signed ${D}${INSTALL_IPC_FW_DIR}
+    done
+}
+
+ALTERNATIVE:${PN}:am62axx = "\
+                    am62a-c71_0-fw        am62a-c71_0-fw-sec \
+                    "
+
+ALTERNATIVE_LINK_NAME[am62a-c71_0-fw]     = "${nonarch_base_libdir}/firmware/am62a-c71_0-fw"
+ALTERNATIVE_LINK_NAME[am62a-c71_0-fw-sec] = "${nonarch_base_libdir}/firmware/am62a-c71_0-fw-sec"
+
+ALTERNATIVE_TARGET[am62a-c71_0-fw]     = "${INSTALL_IPC_FW_DIR}/${C7X_1_FW}"
+ALTERNATIVE_TARGET[am62a-c71_0-fw-sec] = "${INSTALL_IPC_FW_DIR}/${C7X_1_FW}.signed"
+
+ALTERNATIVE_PRIORITY = "20"
diff --git a/meta-ti-bsp/recipes-bsp/ti-rtos-fw/ti-rtos-echo-test-fw.bb b/meta-ti-bsp/recipes-bsp/ti-rtos-fw/ti-rtos-echo-test-fw.bb
index 7fffc9de..3e4db129 100644
--- a/meta-ti-bsp/recipes-bsp/ti-rtos-fw/ti-rtos-echo-test-fw.bb
+++ b/meta-ti-bsp/recipes-bsp/ti-rtos-fw/ti-rtos-echo-test-fw.bb
@@ -36,21 +36,20 @@ IPC_FW_DIR = "ti-ipc/${PLAT_SFX}"
 
 INSTALL_IPC_FW_DIR = "${nonarch_base_libdir}/firmware/${IPC_FW_DIR}"
 
-MCU_1_0_FW =       "ipc_echo_test_mcu1_0_release_strip.xer5f"
-MCU_1_1_FW =       "ipc_echo_test_mcu1_1_release_strip.xer5f"
-MCU_2_0_FW =       "ipc_echo_test_mcu2_0_release_strip.xer5f"
-MCU_2_1_FW =       "ipc_echo_test_mcu2_1_release_strip.xer5f"
-MCU_3_0_FW =       "ipc_echo_test_mcu3_0_release_strip.xer5f"
-MCU_3_1_FW =       "ipc_echo_test_mcu3_1_release_strip.xer5f"
-MCU_4_0_FW =       "ipc_echo_test_mcu4_0_release_strip.xer5f"
-MCU_4_1_FW =       "ipc_echo_test_mcu4_1_release_strip.xer5f"
-C66_1_FW =         "ipc_echo_test_c66xdsp_1_release_strip.xe66"
-C66_2_FW =         "ipc_echo_test_c66xdsp_2_release_strip.xe66"
-C7X_1_FW =         "ipc_echo_test_c7x_1_release_strip.xe71"
-C7X_1_FW:am62axx = "dsp_edgeai_c7x_1_release_strip.out"
-C7X_2_FW =         "ipc_echo_test_c7x_2_release_strip.xe71"
-C7X_3_FW =         "ipc_echo_test_c7x_3_release_strip.xe71"
-C7X_4_FW =         "ipc_echo_test_c7x_4_release_strip.xe71"
+MCU_1_0_FW = "ipc_echo_test_mcu1_0_release_strip.xer5f"
+MCU_1_1_FW = "ipc_echo_test_mcu1_1_release_strip.xer5f"
+MCU_2_0_FW = "ipc_echo_test_mcu2_0_release_strip.xer5f"
+MCU_2_1_FW = "ipc_echo_test_mcu2_1_release_strip.xer5f"
+MCU_3_0_FW = "ipc_echo_test_mcu3_0_release_strip.xer5f"
+MCU_3_1_FW = "ipc_echo_test_mcu3_1_release_strip.xer5f"
+MCU_4_0_FW = "ipc_echo_test_mcu4_0_release_strip.xer5f"
+MCU_4_1_FW = "ipc_echo_test_mcu4_1_release_strip.xer5f"
+C66_1_FW   = "ipc_echo_test_c66xdsp_1_release_strip.xe66"
+C66_2_FW   = "ipc_echo_test_c66xdsp_2_release_strip.xe66"
+C7X_1_FW   = "ipc_echo_test_c7x_1_release_strip.xe71"
+C7X_2_FW   = "ipc_echo_test_c7x_2_release_strip.xe71"
+C7X_3_FW   = "ipc_echo_test_c7x_3_release_strip.xe71"
+C7X_4_FW   = "ipc_echo_test_c7x_4_release_strip.xe71"
 
 IPC_FW_LIST = ""
 IPC_FW_LIST:am65xx =  "${MCU_1_0_FW} ${MCU_1_1_FW}"
-- 
2.39.2



^ permalink raw reply related	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2025-07-01 16:22 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-06-27 20:24 [meta-ti][scarthgap/master][PATCH 1/3] meta-ti-bsp: Split out ti-edgeai-fw from ti-rtos-echo-test-fw Andrew Davis
2025-06-27 20:24 ` [meta-ti][scarthgap/master][PATCH 2/3] ti-linux-fw: Remove default SUMMARY line Andrew Davis
2025-06-27 20:24 ` [meta-ti][scarthgap/master][PATCH 3/3] meta-ti-bsp: Factor out a firmware common options helper Andrew Davis
2025-06-30 10:16 ` [meta-ti][scarthgap/master][PATCH 1/3] meta-ti-bsp: Split out ti-edgeai-fw from ti-rtos-echo-test-fw Chirag Shilwant
2025-07-01  0:28   ` Denys Dmytriyenko
2025-07-01 14:45     ` Andrew Davis
2025-07-01 15:39       ` Ryan Eatmon
2025-07-01 15:58         ` Andrew Davis
2025-07-01 16:22           ` Denys Dmytriyenko
2025-07-01 16:04         ` Denys Dmytriyenko

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.