Repository: torizon/meta-toradex-torizon
Pull request #248: Add support for TI's AM62L EVM
Author: login: EdTheBearded
Created: 2025-03-10T13:52:59Z | Merged: 2025-03-11T22:51:02Z

Also a minor refactor on the AM62 machine includes, to avoid duplicating code, fix a potential issue on `bootcommand`, where we were assuming default addresses.
And added the AM62L entry in the README file, as well as an alternate flashing method.

Please check the commit messages for more info



Diff:
diff --git a/README.md b/README.md
index b84cda5a..da0cef11 100644
--- a/README.md
+++ b/README.md
@@ -34,7 +34,7 @@ Start building one of the available Torizon images:
 
 Below you'll find documentation for some devices to which Common Torizon was already ported, with more details on how to fetch, setup and build them.
 
-* [Texas Instruments AM62x/AM62P SK EVM](./docs/README-ti.md)
+* [Texas Instruments AM62x/AM62L/AM62P SK EVM](./docs/README-ti.md)
 * [Toradex i.MX95 Verdin EVK](./docs/README-imx95.md)
 * [Renesas RZ/V2L EVKIT](./docs/README-rzv2l.md)
 * [Intel x86](./docs/README-x86.md)
diff --git a/conf/distro/include/common-torizon.inc b/conf/distro/include/common-torizon.inc
index 6d906306..40f585c2 100644
--- a/conf/distro/include/common-torizon.inc
+++ b/conf/distro/include/common-torizon.inc
@@ -14,6 +14,8 @@ BBMASK += " \
 
 OSTREE_DEPLOY_DEVICETREE = "0"
 
+hostname:pn-base-files ?= "${MACHINE}"
+
 require conf/distro/include/versioning.inc
 
 SDK_VENDOR = "-tznsdk"
diff --git a/conf/machine/include/am62lxx-evm.inc b/conf/machine/include/am62lxx-evm.inc
new file mode 100644
index 00000000..de8bdc68
--- /dev/null
+++ b/conf/machine/include/am62lxx-evm.inc
@@ -0,0 +1,15 @@
+require am62xx.inc
+
+TORIZON_TTY_DEVICE = "ttyS0,115200"
+
+UENV_EXTRA_CONFIGS = "if test "${board_name}" = "am62lx" -a "${fdtfile}" = "ti/k3-am62l3-evm.dtb"; then env set fdtfile k3-am62l3-evm.dtb; fi"
+
+OSTREE_DEVICETREE = "\
+    ti/k3-am62l3-evm.dtb \
+    ti/k3-am62l3-evm-lpmdemo.dtb \
+    ti/k3-am62l3-evm-m2-cc3351.dtbo \
+    ti/k3-am62l3-evm-pwm.dtbo \
+    ti/k3-am62l3-evm-dsi-rpi-7inch-panel.dtbo \
+"
+
+IMAGE_BOOT_FILES:append = " tiboot3-am62lx-hs-fs-evm.bin"
diff --git a/conf/machine/include/am62pxx-evm.inc b/conf/machine/include/am62pxx-evm.inc
index 3c680ba6..be565a8f 100644
--- a/conf/machine/include/am62pxx-evm.inc
+++ b/conf/machine/include/am62pxx-evm.inc
@@ -1,11 +1,7 @@
-WKS_FILE:sota:am62pxx-evm = "torizon-am62xx-sota.wks"
-
-OSTREE_KERNEL_ARGS:sota:am62pxx-evm = "quiet logo.nologo vt.global_cursor_default=0 plymouth.ignore-serial-consoles splash fbcon=map:10 console=ttyS2,115200 root=LABEL=otaroot rootfstype=ext4"
+require am62xx.inc
 
 CORE_IMAGE_BASE_INSTALL:append:am62pxx = " ti-img-rogue-driver"
 
-UBOOT_BOOT_PARTITION_NUMBER:am62pxx-evm = "2"
-OTAROOT_PARTITION_NUMBER:am62pxx-evm = "2"
 UENV_EXTRA_CONFIGS:am62pxx-evm = "if test "${board_name}" = "am62px" -a "${fdtfile}" = "ti/k3-am62p5-sk.dtb"; then env set fdtfile k3-am62p5-sk.dtb; echo DONE; fi"
 
 # If there are any DT overlays in KERNEL_DEVICETREE that should be automatically applied during
@@ -17,8 +13,4 @@ UENV_EXTRA_CONFIGS:am62pxx-evm = "if test "${board_name}" = "am62px" -a "${fdtfi
 #     k3-am62x-sk-hdmi-audio.dtbo \
 # "
 
-IMAGE_FSTYPES:append = " wic"
-IMAGE_BOOT_FILES:append:am62pxx-evm = " tispl.bin u-boot.img tiboot3.bin tiboot3-am62px-hs-fs-evm.bin"
-
-PREFERRED_PROVIDER_virtual/dtb = ""
-hostname:pn-base-files = "am62pxx-evm"
+IMAGE_BOOT_FILES:append:am62pxx-evm = " tiboot3-am62px-hs-fs-evm.bin"
diff --git a/conf/machine/include/am62xx-evm.inc b/conf/machine/include/am62xx-evm.inc
index ad396274..483283d7 100644
--- a/conf/machine/include/am62xx-evm.inc
+++ b/conf/machine/include/am62xx-evm.inc
@@ -1,12 +1,8 @@
-WKS_FILE:sota:am62xx-evm = "torizon-am62xx-sota.wks"
+require am62xx.inc
 
-OSTREE_KERNEL_ARGS:sota:am62xx-evm = "quiet logo.nologo vt.global_cursor_default=0 plymouth.ignore-serial-consoles splash fbcon=map:10 console=ttyS2,115200 root=LABEL=otaroot rootfstype=ext4"
+UENV_EXTRA_CONFIGS = "if test "${board_name}" = "am62b_p1_skevm" -a "${fdtfile}" = "ti/k3-am625-sk.dtb"; then env set fdtfile k3-am625-sk.dtb; fi"
 
-UBOOT_BOOT_PARTITION_NUMBER:am62xx-evm = "2"
-OTAROOT_PARTITION_NUMBER:am62xx-evm = "2"
-UENV_EXTRA_CONFIGS:am62xx-evm = "if test "${board_name}" = "am62b_p1_skevm"; then if test "${fdtfile}" = "ti/k3-am625-sk.dtb"; then env set fdtfile k3-am625-sk.dtb; fi; fi"
-
-KERNEL_DEVICETREE:am62xx-evm = " \
+KERNEL_DEVICETREE = " \
     ti/k3-am625-sk.dtb \
     ti/k3-am62x-sk-csi2-imx219.dtbo \
     ti/k3-am62x-sk-csi2-ov5640.dtbo \
@@ -14,15 +10,11 @@ KERNEL_DEVICETREE:am62xx-evm = " \
     ti/k3-am62x-sk-hdmi-audio.dtbo \
 "
 # Overlays in KERNEL_DEVICETREE to be applied during boot time
-KERNEL_DEVICETREE_OVERLAY_BOOT:am62xx-evm = " \
+KERNEL_DEVICETREE_OVERLAY_BOOT = " \
     k3-am62x-sk-csi2-imx219.dtbo \
     k3-am62x-sk-csi2-ov5640.dtbo \
     k3-am62x-sk-csi2-tevi-ov5640.dtbo \
     k3-am62x-sk-hdmi-audio.dtbo \
 "
 
-IMAGE_FSTYPES:append = " wic"
-IMAGE_BOOT_FILES:append:am62xx-evm = " tispl.bin u-boot.img tiboot3.bin tiboot3-am62x-hs-fs-evm.bin tiboot3-am62x-gp-evm.bin tiboot3-am62x-hs-evm.bin"
-
-PREFERRED_PROVIDER_virtual/dtb = ""
-hostname:pn-base-files = "am62xx-evm"
+IMAGE_BOOT_FILES:append = " tiboot3-am62x-hs-fs-evm.bin tiboot3-am62x-gp-evm.bin tiboot3-am62x-hs-evm.bin"
diff --git a/conf/machine/include/am62xx.inc b/conf/machine/include/am62xx.inc
new file mode 100644
index 00000000..3fae963d
--- /dev/null
+++ b/conf/machine/include/am62xx.inc
@@ -0,0 +1,14 @@
+# Base configurations for TI's BSP AM62 devices
+
+WKS_FILE:sota = "torizon-am62xx-sota.wks"
+
+TORIZON_TTY_DEVICE ?= "ttyS2,115200"
+OSTREE_KERNEL_ARGS:sota = "quiet logo.nologo vt.global_cursor_default=0 plymouth.ignore-serial-consoles splash fbcon=map:10 console=${TORIZON_TTY_DEVICE} root=LABEL=otaroot rootfstype=ext4"
+
+UBOOT_BOOT_PARTITION_NUMBER = "2"
+OTAROOT_PARTITION_NUMBER = "2"
+
+IMAGE_FSTYPES:append = " wic"
+IMAGE_BOOT_FILES:append = " tispl.bin u-boot.img tiboot3.bin"
+
+PREFERRED_PROVIDER_virtual/dtb = ""
\ No newline at end of file
diff --git a/docs/README-ti.md b/docs/README-ti.md
index 569b993c..c652caa4 100644
--- a/docs/README-ti.md
+++ b/docs/README-ti.md
@@ -40,6 +40,17 @@ $ sudo dd if=<image-name>.wic of=/dev/<sdcard-device-name> bs=4M status=progress
 $ picocom -b 115200 /dev/ttyUSB0
 ```
 
+Alternate way to flash the SD Card
+======
+With the generated `.wic` file, you could use bmaptool. If you don't have it installed, you could get it by running `sudo apt install bmap-tools`.
+But first, run `lsblk` and make sure that you SD Card is not mounted. If so, please unmount all partitions beforehand.
+```bash
+$ bmaptool create -o torizon.bmap torizon.wic
+$ sudo bmaptool copy --bmap torizon.bmap torizon.wic /dev/sdx
+
+```
+Where you should replace `/dev/sdx` with the SD Card you want to flash.
+
 ---
 
 Manual Setup
diff --git a/dynamic-layers/meta-ti-bsp/recipes-bsp/u-boot/am62/bootcommand.cfg b/dynamic-layers/meta-ti-bsp/recipes-bsp/u-boot/am62/bootcommand.cfg
index 134196e5..c494485f 100644
--- a/dynamic-layers/meta-ti-bsp/recipes-bsp/u-boot/am62/bootcommand.cfg
+++ b/dynamic-layers/meta-ti-bsp/recipes-bsp/u-boot/am62/bootcommand.cfg
@@ -1,3 +1,3 @@
 CONFIG_LEGACY_IMAGE_FORMAT=y
 CONFIG_USE_BOOTCOMMAND=y
-CONFIG_BOOTCOMMAND="setenv devtype mmc; setenv devnum 1; ext4load ${devtype} ${devnum}:2 ${loadaddr} /boot.scr && source"
+CONFIG_BOOTCOMMAND="setenv devtype mmc; setenv devnum 1; ext4load ${devtype} ${devnum}:2 ${loadaddr} /boot.scr && source ${loadaddr}"
diff --git a/recipes-bsp/u-boot/u-boot-rollback/qemuarm64/bootcommand.cfg b/recipes-bsp/u-boot/u-boot-rollback/qemuarm64/bootcommand.cfg
index e8075a60..4491c50b 100644
--- a/recipes-bsp/u-boot/u-boot-rollback/qemuarm64/bootcommand.cfg
+++ b/recipes-bsp/u-boot/u-boot-rollback/qemuarm64/bootcommand.cfg
@@ -10,4 +10,4 @@ CONFIG_SYS_BOOTM_LEN=0x4000000
 # CONFIG_MTD is not set
 # CONFIG_MTD_NOR_FLASH is not set
 CONFIG_USE_BOOTCOMMAND=y
-CONFIG_BOOTCOMMAND="setenv devtype virtio; setenv devnum 0; ext4load ${devtype} ${devnum}:1 ${loadaddr} /boot.scr; source"
+CONFIG_BOOTCOMMAND="setenv devtype virtio; setenv devnum 0; ext4load ${devtype} ${devnum}:1 ${loadaddr} /boot.scr && source ${loadaddr}"
diff --git a/scripts/setup-environment b/scripts/setup-environment
index 1d5cfc41..34ddda3a 100755
--- a/scripts/setup-environment
+++ b/scripts/setup-environment
@@ -63,8 +63,9 @@ _TDX_TORADEX_MACHINES=("apalis-imx6"          "meta-freescale-3rdparty" \
                   "verdin-imx8mm"        "meta-toradex-nxp" \
                   "verdin-imx8mp"        "meta-toradex")
 
-_TDX_COMMON_MACHINES=("am62pxx-evm"    "meta-ti-bsp" \
-                 "am62xx-evm"    "meta-ti-bsp" \
+_TDX_COMMON_MACHINES=("am62lxx-evm"   "meta-ti-bsp" \
+                 "am62pxx-evm"        "meta-ti-bsp" \
+                 "am62xx-evm"         "meta-ti-bsp" \
                  "intel-corei7-64"    "meta-intel" \
                  "imx95-19x19-verdin" "meta-imx" \
                  "smarc-rzv2l"        "rz-community-bsp")
@@ -140,7 +141,7 @@ if echo "${_TDX_TORADEX_MACHINES[@]}" | grep -q "$MACHINE"; then
 else
     # Common Torizon machines
     case "${MACHINE}" in
-        am62xx-evm|am62pxx-evm)
+        am62xx-evm|am62pxx-evm|am62lxx-evm)
             # for TI boards there's only common-torizon as possible DISTRO
             MACHINE="${MACHINE}" DISTRO="common-torizon" . ${_TDX_SCRIPTS_PATH}/setup-environment-ti $@
         ;;


Reviews:
user: login: rborn-tx
body: Nice addition and refactoring!
state: DISMISSED
author_association: COLLABORATOR
submitted_at: 2025-03-10T16:38:16Z
user: login: lucas-akira
body: One thing I think it's missing is to add the new machine to the `setup-environment` script.
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-10T18:13:25Z
user: login: EdTheBearded
state: COMMENTED
author_association: COLLABORATOR
submitted_at: 2025-03-11T12:44:31Z
user: login: EdTheBearded
state: COMMENTED
author_association: COLLABORATOR
submitted_at: 2025-03-11T12:44:39Z
user: login: EdTheBearded
state: COMMENTED
author_association: COLLABORATOR
submitted_at: 2025-03-11T12:47:10Z
user: login: EdTheBearded
state: COMMENTED
author_association: COLLABORATOR
submitted_at: 2025-03-11T16:47:28Z
user: login: lucas-akira
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-11T19:55:34Z
user: login: lucas-akira
state: APPROVED
author_association: CONTRIBUTOR
submitted_at: 2025-03-11T20:25:16Z
user: login: rborn-tx
state: APPROVED
author_association: COLLABORATOR
submitted_at: 2025-03-11T21:47:07Z
user: login: jsrc27
state: APPROVED
author_association: COLLABORATOR
submitted_at: 2025-03-11T22:50:53Z

Review comments:
diff_hunk: @@ -1,28 +1,20 @@
-WKS_FILE:sota:am62xx-evm = "torizon-am62xx-sota.wks"
+require am62xx.inc
 
-OSTREE_KERNEL_ARGS:sota:am62xx-evm = "quiet logo.nologo vt.global_cursor_default=0 plymouth.ignore-serial-consoles splash fbcon=map:10 console=ttyS2,115200 root=LABEL=otaroot rootfstype=ext4"
+UENV_EXTRA_CONFIGS = "if test "${board_name}" = "am62b_p1_skevm"; then if test "${fdtfile}" = "ti/k3-am625-sk.dtb"; then env set fdtfile k3-am625-sk.dtb; fi; fi"
path: conf/machine/include/am62xx-evm.inc
user: login: lucas-akira
body: As part of this refactoring we could replace the nested if with just one, as done for the `am62pxx-evm`.
created_at: 2025-03-10T17:23:01Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,23 @@
+require am62xx.inc
+
+TORIZON_TTY_DEVICE = "ttyS0,115200"
+
+UENV_EXTRA_CONFIGS = "if test "${board_name}" = "am62lx"; then if test "${fdtfile}" = "ti/k3-am62l3-evm.dtb"; then env set fdtfile k3-am62l3-evm.dtb; fi; fi"
path: conf/machine/include/am62lxx-evm.inc
user: login: lucas-akira
body: We could apply just one if instead of two nested ones, like done for the `am62pxx-evm`.
created_at: 2025-03-10T17:46:24Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,23 @@
+require am62xx.inc
+
+TORIZON_TTY_DEVICE = "ttyS0,115200"
+
+UENV_EXTRA_CONFIGS = "if test "${board_name}" = "am62lx"; then if test "${fdtfile}" = "ti/k3-am62l3-evm.dtb"; then env set fdtfile k3-am62l3-evm.dtb; fi; fi"
+
+OSTREE_DEVICETREE = "\
+    ti/k3-am62l3-evm.dtb \
+    ti/k3-am62l3-evm-lpmdemo.dtb \
+    ti/k3-am62l3-evm-m2-cc3351.dtbo \
+    ti/k3-am62l3-evm-pwm.dtbo \
+    ti/k3-am62l3-evm-dsi-rpi-7inch-panel.dtbo \
+"
+
+KERNEL_DEVICETREE = "\
+    ti/k3-am62l3-evm.dtb \
+    ti/k3-am62l3-evm-lpmdemo.dtb \
+    ti/k3-am62l3-evm-m2-cc3351.dtbo \
+    ti/k3-am62l3-evm-pwm.dtbo \
+    ti/k3-am62l3-evm-dsi-rpi-7inch-panel.dtbo \
+"
path: conf/machine/include/am62lxx-evm.inc
user: login: lucas-akira
body: Just to confirm: You're directly setting `KERNEL_DEVICETREE` here because apparently in the `meta-ti-bsp` layer it is being set to an empty string, correct?

`OSTREE_DEVICETREE` has a weak assignment to `KERNEL_DEVICETREE` in `meta-updater`, `sota.bbclass`:
```
OSTREE_DEVICETREE ??= "${KERNEL_DEVICETREE}"
```
Do we need to directly set `OSTREE_DEVICETREE` here?
created_at: 2025-03-10T18:08:24Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,15 @@
+# Base configurations for TI's BSP AM62 devices
+
+WKS_FILE:sota = "torizon-am62xx-sota.wks"
+
+TORIZON_TTY_DEVICE ?= "ttyS2,115200"
+OSTREE_KERNEL_ARGS:sota = "quiet logo.nologo vt.global_cursor_default=0 plymouth.ignore-serial-consoles splash fbcon=map:10 console=${TORIZON_TTY_DEVICE} root=LABEL=otaroot rootfstype=ext4"
+
+UBOOT_BOOT_PARTITION_NUMBER = "2"
+OTAROOT_PARTITION_NUMBER = "2"
+UENV_EXTRA_CONFIGS = "if test "${board_name}" = "am62b_p1_skevm"; then if test "${fdtfile}" = "ti/k3-am625-sk.dtb"; then env set fdtfile k3-am625-sk.dtb; fi; fi"
path: conf/machine/include/am62xx.inc
user: login: lucas-akira
body: Same thing about replacing the nested if.
created_at: 2025-03-10T18:10:00Z
author_association: CONTRIBUTOR
diff_hunk: @@ -1,28 +1,20 @@
-WKS_FILE:sota:am62xx-evm = "torizon-am62xx-sota.wks"
+require am62xx.inc
 
-OSTREE_KERNEL_ARGS:sota:am62xx-evm = "quiet logo.nologo vt.global_cursor_default=0 plymouth.ignore-serial-consoles splash fbcon=map:10 console=ttyS2,115200 root=LABEL=otaroot rootfstype=ext4"
+UENV_EXTRA_CONFIGS = "if test "${board_name}" = "am62b_p1_skevm"; then if test "${fdtfile}" = "ti/k3-am625-sk.dtb"; then env set fdtfile k3-am625-sk.dtb; fi; fi"
path: conf/machine/include/am62xx-evm.inc
user: login: EdTheBearded
body: Awesome, I've fixed this for L and refactored AM62!
created_at: 2025-03-11T12:44:31Z
author_association: COLLABORATOR
diff_hunk: @@ -0,0 +1,23 @@
+require am62xx.inc
+
+TORIZON_TTY_DEVICE = "ttyS0,115200"
+
+UENV_EXTRA_CONFIGS = "if test "${board_name}" = "am62lx"; then if test "${fdtfile}" = "ti/k3-am62l3-evm.dtb"; then env set fdtfile k3-am62l3-evm.dtb; fi; fi"
path: conf/machine/include/am62lxx-evm.inc
user: login: EdTheBearded
body: Done.
created_at: 2025-03-11T12:44:39Z
author_association: COLLABORATOR
diff_hunk: @@ -0,0 +1,23 @@
+require am62xx.inc
+
+TORIZON_TTY_DEVICE = "ttyS0,115200"
+
+UENV_EXTRA_CONFIGS = "if test "${board_name}" = "am62lx"; then if test "${fdtfile}" = "ti/k3-am62l3-evm.dtb"; then env set fdtfile k3-am62l3-evm.dtb; fi; fi"
+
+OSTREE_DEVICETREE = "\
+    ti/k3-am62l3-evm.dtb \
+    ti/k3-am62l3-evm-lpmdemo.dtb \
+    ti/k3-am62l3-evm-m2-cc3351.dtbo \
+    ti/k3-am62l3-evm-pwm.dtbo \
+    ti/k3-am62l3-evm-dsi-rpi-7inch-panel.dtbo \
+"
+
+KERNEL_DEVICETREE = "\
+    ti/k3-am62l3-evm.dtb \
+    ti/k3-am62l3-evm-lpmdemo.dtb \
+    ti/k3-am62l3-evm-m2-cc3351.dtbo \
+    ti/k3-am62l3-evm-pwm.dtbo \
+    ti/k3-am62l3-evm-dsi-rpi-7inch-panel.dtbo \
+"
path: conf/machine/include/am62lxx-evm.inc
user: login: EdTheBearded
body: This is a bit weird. `KERNEL_DEVICETREE` is required, otherwise there'll be no .dtb or .dtbo in the final image!
Even though it is populated initially on TI's recipe.

And now that you ask, I never tried without `OSTREE_DEVICETREE`, maybe we could have it removed. Let me check this quickly and I'll either remove it or update this thread!
created_at: 2025-03-11T12:47:10Z
author_association: COLLABORATOR
diff_hunk: @@ -0,0 +1,23 @@
+require am62xx.inc
+
+TORIZON_TTY_DEVICE = "ttyS0,115200"
+
+UENV_EXTRA_CONFIGS = "if test "${board_name}" = "am62lx"; then if test "${fdtfile}" = "ti/k3-am62l3-evm.dtb"; then env set fdtfile k3-am62l3-evm.dtb; fi; fi"
+
+OSTREE_DEVICETREE = "\
+    ti/k3-am62l3-evm.dtb \
+    ti/k3-am62l3-evm-lpmdemo.dtb \
+    ti/k3-am62l3-evm-m2-cc3351.dtbo \
+    ti/k3-am62l3-evm-pwm.dtbo \
+    ti/k3-am62l3-evm-dsi-rpi-7inch-panel.dtbo \
+"
+
+KERNEL_DEVICETREE = "\
+    ti/k3-am62l3-evm.dtb \
+    ti/k3-am62l3-evm-lpmdemo.dtb \
+    ti/k3-am62l3-evm-m2-cc3351.dtbo \
+    ti/k3-am62l3-evm-pwm.dtbo \
+    ti/k3-am62l3-evm-dsi-rpi-7inch-panel.dtbo \
+"
path: conf/machine/include/am62lxx-evm.inc
user: login: EdTheBearded
body: In the end we could go without `KERNEL_DEVICETREE`, so I've already submitted the change.
created_at: 2025-03-11T16:47:28Z
author_association: COLLABORATOR
diff_hunk: @@ -0,0 +1,23 @@
+require am62xx.inc
+
+TORIZON_TTY_DEVICE = "ttyS0,115200"
+
+UENV_EXTRA_CONFIGS = "if test "${board_name}" = "am62lx"; then if test "${fdtfile}" = "ti/k3-am62l3-evm.dtb"; then env set fdtfile k3-am62l3-evm.dtb; fi; fi"
+
+OSTREE_DEVICETREE = "\
+    ti/k3-am62l3-evm.dtb \
+    ti/k3-am62l3-evm-lpmdemo.dtb \
+    ti/k3-am62l3-evm-m2-cc3351.dtbo \
+    ti/k3-am62l3-evm-pwm.dtbo \
+    ti/k3-am62l3-evm-dsi-rpi-7inch-panel.dtbo \
+"
+
+KERNEL_DEVICETREE = "\
+    ti/k3-am62l3-evm.dtb \
+    ti/k3-am62l3-evm-lpmdemo.dtb \
+    ti/k3-am62l3-evm-m2-cc3351.dtbo \
+    ti/k3-am62l3-evm-pwm.dtbo \
+    ti/k3-am62l3-evm-dsi-rpi-7inch-panel.dtbo \
+"
path: conf/machine/include/am62lxx-evm.inc
user: login: lucas-akira
body: So after rechecking `meta-ti-bsp` I see that the layer automatically searches for device trees and overlays in the kernel source if `KERNEL_DEVICETREE_PREFIX` is defined, so no need to define `KERNEL_DEVICETREE` in this case.

And since `KERNEL_DEVICETREE` isn't defined `OSTREE_DEVICETREE` needs to be directly set. OK, makes sense to me.
created_at: 2025-03-11T19:55:34Z
author_association: CONTRIBUTOR

PR comments:
user: login: EdTheBearded
created_at: 2025-03-10T13:53:33Z
body: Tagging @lucas-akira, since I've refactored the machines he worked with.
author_association: COLLABORATOR
user: login: EdTheBearded
created_at: 2025-03-11T12:43:56Z
body: > One thing I think it's missing is to add the new machine to the `setup-environment` script.

Ohm you're right!!!!
I've submitted a new commit adding the machine. Thanks!
author_association: COLLABORATOR