This works fine but the user may want to use extlinux.conf to add their own overlays in addition to ours. After flashing we observe the dtb file in the rootfs in /boot/dtb/ is the dtb without any of our overlays and our overlays are missing from the rootfs /boot partition. How is the user supposed to add their own overlays to our dtb with preapplied overlays when the _with_odm_overlay.dtb is missing from the rootfs and any lives in the UEFI DTB? Is there a way to obtain the UEFI DTB from userspace?
TIMEOUT 30
DEFAULT primary
MENU TITLE L4T boot options
LABEL primary
MENU LABEL primary kernel
LINUX /boot/Image
INITRD /boot/initrd
APPEND ${cbootargs} root=PARTUUID=37e6d400-305d-4597-b251-2316748865c5 rw rootwait rootfstype=ext4 mminit_loglevel=4 console=ttyTCU0,115200 firmware_class.path=/etc/firmware fbcon=map:0 nospectre_bhb video=efifb:off console=tty0
# When testing a custom kernel, it is recommended that you create a backup of
# the original kernel and add a new entry to this file so that the device can
# fallback to the original kernel. To do this:
#
# 1, Make a backup of the original kernel
# sudo cp /boot/Image /boot/Image.backup
#
# 2, Copy your custom kernel into /boot/Image
#
# 3, Uncomment below menu setting lines for the original kernel
#
# 4, Reboot
# LABEL backup
# MENU LABEL backup kernel
# LINUX /boot/Image.backup
# INITRD /boot/initrd
# APPEND ${cbootargs}
The overlay DTB specified here will be applied during flash.
Please decompile the DTB from /boot/dtb/kernel_xxxx.dtb to check if your custom configurations are included.
That is what I already told you from my initial message. The decompressed dtb from that path does NOT have the custom configurations. However the actively running DTB (ie: by checking /sys/firmware/devicetree/base) does have the customizations applied. You should be able to confirm this issue yourself with any overlay.
yes adding overlays works (but is isn’t clear where our custom overlays that we flashed live and what priority they have compared to those in extlinux.conf) but it must be done manually for us in extlinux.conf instead of using the Jetson IO fdtoverlay tool because that tool requires that the model name matches an existing device tree in /boot/dtb/ which ours does not because our branding overlays changes the model.
Sorry that maybe I have too many topics everyday to get confused.
I know that they are not applied in your case.
You can try to enable debug UEFI log to check if they are loaded during boot up.
Oe you can just use OVERLAYS option in extlinux.conf to apply your custom overlay dtb.