summaryrefslogtreecommitdiffstats
path: root/recipes-bsp/common-csl-ip/csl-rti-dwwdtest-fw_git.bb
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-bsp/common-csl-ip/csl-rti-dwwdtest-fw_git.bb')
-rw-r--r--recipes-bsp/common-csl-ip/csl-rti-dwwdtest-fw_git.bb77
1 files changed, 77 insertions, 0 deletions
diff --git a/recipes-bsp/common-csl-ip/csl-rti-dwwdtest-fw_git.bb b/recipes-bsp/common-csl-ip/csl-rti-dwwdtest-fw_git.bb
new file mode 100644
index 00000000..55e583b4
--- /dev/null
+++ b/recipes-bsp/common-csl-ip/csl-rti-dwwdtest-fw_git.bb
@@ -0,0 +1,77 @@
1SUMMARY = "MCU Watchdog test firmware"
2DESCRIPTION = "Firmware for the R5F core to test the detection of watchdog timeout events to trigger SOC reset though DMSC."
3
4require recipes-bsp/common-csl-ip/common-csl-ip.inc
5require recipes-ti/includes/ti-paths.inc
6
7LIC_FILES_CHKSUM = "file://../../../COPYING.txt;md5=5857833e20836213677fac33f9aded21"
8
9S = "${WORKDIR}/${CSL_GIT_DESTSUFFIX}/example/rti/rti_dwwdtest_app"
10
11COMPATIBLE_MACHINE = "am65xx"
12PACKAGE_ARCH = "${MACHINE_ARCH}"
13
14DEPENDS = "ti-cgt-arm-native \
15 ti-pdk-build-rtos \
16 uart-lld-rtos \
17 board-rtos \
18 sciclient-rtos \
19 udma-lld-rtos"
20
21export PDK_INSTALL_PATH = "${PDK_INSTALL_DIR}/packages"
22export TOOLCHAIN_PATH_R5 = "${M4_TOOLCHAIN_INSTALL_DIR}"
23
24EXTRA_OEMAKE = "WDT_RESET=enable DEST_ROOT=${S}"
25
26do_compile() {
27 for soc in ${TI_PDK_LIMIT_SOCS}
28 do
29 for board in ${TI_PDK_LIMIT_BOARDS}
30 do
31 oe_runmake SOC=$soc BOARD=$board
32 done
33 done
34}
35
36do_install() {
37 install -d ${D}${base_libdir}/firmware/rti_dwwdtest
38
39 for board in ${TI_PDK_LIMIT_BOARDS}
40 do
41 install -d ${D}${base_libdir}/firmware/rti_dwwdtest/$board
42 install -m 0644 csl_rti_dwwd_test_app/bin/$board/csl_rti_dwwd_test_app_mcu1_0_release.xer5f \
43 ${D}${base_libdir}/firmware/rti_dwwdtest/$board
44 done
45}
46
47# Create separate package for each firmware so we can utilize
48# update-alternatives.
49PACKAGES =+ "${PN}-evm ${PN}-idk"
50RDEPENDS_${PN} = "${PN}-evm ${PN}-idk"
51ALLOW_EMPTY_${PN} = "1"
52
53FILES_${PN}-evm = "${base_libdir}/firmware/rti_dwwdtest/am65xx_evm"
54FILES_${PN}-idk = "${base_libdir}/firmware/rti_dwwdtest/am65xx_idk"
55
56# We are packaging R5 firmware
57INSANE_SKIP_${PN}-evm = "arch"
58INSANE_SKIP_${PN}-idk = "arch"
59
60# Configure update-alternatives as there may be other firmwares provided in an
61# image.
62inherit update-alternatives
63
64# It might be nice to dynamically declare the following based on
65# TI_PDK_LIMIT_BOARDS, but that is probably overkill.
66ALTERNATIVE_${PN}-evm = "am65x-mcu-r5f0_0-fw"
67ALTERNATIVE_${PN}-idk = "am65x-mcu-r5f0_0-fw"
68
69ALTERNATIVE_LINK_NAME[am65x-mcu-r5f0_0-fw] = "${base_libdir}/firmware/am65x-mcu-r5f0_0-fw"
70
71ALTERNATIVE_TARGET_${PN}-evm = "${base_libdir}/firmware/rti_dwwdtest/am65xx_evm/csl_rti_dwwd_test_app_mcu1_0_release.xer5f"
72ALTERNATIVE_TARGET_${PN}-idk = "${base_libdir}/firmware/rti_dwwdtest/am65xx_idk/csl_rti_dwwd_test_app_mcu1_0_release.xer5f"
73
74# Use a lesser priority than ipc example fw
75# See meta-ti/recipes-ti/ipc/ti-ipc-rtos_git.bb
76ALTERNATIVE_PRIORITY_${PN}-evm = "4"
77ALTERNATIVE_PRIORITY_${PN}-idk = "3"