diff mbox series

[kirkstone,06/54] machine: Add am62axx evm configuration

Message ID 20230320033840.1193963-7-denis@denix.org
State Superseded
Delegated to: Ryan Eatmon
Headers show
Series 2023.03 sync up with Dunfell | expand

Commit Message

Denys Dmytriyenko March 20, 2023, 3:37 a.m. UTC
From: Paresh Bhagat <p-bhagat@ti.com>

Lets add the basic AM62Axx-evm configuration.
- Add configurations.
- Add firmware overrides.
- Add u-boot overrides.
- Add tifs-lpm-stub.
- Add cnm-wave-fw.

Signed-off-by: Sai Sree Kartheek Adivi <s-adivi@ti.com>
Signed-off-by: Paresh Bhagat <p-bhagat@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
---
 .../conf/machine/am62axx-evm-k3r5.conf        | 11 ++++
 meta-ti-bsp/conf/machine/am62axx-evm.conf     | 11 ++++
 meta-ti-bsp/conf/machine/include/am62axx.inc  | 15 +++++
 .../cnm-wave-fw/cnm-wave-fw_git.bb            |  2 +-
 .../recipes-bsp/ti-sci-fw/ti-sci-fw_git.bb    |  1 +
 .../tifs-lpm-stub/tifs-lpm-stub_git.bb        |  2 +-
 meta-ti-bsp/recipes-bsp/u-boot/u-boot-ti.inc  |  1 +
 .../recipes-kernel/linux/kernel-rdepends.inc  |  2 +
 .../ti-rtos-bin/ti-rtos-firmware.bb           | 65 +++++++++++++------
 9 files changed, 87 insertions(+), 23 deletions(-)
 create mode 100644 meta-ti-bsp/conf/machine/am62axx-evm-k3r5.conf
 create mode 100644 meta-ti-bsp/conf/machine/am62axx-evm.conf
 create mode 100644 meta-ti-bsp/conf/machine/include/am62axx.inc
diff mbox series

Patch

diff --git a/meta-ti-bsp/conf/machine/am62axx-evm-k3r5.conf b/meta-ti-bsp/conf/machine/am62axx-evm-k3r5.conf
new file mode 100644
index 00000000..ca30537f
--- /dev/null
+++ b/meta-ti-bsp/conf/machine/am62axx-evm-k3r5.conf
@@ -0,0 +1,11 @@ 
+#@TYPE: Machine
+#@NAME: AM62AXX EVM (R5F)
+#@DESCRIPTION: Machine configuration for the TI AM62Axx EVM (R5F core)
+
+require conf/machine/include/k3r5.inc
+
+SYSFW_SOC = "am62ax"
+SYSFW_CONFIG = "evm"
+SYSFW_SUFFIX = "gp"
+
+UBOOT_MACHINE = "am62ax_evm_r5_defconfig"
diff --git a/meta-ti-bsp/conf/machine/am62axx-evm.conf b/meta-ti-bsp/conf/machine/am62axx-evm.conf
new file mode 100644
index 00000000..4eb179f3
--- /dev/null
+++ b/meta-ti-bsp/conf/machine/am62axx-evm.conf
@@ -0,0 +1,11 @@ 
+#@TYPE: Machine
+#@NAME: AM62AXX EVM
+#@DESCRIPTION: Machine configuration for the TI AM62AXX EVM
+
+require conf/machine/include/am62axx.inc
+
+KERNEL_DEVICETREE = " \
+    ti/k3-am62a7-sk.dtb \
+"
+
+UBOOT_MACHINE = "am62ax_evm_a53_defconfig"
diff --git a/meta-ti-bsp/conf/machine/include/am62axx.inc b/meta-ti-bsp/conf/machine/include/am62axx.inc
new file mode 100644
index 00000000..cc477366
--- /dev/null
+++ b/meta-ti-bsp/conf/machine/include/am62axx.inc
@@ -0,0 +1,15 @@ 
+require conf/machine/include/k3.inc
+SOC_FAMILY:append = ":am62axx"
+
+MACHINE_FEATURES += "screen touchscreen"
+
+SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS2"
+SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
+
+TFA_K3_SYSTEM_SUSPEND = "1"
+
+do_image_wic[mcdepends] = "mc::k3r5:ti-sci-fw:do_deploy"
+do_image_tar[mcdepends] = "mc::k3r5:ti-sci-fw:do_deploy"
+
+TFA_BOARD = "lite"
+OPTEEMACHINE = "k3-am62x"
diff --git a/meta-ti-bsp/recipes-bsp/cnm-wave-fw/cnm-wave-fw_git.bb b/meta-ti-bsp/recipes-bsp/cnm-wave-fw/cnm-wave-fw_git.bb
index e7aa9ef4..2f75f4e3 100644
--- a/meta-ti-bsp/recipes-bsp/cnm-wave-fw/cnm-wave-fw_git.bb
+++ b/meta-ti-bsp/recipes-bsp/cnm-wave-fw/cnm-wave-fw_git.bb
@@ -13,7 +13,7 @@  PR = "${INC_PR}.1"
 
 CLEANBROKEN = "1"
 
-COMPATIBLE_MACHINE = "j721s2|j784s4"
+COMPATIBLE_MACHINE = "j721s2|j784s4|am62axx"
 
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
diff --git a/meta-ti-bsp/recipes-bsp/ti-sci-fw/ti-sci-fw_git.bb b/meta-ti-bsp/recipes-bsp/ti-sci-fw/ti-sci-fw_git.bb
index eb641270..37d022e9 100644
--- a/meta-ti-bsp/recipes-bsp/ti-sci-fw/ti-sci-fw_git.bb
+++ b/meta-ti-bsp/recipes-bsp/ti-sci-fw/ti-sci-fw_git.bb
@@ -39,6 +39,7 @@  SYSFW_PREFIX:j784s4-evm-k3r5 = "fs"
 SYSFW_PREFIX:j784s4-hs-evm-k3r5 = "fs"
 SYSFW_PREFIX:am62xx-evm-k3r5 = "fs"
 SYSFW_PREFIX:am62xx-lp-evm-k3r5 = "fs"
+SYSFW_PREFIX:am62axx-evm-k3r5 = "fs"
 
 SYSFW_TISCI = "${S}/ti-sysfw/ti-${SYSFW_PREFIX}-firmware-${SYSFW_SOC}-*.bin"
 
diff --git a/meta-ti-bsp/recipes-bsp/tifs-lpm-stub/tifs-lpm-stub_git.bb b/meta-ti-bsp/recipes-bsp/tifs-lpm-stub/tifs-lpm-stub_git.bb
index ce5f4e1f..2db761ba 100644
--- a/meta-ti-bsp/recipes-bsp/tifs-lpm-stub/tifs-lpm-stub_git.bb
+++ b/meta-ti-bsp/recipes-bsp/tifs-lpm-stub/tifs-lpm-stub_git.bb
@@ -7,7 +7,7 @@  PR = "${INC_PR}.0"
 
 CLEANBROKEN = "1"
 
-COMPATIBLE_MACHINE = "am62xx"
+COMPATIBLE_MACHINE = "am62xx|am62axx"
 
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
diff --git a/meta-ti-bsp/recipes-bsp/u-boot/u-boot-ti.inc b/meta-ti-bsp/recipes-bsp/u-boot/u-boot-ti.inc
index 83c4af59..4f73a7b9 100644
--- a/meta-ti-bsp/recipes-bsp/u-boot/u-boot-ti.inc
+++ b/meta-ti-bsp/recipes-bsp/u-boot/u-boot-ti.inc
@@ -37,6 +37,7 @@  PACKAGECONFIG:append:j7200 = " dm"
 PACKAGECONFIG:append:j721s2 = " dm"
 PACKAGECONFIG:append:j784s4 = " dm"
 PACKAGECONFIG:append:am62xx = " dm"
+PACKAGECONFIG:append:am62axx = " dm"
 
 COMPATIBLE_MACHINE = "(ti-soc)"
 
diff --git a/meta-ti-bsp/recipes-kernel/linux/kernel-rdepends.inc b/meta-ti-bsp/recipes-kernel/linux/kernel-rdepends.inc
index 808a4766..69796915 100644
--- a/meta-ti-bsp/recipes-kernel/linux/kernel-rdepends.inc
+++ b/meta-ti-bsp/recipes-kernel/linux/kernel-rdepends.inc
@@ -30,6 +30,8 @@  RDEPENDS:${KERNEL_PACKAGE_NAME}-base:append:j721e = " vxd-dec-fw"
 # Add run-time dependency for Chips&Media Wave521 firmware to the rootfs
 RDEPENDS:${KERNEL_PACKAGE_NAME}-base:append:j721s2 = " cnm-wave-fw"
 RDEPENDS:${KERNEL_PACKAGE_NAME}-base:append:j784s4 = " cnm-wave-fw"
+RDEPENDS:${KERNEL_PACKAGE_NAME}-base:append:am62axx = " cnm-wave-fw"
 
 # Add run-time dependency for TIFS Low Power Module stub
 RDEPENDS:${KERNEL_PACKAGE_NAME}-base:append:am62xx = " tifs-lpm-stub"
+RDEPENDS:${KERNEL_PACKAGE_NAME}-base:append:am62axx = " tifs-lpm-stub"
diff --git a/meta-ti-bsp/recipes-ti/ti-rtos-bin/ti-rtos-firmware.bb b/meta-ti-bsp/recipes-ti/ti-rtos-bin/ti-rtos-firmware.bb
index ddfa07be..9b94a61e 100644
--- a/meta-ti-bsp/recipes-ti/ti-rtos-bin/ti-rtos-firmware.bb
+++ b/meta-ti-bsp/recipes-ti/ti-rtos-bin/ti-rtos-firmware.bb
@@ -20,6 +20,7 @@  PLAT_SFX:j784s4 = "j784s4"
 PLAT_SFX:am65xx = "am65xx"
 PLAT_SFX:am64xx = "am64xx"
 PLAT_SFX:am62xx = "am62xx"
+PLAT_SFX:am62axx = "am62axx"
 
 FILESEXTRAPATHS:prepend := "${METATIBASE}/recipes-bsp/ti-sci-fw/files/:"
 require recipes-bsp/ti-linux-fw/ti-linux-fw.inc
@@ -63,31 +64,34 @@  C7X_4_FW   = "ipc_echo_test_c7x_4_release_strip.xe71"
 ETH_FW = "app_remoteswitchcfg_server_strip.xer5f"
 
 DM_FW_LIST = ""
-DM_FW_LIST:am65xx = ""
-DM_FW_LIST:j721e =  "${DM_FIRMWARE}"
-DM_FW_LIST:j7200 =  "${DM_FIRMWARE}"
-DM_FW_LIST:j721s2 = "${DM_FIRMWARE}"
-DM_FW_LIST:am64xx = ""
-DM_FW_LIST:am62xx = "${DM_FIRMWARE}"
-DM_FW_LIST:j784s4 = "${DM_FIRMWARE}"
+DM_FW_LIST:am65xx =  ""
+DM_FW_LIST:j721e =   "${DM_FIRMWARE}"
+DM_FW_LIST:j7200 =   "${DM_FIRMWARE}"
+DM_FW_LIST:j721s2 =  "${DM_FIRMWARE}"
+DM_FW_LIST:am64xx =  ""
+DM_FW_LIST:am62xx =  "${DM_FIRMWARE}"
+DM_FW_LIST:am62axx = "${DM_FIRMWARE}"
+DM_FW_LIST:j784s4 =  "${DM_FIRMWARE}"
 
 IPC_FW_LIST = ""
-IPC_FW_LIST:am65xx = "${MCU_1_0_FW} ${MCU_1_1_FW}"
-IPC_FW_LIST:j721e =  "                            ${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_2_0_FW} ${MCU_2_1_FW} ${MCU_2_0_FW} ${MCU_3_1_FW}                         ${C7X_1_FW} ${C7X_2_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:j784s4 = "              ${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} ${C7X_3_FW} ${C7X_4_FW}"
+IPC_FW_LIST:am65xx =  "${MCU_1_0_FW} ${MCU_1_1_FW}"
+IPC_FW_LIST:j721e =   "                            ${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_2_0_FW} ${MCU_2_1_FW} ${MCU_2_0_FW} ${MCU_3_1_FW}                         ${C7X_1_FW} ${C7X_2_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:am62axx = "                            ${MCU_2_0_FW}                                                                   ${C7X_1_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}                         ${C7X_1_FW} ${C7X_2_FW} ${C7X_3_FW} ${C7X_4_FW}"
 
 ETH_FW_LIST = ""
-ETH_FW_LIST:am65xx = ""
-ETH_FW_LIST:j721e =  "${ETH_FW}"
-ETH_FW_LIST:j7200 =  "${ETH_FW}"
-ETH_FW_LIST:j721s2 = ""
-ETH_FW_LIST:am64xx = ""
-ETH_FW_LIST:am62xx = ""
-ETH_FW_LIST:j784s4 = "${ETH_FW}"
+ETH_FW_LIST:am65xx =  ""
+ETH_FW_LIST:j721e =   "${ETH_FW}"
+ETH_FW_LIST:j7200 =   "${ETH_FW}"
+ETH_FW_LIST:j721s2 =  ""
+ETH_FW_LIST:am64xx =  ""
+ETH_FW_LIST:am62xx =  ""
+ETH_FW_LIST:am62axx = ""
+ETH_FW_LIST:j784s4 =  "${ETH_FW}"
 
 # Update the am64xx ipc binaries to be consistent with other platforms
 do_install:prepend:am64xx() {
@@ -107,6 +111,13 @@  do_install:prepend:am62xx() {
         )
 }
 
+# Update the am62axx ipc binaries to be consistent with other platforms
+do_install:prepend:am62axx() {
+        ( cd ${RTOS_IPC_FW_DIR}; \
+                ln -s am62a-mcu-r5f0_0-fw ${MCU_1_0_FW}; \
+        )
+}
+
 # Sign the firmware
 do_install:prepend() {
     # DM Firmware
@@ -183,6 +194,11 @@  ALTERNATIVE:${PN}:am62xx = "\
                     am62-main-r5f0_0-fw \
                     "
 
+ALTERNATIVE:${PN}:am62axx = "\
+                    am62a-mcu-r5f0_0-fw \
+                    am62a-c71_0-fw \
+                    "
+
 ALTERNATIVE:${PN}:j721e = "\
                     j7-mcu-r5f0_0-fw \
                     j7-mcu-r5f0_1-fw \
@@ -257,6 +273,9 @@  ALTERNATIVE_LINK_NAME[am64-mcu-m4f0_0-fw] = "${nonarch_base_libdir}/firmware/am6
 ALTERNATIVE_LINK_NAME[am62-main-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/am62-main-r5f0_0-fw"
 ALTERNATIVE_LINK_NAME[am62-mcu-m4f0_0-fw] = "${nonarch_base_libdir}/firmware/am62-mcu-m4f0_0-fw"
 
+ALTERNATIVE_LINK_NAME[am62a-mcu-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/am62a-mcu-r5f0_0-fw"
+ALTERNATIVE_LINK_NAME[am62a-c71_0-fw] = "${nonarch_base_libdir}/firmware/am62a-c71_0-fw"
+
 ALTERNATIVE_LINK_NAME[j7-mcu-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/j7-mcu-r5f0_0-fw"
 ALTERNATIVE_LINK_NAME[j7-mcu-r5f0_1-fw] = "${nonarch_base_libdir}/firmware/j7-mcu-r5f0_1-fw"
 ALTERNATIVE_LINK_NAME[j7-main-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/j7-main-r5f0_0-fw"
@@ -326,6 +345,10 @@  ALTERNATIVE_TARGET[am64-mcu-m4f0_0-fw] = "${nonarch_base_libdir}/firmware/pdk-ip
 ALTERNATIVE_TARGET[am62-main-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/pdk-ipc/${DM_FIRMWARE}"
 ALTERNATIVE_TARGET[am62-mcu-m4f0_0-fw] = "${nonarch_base_libdir}/firmware/pdk-ipc/${MCU_2_0_FW}"
 
+ALTERNATIVE_TARGET[am62a-main-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/pdk-ipc/${DM_FIRMWARE}"
+ALTERNATIVE_TARGET[am62a-mcu-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/pdk-ipc/${MCU_2_0_FW}"
+ALTERNATIVE_TARGET[am62a-c71_0-fw] = "${nonarch_base_libdir}/firmware/pdk-ipc/${C7X_1_FW}"
+
 ALTERNATIVE_TARGET[j7-mcu-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/pdk-ipc/${DM_FIRMWARE}"
 ALTERNATIVE_TARGET[j7-mcu-r5f0_1-fw] = "${nonarch_base_libdir}/firmware/pdk-ipc/${MCU_1_1_FW}"
 ALTERNATIVE_TARGET[j7-main-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/ethfw/${ETH_FW}"