From: Ryan Eatmon <reatmon@ti.com>
To: Praneeth Bajjuri <praneeth@ti.com>,
Denys Dmytriyenko <denys@konsulko.com>,
<meta-ti@lists.yoctoproject.org>
Subject: [meta-ti][master/kirkstone][PATCH] meta-ti-bsp: Add Support for am62pxx-evm
Date: Thu, 26 Oct 2023 17:39:30 -0500 [thread overview]
Message-ID: <20231026223930.5086-1-reatmon@ti.com> (raw)
From: Chirag Shilwant <c-shilwant@ti.com>
- Add A53 and R5 machine configurations for am62pxx-evm.
- Add firmware overrides.
- Add u-boot overrides.
- Add cnm-wave support.
Signed-off-by: Chirag Shilwant <c-shilwant@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Signed-off-by: Brandon Brnich <b-brnich@ti.com>
---
.../conf/machine/am62pxx-evm-k3r5.conf | 11 +++++++++++
meta-ti-bsp/conf/machine/am62pxx-evm.conf | 13 +++++++++++++
meta-ti-bsp/conf/machine/include/am62pxx.inc | 19 +++++++++++++++++++
.../cnm-wave-fw/cnm-wave-fw_git.bb | 2 +-
meta-ti-bsp/recipes-bsp/ti-dm-fw/ti-dm-fw.bb | 5 +++++
.../recipes-bsp/ti-eth-fw/ti-eth-fw.bb | 2 ++
meta-ti-bsp/recipes-bsp/u-boot/u-boot-ti.inc | 2 ++
.../recipes-security/optee/optee-os-ti.inc | 1 +
.../ti-rtos-bin/ti-rtos-firmware.bb | 19 +++++++++++++++++++
9 files changed, 73 insertions(+), 1 deletion(-)
create mode 100644 meta-ti-bsp/conf/machine/am62pxx-evm-k3r5.conf
create mode 100644 meta-ti-bsp/conf/machine/am62pxx-evm.conf
create mode 100644 meta-ti-bsp/conf/machine/include/am62pxx.inc
diff --git a/meta-ti-bsp/conf/machine/am62pxx-evm-k3r5.conf b/meta-ti-bsp/conf/machine/am62pxx-evm-k3r5.conf
new file mode 100644
index 00000000..33254bf2
--- /dev/null
+++ b/meta-ti-bsp/conf/machine/am62pxx-evm-k3r5.conf
@@ -0,0 +1,11 @@
+#@TYPE: Machine
+#@NAME: AM62PX EVM (R5F)
+#@DESCRIPTION: Machine configuration for the TI AM62Px EVM (R5F core)
+
+require conf/machine/include/k3r5.inc
+
+SYSFW_SOC = "am62px"
+SYSFW_CONFIG = "evm"
+SYSFW_SUFFIX = "hs-fs"
+
+UBOOT_MACHINE = "am62px_evm_r5_defconfig"
diff --git a/meta-ti-bsp/conf/machine/am62pxx-evm.conf b/meta-ti-bsp/conf/machine/am62pxx-evm.conf
new file mode 100644
index 00000000..c0c62592
--- /dev/null
+++ b/meta-ti-bsp/conf/machine/am62pxx-evm.conf
@@ -0,0 +1,13 @@
+#@TYPE: Machine
+#@NAME: AM62PX EVM
+#@DESCRIPTION: Machine configuration for the TI AM62PX EVM
+
+require conf/machine/include/am62pxx.inc
+
+KERNEL_DEVICETREE_PREFIX = "ti/k3-am62p5"
+
+KERNEL_DEVICETREE = " \
+ ti/k3-am62p5-sk.dtb \
+"
+
+UBOOT_MACHINE = "am62px_evm_a53_defconfig"
diff --git a/meta-ti-bsp/conf/machine/include/am62pxx.inc b/meta-ti-bsp/conf/machine/include/am62pxx.inc
new file mode 100644
index 00000000..d61ad62b
--- /dev/null
+++ b/meta-ti-bsp/conf/machine/include/am62pxx.inc
@@ -0,0 +1,19 @@
+require conf/machine/include/k3.inc
+SOC_FAMILY:append = ":am62pxx"
+
+MACHINE_FEATURES += "screen gpu"
+
+require conf/machine/include/mesa-pvr.inc
+PREFERRED_PROVIDER_virtual/gpudriver ?= ""
+
+# Default tiboot3.bin on AM62Px is for HS-FS
+IMAGE_BOOT_FILES += "tiboot3-am62px-hs-fs-evm.bin"
+
+TFA_BOARD = "lite"
+TFA_K3_SYSTEM_SUSPEND = "1"
+
+OPTEEMACHINE = "k3-am62px"
+
+MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "cnm-wave-fw"
+
+SERIAL_CONSOLES = "115200;ttyS2"
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 a667d335..e35decee 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|am62axx"
+COMPATIBLE_MACHINE = "j721s2|j784s4|am62axx|am62pxx"
PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/meta-ti-bsp/recipes-bsp/ti-dm-fw/ti-dm-fw.bb b/meta-ti-bsp/recipes-bsp/ti-dm-fw/ti-dm-fw.bb
index 49638ee9..8a52a800 100644
--- a/meta-ti-bsp/recipes-bsp/ti-dm-fw/ti-dm-fw.bb
+++ b/meta-ti-bsp/recipes-bsp/ti-dm-fw/ti-dm-fw.bb
@@ -31,6 +31,7 @@ PLAT_SFX:am65xx = "am65xx"
PLAT_SFX:am64xx = "am64xx"
PLAT_SFX:am62xx = "am62xx"
PLAT_SFX:am62axx = "am62axx"
+PLAT_SFX:am62pxx = "am62pxx"
DM_FW_DIR = "ti-dm/${PLAT_SFX}"
@@ -47,6 +48,7 @@ DM_FW_LIST:am65xx = ""
DM_FW_LIST:am64xx = ""
DM_FW_LIST:am62xx = "${DM_FIRMWARE}"
DM_FW_LIST:am62axx = "${DM_FIRMWARE}"
+DM_FW_LIST:am62pxx = "${DM_FIRMWARE}"
do_install() {
# Sign the firmware
@@ -77,6 +79,7 @@ do_deploy() {
# Set up names for the firmwares
ALTERNATIVE:${PN}:am62xx = "am62-main-r5f0_0-fw"
+ALTERNATIVE:${PN}:am62pxx = "am62p-main-r5f0_0-fw"
ALTERNATIVE:${PN}:am62axx = "am62a-main-r5f0_0-fw"
ALTERNATIVE:${PN}:j721e = "j7-mcu-r5f0_0-fw"
ALTERNATIVE:${PN}:j7200 = "j7200-mcu-r5f0_0-fw"
@@ -85,6 +88,7 @@ ALTERNATIVE:${PN}:j784s4 = "j784s4-mcu-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"
+ALTERNATIVE_LINK_NAME[am62p-main-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/am62p-main-r5f0_0-fw"
ALTERNATIVE_LINK_NAME[am62a-main-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/am62a-main-r5f0_0-fw"
ALTERNATIVE_LINK_NAME[j7-mcu-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/j7-mcu-r5f0_0-fw"
ALTERNATIVE_LINK_NAME[j7200-mcu-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/j7200-mcu-r5f0_0-fw"
@@ -93,6 +97,7 @@ ALTERNATIVE_LINK_NAME[j784s4-mcu-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/j
# Create the firmware alternatives
ALTERNATIVE_TARGET[am62-main-r5f0_0-fw] = "${INSTALL_DM_FW_DIR}/${DM_FIRMWARE}"
+ALTERNATIVE_TARGET[am62p-main-r5f0_0-fw] = "${INSTALL_DM_FW_DIR}/${DM_FIRMWARE}"
ALTERNATIVE_TARGET[am62a-main-r5f0_0-fw] = "${INSTALL_DM_FW_DIR}/${DM_FIRMWARE}"
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}"
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 e1d442d3..b343d268 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
@@ -30,6 +30,7 @@ PLAT_SFX:j784s4 = "j784s4"
PLAT_SFX:am65xx = "am65xx"
PLAT_SFX:am64xx = "am64xx"
PLAT_SFX:am62xx = "am62xx"
+PLAT_SFX:am62pxx = "am62pxx"
PLAT_SFX:am62axx = "am62axx"
ETH_FW_DIR = "ti-eth/${PLAT_SFX}"
@@ -46,6 +47,7 @@ ETH_FW_LIST:j784s4 = "${ETH_FW}"
ETH_FW_LIST:am65xx = ""
ETH_FW_LIST:am64xx = ""
ETH_FW_LIST:am62xx = ""
+ETH_FW_LIST:am62pxx = ""
ETH_FW_LIST:am62axx = ""
do_install() {
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 80e0e8df..2f15c4fb 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
@@ -44,6 +44,7 @@ PLAT_SFX:am65xx = "am65xx"
PLAT_SFX:am64xx = "am64xx"
PLAT_SFX:am62xx = "am62xx"
PLAT_SFX:am62axx = "am62axx"
+PLAT_SFX:am62pxx = "am62pxx"
PACKAGECONFIG[atf] = "BL31=${STAGING_DIR_HOST}/firmware/bl31.bin,,trusted-firmware-a"
PACKAGECONFIG[optee] = "TEE=${STAGING_DIR_HOST}${nonarch_base_libdir}/firmware/bl32.bin,,optee-os"
@@ -56,6 +57,7 @@ PACKAGECONFIG:append:j721s2 = " dm"
PACKAGECONFIG:append:j784s4 = " dm"
PACKAGECONFIG:append:am62xx = " dm"
PACKAGECONFIG:append:am62axx = " dm"
+PACKAGECONFIG:append:am62pxx = " dm"
COMPATIBLE_MACHINE = "(ti-soc)"
diff --git a/meta-ti-bsp/recipes-security/optee/optee-os-ti.inc b/meta-ti-bsp/recipes-security/optee/optee-os-ti.inc
index 763dd1d5..91b66a36 100644
--- a/meta-ti-bsp/recipes-security/optee/optee-os-ti.inc
+++ b/meta-ti-bsp/recipes-security/optee/optee-os-ti.inc
@@ -7,6 +7,7 @@ inherit ti-secdev
EXTRA_OEMAKE:append:k3 = "${@ ' CFG_CONSOLE_UART='+ d.getVar('OPTEE_K3_USART') if d.getVar('OPTEE_K3_USART') else ''}"
EXTRA_OEMAKE:append:am62xx = " CFG_WITH_SOFTWARE_PRNG=y 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"
do_compile:append:k3() {
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 751b10d6..3e2e2ada 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
@@ -21,6 +21,7 @@ PLAT_SFX:am65xx = "am65xx"
PLAT_SFX:am64xx = "am64xx"
PLAT_SFX:am62xx = "am62xx"
PLAT_SFX:am62axx = "am62axx"
+PLAT_SFX:am62pxx = "am62pxx"
FILESEXTRAPATHS:prepend := "${METATIBASE}/recipes-bsp/ti-sci-fw/files/:"
require recipes-bsp/ti-linux-fw/ti-linux-fw.inc
@@ -56,6 +57,7 @@ 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: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}"
@@ -80,6 +82,13 @@ do_install:prepend:am62xx() {
)
}
+# Update the am62pxx ipc binaries to be consistent with other platforms
+do_install:prepend:am62pxx() {
+ ( cd ${S}/${IPC_FW_DIR}; \
+ ln -sf am62p-mcu-r5f0_0-fw ${MCU_2_0_FW}; \
+ )
+}
+
# Update the am62axx ipc binaries to be consistent with other platforms
do_install:prepend:am62axx() {
( cd ${S}/${IPC_FW_DIR}; \
@@ -122,6 +131,10 @@ ALTERNATIVE:${PN}:am62xx = "\
am62-main-r5f0_0-fw am62-main-r5f0_0-fw-sec \
"
+ALTERNATIVE:${PN}:am62pxx = "\
+ am62p-mcu-r5f0_0-fw am62p-mcu-r5f0_0-fw-sec \
+ "
+
ALTERNATIVE:${PN}:am62axx = "\
am62a-mcu-r5f0_0-fw am62a-mcu-r5f0_0-fw-sec \
am62a-c71_0-fw am62a-c71_0-fw-sec \
@@ -191,6 +204,9 @@ ALTERNATIVE_LINK_NAME[am62-mcu-m4f0_0-fw-sec] = "${nonarch_base_libdir}/firmware
ALTERNATIVE_LINK_NAME[am62-main-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/am62-main-r5f0_0-fw"
ALTERNATIVE_LINK_NAME[am62-main-r5f0_0-fw-sec] = "${nonarch_base_libdir}/firmware/am62-main-r5f0_0-fw-sec"
+ALTERNATIVE_LINK_NAME[am62p-mcu-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/am62p-mcu-r5f0_0-fw"
+ALTERNATIVE_LINK_NAME[am62p-mcu-r5f0_0-fw-sec] = "${nonarch_base_libdir}/firmware/am62p-mcu-r5f0_0-fw-sec"
+
ALTERNATIVE_LINK_NAME[am62a-mcu-r5f0_0-fw] = "${nonarch_base_libdir}/firmware/am62a-mcu-r5f0_0-fw"
ALTERNATIVE_LINK_NAME[am62a-mcu-r5f0_0-fw-sec] = "${nonarch_base_libdir}/firmware/am62a-mcu-r5f0_0-fw-sec"
ALTERNATIVE_LINK_NAME[am62a-c71_0-fw] = "${nonarch_base_libdir}/firmware/am62a-c71_0-fw"
@@ -281,6 +297,9 @@ ALTERNATIVE_TARGET[am62-mcu-m4f0_0-fw-sec] = "${INSTALL_IPC_FW_DIR}/${MCU_2_0_FW
ALTERNATIVE_TARGET[am62-main-r5f0_0-fw] = "${INSTALL_IPC_FW_DIR}/${MCU_2_0_FW}"
ALTERNATIVE_TARGET[am62-main-r5f0_0-fw-sec] = "${INSTALL_IPC_FW_DIR}/${MCU_2_0_FW}.signed"
+ALTERNATIVE_TARGET[am62p-mcu-r5f0_0-fw] = "${INSTALL_IPC_FW_DIR}/${MCU_2_0_FW}"
+ALTERNATIVE_TARGET[am62p-mcu-r5f0_0-fw-sec] = "${INSTALL_IPC_FW_DIR}/${MCU_2_0_FW}.signed"
+
ALTERNATIVE_TARGET[am62a-mcu-r5f0_0-fw] = "${INSTALL_IPC_FW_DIR}/${MCU_2_0_FW}"
ALTERNATIVE_TARGET[am62a-mcu-r5f0_0-fw-sec] = "${INSTALL_IPC_FW_DIR}/${MCU_2_0_FW}.signed"
ALTERNATIVE_TARGET[am62a-c71_0-fw] = "${INSTALL_IPC_FW_DIR}/${C7X_1_FW}"
--
2.17.1
next reply other threads:[~2023-10-26 22:39 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-26 22:39 Ryan Eatmon [this message]
2023-10-27 16:13 ` [meta-ti][master/kirkstone][PATCH] meta-ti-bsp: Add Support for am62pxx-evm Andrew Davis
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20231026223930.5086-1-reatmon@ti.com \
--to=reatmon@ti.com \
--cc=denys@konsulko.com \
--cc=meta-ti@lists.yoctoproject.org \
--cc=praneeth@ti.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).