new file mode 100644
@@ -0,0 +1,19 @@
+require conf/machine/include/k3.inc
+SOC_FAMILY:append = ":j722s"
+
+MACHINE_FEATURES += "screen gpu"
+
+require conf/machine/include/mesa-pvr.inc
+PREFERRED_PROVIDER_virtual/gpudriver ?= ""
+
+# Default tiboot3.bin on J722S is for HS-FS
+IMAGE_BOOT_FILES += "tiboot3-j722s-hs-fs-evm.bin"
+
+TFA_BOARD = "lite"
+TFA_K3_SYSTEM_SUSPEND = "1"
+
+OPTEEMACHINE = "k3-am62x"
+
+MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "cnm-wave-fw"
+
+SERIAL_CONSOLES = "115200;ttyS2"
new file mode 100644
@@ -0,0 +1,11 @@
+#@TYPE: Machine
+#@NAME: J722S EVM (R5F)
+#@DESCRIPTION: Machine configuration for the TI J722S EVM (R5F core)
+
+require conf/machine/include/k3r5.inc
+
+SYSFW_SOC = "j722s"
+SYSFW_CONFIG = "evm"
+SYSFW_SUFFIX = "hs-fs"
+
+UBOOT_MACHINE = "j722s_evm_r5_defconfig"
new file mode 100644
@@ -0,0 +1,11 @@
+#@TYPE: Machine
+#@NAME: J722S EVM
+#@DESCRIPTION: Machine configuration for the TI J722S EVM
+
+require conf/machine/include/j722s.inc
+
+KERNEL_DEVICETREE_PREFIX = "ti/k3-j722s"
+
+KERNEL_DEVICETREE = ""
+
+UBOOT_MACHINE = "j722s_evm_a53_defconfig"
@@ -10,7 +10,7 @@ LIC_FILES_CHKSUM = "file://LICENCE.cnm;md5=93b67e6bac7f8fec22b96b8ad0a1a9d0"
PV = "${CNM_WAVE521_FW_VERSION}"
PR = "${INC_PR}.1"
-COMPATIBLE_MACHINE = "j721s2|j784s4|am62axx|am62pxx"
+COMPATIBLE_MACHINE = "j721s2|j784s4|j722s|am62axx|am62pxx"
PACKAGE_ARCH = "${MACHINE_ARCH}"
@@ -25,6 +25,7 @@ PLAT_SFX:j721e = "j721e"
PLAT_SFX:j7200 = "j7200"
PLAT_SFX:j721s2 = "j721s2"
PLAT_SFX:j784s4 = "j784s4"
+PLAT_SFX:j722s = "j722s"
PLAT_SFX:am65xx = "am65xx"
PLAT_SFX:am64xx = "am64xx"
PLAT_SFX:am62xx = "am62xx"
@@ -42,6 +43,7 @@ DM_FW_LIST:j721e = "${DM_FIRMWARE}"
DM_FW_LIST:j7200 = "${DM_FIRMWARE}"
DM_FW_LIST:j721s2 = "${DM_FIRMWARE}"
DM_FW_LIST:j784s4 = "${DM_FIRMWARE}"
+DM_FW_LIST:j722s = "${DM_FIRMWARE}"
DM_FW_LIST:am65xx = ""
DM_FW_LIST:am64xx = ""
DM_FW_LIST:am62xx = "${DM_FIRMWARE}"
@@ -83,6 +85,7 @@ ALTERNATIVE:${PN}:j721e = "j7-mcu-r5f0_0-fw"
ALTERNATIVE:${PN}:j7200 = "j7200-mcu-r5f0_0-fw"
ALTERNATIVE:${PN}:j721s2 = "j721s2-mcu-r5f0_0-fw"
ALTERNATIVE:${PN}:j784s4 = "j784s4-mcu-r5f0_0-fw"
+ALTERNATIVE:${PN}:j722s = "j722s-wkup-r5f0_0-fw"
# Set up link names for the firmwares
ALTERNATIVE_LINK_NAME[am62-main-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/am62-main-r5f0_0-fw"
@@ -92,6 +95,7 @@ ALTERNATIVE_LINK_NAME[j7-mcu-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/j
ALTERNATIVE_LINK_NAME[j7200-mcu-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/j7200-mcu-r5f0_0-fw"
ALTERNATIVE_LINK_NAME[j721s2-mcu-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/j721s2-mcu-r5f0_0-fw"
ALTERNATIVE_LINK_NAME[j784s4-mcu-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/j784s4-mcu-r5f0_0-fw"
+ALTERNATIVE_LINK_NAME[j722s-wkup-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/j722s-wkup-r5f0_0-fw"
# Create the firmware alternatives
ALTERNATIVE_TARGET[am62-main-r5f0_0-fw] = "${INSTALL_DM_FW_DIR}/${DM_FIRMWARE}"
@@ -101,6 +105,7 @@ ALTERNATIVE_TARGET[j7-mcu-r5f0_0-fw] = "${INSTALL_DM_FW_DIR}/${DM_FIRMWARE}"
ALTERNATIVE_TARGET[j7200-mcu-r5f0_0-fw] = "${INSTALL_DM_FW_DIR}/${DM_FIRMWARE}"
ALTERNATIVE_TARGET[j721s2-mcu-r5f0_0-fw] = "${INSTALL_DM_FW_DIR}/${DM_FIRMWARE}"
ALTERNATIVE_TARGET[j784s4-mcu-r5f0_0-fw] = "${INSTALL_DM_FW_DIR}/${DM_FIRMWARE}"
+ALTERNATIVE_TARGET[j722s-wkup-r5f0_0-fw] = "${INSTALL_DM_FW_DIR}/${DM_FIRMWARE}"
ALTERNATIVE_PRIORITY = "10"
@@ -24,6 +24,7 @@ PLAT_SFX:j721e = "j721e"
PLAT_SFX:j7200 = "j7200"
PLAT_SFX:j721s2 = "j721s2"
PLAT_SFX:j784s4 = "j784s4"
+PLAT_SFX:j722s = "j722s"
PLAT_SFX:am65xx = "am65xx"
PLAT_SFX:am64xx = "am64xx"
PLAT_SFX:am62xx = "am62xx"
@@ -41,10 +42,11 @@ ETH_FW_LIST:j721e = "${ETH_FW}"
ETH_FW_LIST:j7200 = "${ETH_FW}"
ETH_FW_LIST:j721s2 = ""
ETH_FW_LIST:j784s4 = "${ETH_FW}"
+ETH_FW_LIST:j722s = ""
ETH_FW_LIST:am65xx = ""
ETH_FW_LIST:am64xx = ""
ETH_FW_LIST:am62xx = ""
-ETH_FW_LIST:am62pxx = ""
+ETH_FW_LIST:am62pxx = ""
ETH_FW_LIST:am62axx = ""
do_install() {
@@ -40,6 +40,7 @@ PLAT_SFX:j721e = "j721e"
PLAT_SFX:j7200 = "j7200"
PLAT_SFX:j721s2 = "j721s2"
PLAT_SFX:j784s4 = "j784s4"
+PLAT_SFX:j722s = "j722s"
PLAT_SFX:am65xx = "am65xx"
PLAT_SFX:am64xx = "am64xx"
PLAT_SFX:am62xx = "am62xx"
@@ -55,6 +56,7 @@ PACKAGECONFIG:append:j721e = " dm"
PACKAGECONFIG:append:j7200 = " dm"
PACKAGECONFIG:append:j721s2 = " dm"
PACKAGECONFIG:append:j784s4 = " dm"
+PACKAGECONFIG:append:j722s = " dm"
PACKAGECONFIG:append:am62xx = " dm"
PACKAGECONFIG:append:am62axx = " dm"
PACKAGECONFIG:append:am62pxx = " dm"
@@ -6,6 +6,7 @@ EXTRA_OEMAKE:append:k3 = "${@ ' CFG_CONSOLE_UART='+ d.getVar('OPTEE_K3_USART') i
EXTRA_OEMAKE:append:am62xx = " CFG_TEE_CORE_LOG_LEVEL=1"
EXTRA_OEMAKE:append:am62pxx = " CFG_WITH_SOFTWARE_PRNG=y CFG_TEE_CORE_LOG_LEVEL=1"
EXTRA_OEMAKE:append:am62axx = " CFG_TEE_CORE_LOG_LEVEL=1"
+EXTRA_OEMAKE:append:j722s = " CFG_WITH_SOFTWARE_PRNG=y CFG_TEE_CORE_LOG_LEVEL=1"
do_compile:append:k3() {
cp ${B}/core/tee-pager_v2.bin ${B}/bl32.bin
@@ -16,6 +16,7 @@ PLAT_SFX:j721e = "j721e"
PLAT_SFX:j7200 = "j7200"
PLAT_SFX:j721s2 = "j721s2"
PLAT_SFX:j784s4 = "j784s4"
+PLAT_SFX:j722s = "j722s"
PLAT_SFX:am65xx = "am65xx"
PLAT_SFX:am64xx = "am64xx"
PLAT_SFX:am62xx = "am62xx"
@@ -54,12 +55,13 @@ IPC_FW_LIST = ""
IPC_FW_LIST:am65xx = "${MCU_1_0_FW} ${MCU_1_1_FW}"
IPC_FW_LIST:am64xx = "${MCU_1_0_FW} ${MCU_1_1_FW} ${MCU_2_0_FW} ${MCU_2_1_FW} ${MCU_3_0_FW}"
IPC_FW_LIST:am62xx = " ${MCU_2_0_FW}"
-IPC_FW_LIST:am62pxx = " ${MCU_2_0_FW}"
+IPC_FW_LIST:am62pxx = " ${MCU_2_0_FW}"
IPC_FW_LIST:am62axx = " ${MCU_2_0_FW} ${C7X_1_FW}"
IPC_FW_LIST:j721e = " ${MCU_1_1_FW} ${MCU_2_0_FW} ${MCU_2_1_FW} ${MCU_3_0_FW} ${MCU_3_1_FW} ${C66_1_FW} ${C66_2_FW} ${C7X_1_FW}"
IPC_FW_LIST:j7200 = " ${MCU_1_1_FW} ${MCU_2_0_FW} ${MCU_2_1_FW}"
IPC_FW_LIST:j721s2 = " ${MCU_1_1_FW} ${MCU_2_0_FW} ${MCU_2_1_FW} ${MCU_3_0_FW} ${MCU_3_1_FW} ${C7X_1_FW} ${C7X_2_FW}"
IPC_FW_LIST:j784s4 = " ${MCU_1_1_FW} ${MCU_2_0_FW} ${MCU_2_1_FW} ${MCU_3_0_FW} ${MCU_3_1_FW} ${MCU_4_0_FW} ${MCU_4_1_FW} ${C7X_1_FW} ${C7X_2_FW} ${C7X_3_FW} ${C7X_4_FW}"
+IPC_FW_LIST:j722s = " ${MCU_2_0_FW} ${MCU_3_0_FW} ${C7X_1_FW} ${C7X_2_FW}"
# Update the am64xx ipc binaries to be consistent with other platforms
do_install:prepend:am64xx() {
@@ -178,6 +180,13 @@ ALTERNATIVE:${PN}:j784s4 = "\
j784s4-c71_3-fw j784s4-c71_3-fw-sec \
"
+ALTERNATIVE:${PN}:j722s = "\
+ j722s-mcu-r5f0_0-fw j722s-mcu-r5f0_0-fw-sec \
+ j722s-main-r5f0_0-fw j722s-main-r5f0_0-fw-sec \
+ j722s-c71_0-fw j722s-c71_0-fw-sec \
+ j722s-c71_1-fw j722s-c71_1-fw-sec \
+ "
+
# Set up link names for the firmwares
ALTERNATIVE_LINK_NAME[am65x-mcu-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/am65x-mcu-r5f0_0-fw"
@@ -271,6 +280,15 @@ ALTERNATIVE_LINK_NAME[j784s4-c71_2-fw-sec] = "${nonarch_base_libdir}/firmware/j7
ALTERNATIVE_LINK_NAME[j784s4-c71_3-fw] = "${nonarch_base_libdir}/firmware/j784s4-c71_3-fw"
ALTERNATIVE_LINK_NAME[j784s4-c71_3-fw-sec] = "${nonarch_base_libdir}/firmware/j784s4-c71_3-fw-sec"
+ALTERNATIVE_LINK_NAME[j722s-mcu-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/j722s-mcu-r5f0_0-fw"
+ALTERNATIVE_LINK_NAME[j722s-mcu-r5f0_0-fw-sec] = "${nonarch_base_libdir}/firmware/j722s-mcu-r5f0_0-fw-sec"
+ALTERNATIVE_LINK_NAME[j722s-main-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/j722s-main-r5f0_0-fw"
+ALTERNATIVE_LINK_NAME[j722s-main-r5f0_0-fw-sec] = "${nonarch_base_libdir}/firmware/j722s-main-r5f0_0-fw-sec"
+ALTERNATIVE_LINK_NAME[j722s-c71_0-fw] = "${nonarch_base_libdir}/firmware/j722s-c71_0-fw"
+ALTERNATIVE_LINK_NAME[j722s-c71_0-fw-sec] = "${nonarch_base_libdir}/firmware/j722s-c71_0-fw-sec"
+ALTERNATIVE_LINK_NAME[j722s-c71_1-fw] = "${nonarch_base_libdir}/firmware/j722s-c71_1-fw"
+ALTERNATIVE_LINK_NAME[j722s-c71_1-fw-sec] = "${nonarch_base_libdir}/firmware/j722s-c71_1-fw-sec"
+
# Create the firmware alternatives
ALTERNATIVE_TARGET[am65x-mcu-r5f0_0-fw] = "${INSTALL_IPC_FW_DIR}/${MCU_1_0_FW}"
@@ -364,4 +382,13 @@ ALTERNATIVE_TARGET[j784s4-c71_2-fw-sec] = "${INSTALL_IPC_FW_DIR}/${C7X_3_FW}.sig
ALTERNATIVE_TARGET[j784s4-c71_3-fw] = "${INSTALL_IPC_FW_DIR}/${C7X_4_FW}"
ALTERNATIVE_TARGET[j784s4-c71_3-fw-sec] = "${INSTALL_IPC_FW_DIR}/${C7X_4_FW}.signed"
+ALTERNATIVE_TARGET[j722s-mcu-r5f0_0-fw] = "${INSTALL_IPC_FW_DIR}/${MCU_2_0_FW}"
+ALTERNATIVE_TARGET[j722s-mcu-r5f0_0-fw-sec] = "${INSTALL_IPC_FW_DIR}/${MCU_2_0_FW}.signed"
+ALTERNATIVE_TARGET[j722s-main-r5f0_0-fw] = "${INSTALL_IPC_FW_DIR}/${MCU_3_0_FW}"
+ALTERNATIVE_TARGET[j722s-main-r5f0_0-fw-sec] = "${INSTALL_IPC_FW_DIR}/${MCU_3_0_FW}.signed"
+ALTERNATIVE_TARGET[j722s-c71_0-fw] = "${INSTALL_IPC_FW_DIR}/${C7X_1_FW}"
+ALTERNATIVE_TARGET[j722s-c71_0-fw-sec] = "${INSTALL_IPC_FW_DIR}/${C7X_1_FW}.signed"
+ALTERNATIVE_TARGET[j722s-c71_1-fw] = "${INSTALL_IPC_FW_DIR}/${C7X_2_FW}"
+ALTERNATIVE_TARGET[j722s-c71_1-fw-sec] = "${INSTALL_IPC_FW_DIR}/${C7X_2_FW}.signed"
+
ALTERNATIVE_PRIORITY = "10"