Device Tree Overlays in 6.18.1 kernel

I’ll check tomorrow. And just checked the main arch site, which is where most documentation is kept. And it doesn’t mention device trees. So I’m more tempted to just install all device tree stuff in your preferred place, and then push that approach on the main arch arm website. Only hassle is it takes something like three days to compile on my pocket beagle …

we can see how u-boot loads it too.. but yeah, i’d like to install it in their place, so things don’t go weird..

/boot/dtbs/
|-- AM3359-PWM012-res.dtbo
|-- am335x-baltos-ir2110.dtb
|-- am335x-baltos-ir3220.dtb
|-- am335x-baltos-ir5221.dtb
|-- am335x-base0033.dtb
|-- am335x-bone.dtb
|-- am335x-boneblack-wireless.dtb
|-- am335x-boneblack.dtb
|-- am335x-boneblue.dtb
|-- am335x-bonegreen-eco.dtb
|-- am335x-bonegreen-wireless.dtb
|-- am335x-bonegreen.dtb
|-- am335x-chiliboard.dtb
|-- am335x-cm-t335.dtb
|-- am335x-evm.dtb
|-- am335x-evmsk.dtb
|-- am335x-guardian.dtb
|-- am335x-icev2.dtb
|-- am335x-lxm.dtb
|-- am335x-moxa-uc-2101.dtb
|-- am335x-moxa-uc-8100-me-t.dtb
|-- am335x-myirtech-myd.dtb
|-- am335x-nano.dtb
|-- am335x-netcan-plus-1xx.dtb
|-- am335x-netcom-plus-2xx.dtb
|-- am335x-netcom-plus-8xx.dtb
|-- am335x-osd3358-sm-red.dtb
|-- am335x-pdu001.dtb
|-- am335x-pepper.dtb
|-- am335x-phycore-rdk.dtb
|-- am335x-pocketbeagle.dtb
|-- am335x-regor-rdk.dtb
|-- am335x-sancloud-bbe-extended-wifi.dtb
|-- am335x-sancloud-bbe-lite.dtb
|-- am335x-sancloud-bbe.dtb
|-- am335x-sbc-t335.dtb
|-- am335x-shc.dtb
|-- am335x-sl50.dtb
`-- am335x-wega-rdk.dtb

1 directory, 39 files

And overlays, Arch uses /boot/boot.txt follow by:

mkimage -A arm -O linux -T script -C none -n "U-Boot boot script" -d boot.txt boot.scr

And uboot loads that and does what is in that file for me:

# After modifying, run ./mkscr

if test -n ${distro_bootpart}; then setenv bootpart ${distro_bootpart}; else setenv bootpart 1; fi
part uuid ${devtype} ${devnum}:${bootpart} uuid

setenv bootargs "console=tty0 console=${console} root=PARTUUID=${uuid} rw rootwait"

if load ${devtype} ${devnum}:${bootpart} ${kernel_addr_r} /boot/zImage; then
  gpio set 54
  echo fdt: ${fdtfile}
  if load ${devtype} ${devnum}:${bootpart} ${fdt_addr_r} /boot/dtbs/${fdtfile}; then
    gpio set 55
    fdt addr ${fdt_addr_r}
    if load ${devtype} ${devnum}:${bootpart} 0x88060000 /lib/firmware/AM3359-PWM012.dtbo; then
      fdt resize ${filesize}
      fdt apply 0x88060000
      fdt resize
    fi;
    if load ${devtype} ${devnum}:${bootpart} ${ramdisk_addr_r} /boot/initramfs-linux.img; then
      gpio set 56
      bootz ${kernel_addr_r} ${ramdisk_addr_r}:${filesize} ${fdt_addr_r};
    else
      gpio set 56
      bootz ${kernel_addr_r} - ${fdt_addr_r};
    fi;
  fi;
fi

So I have to specify the full path to where the overlays are.

So Think I’ll change to your method. I’ll start the compile tomorrow …