Opdenacker: Using Device Tree Overlays, example on BeagleBone boards
For a given CPU architecture (ARM, PowerPC, etc), such a description allows to have a unique kernel supporting many different systems with distinct Systems on a Chip. The compiled Device Tree (DTB: Device Tree Binary), passed to the kernel by the bootloader at boot time, lets the kernel know which SoC and devices to initialize. Therefore, when you create a new board, and want to use a standard GNU/Linux distribution on it, all you have to do is create a new Device Tree describing your new hardware, compile it, and boot the distribution’s kernel with it. You don’t need to recompile that kernel, at least when it supports your SoC and the devices on your board.[...] However, this is still an inconvenient solution. Any time you plug in a new device or an expansion board, or want to tweak other settings, you have to rebuild and update the full Device Tree for your board. What if you could prepare Device Tree fragments for each change to make, compile them once for all, and then, when you boot your device, load the main Device Tree and only the fragments you need, without having anything else to recompile?
Posted Feb 15, 2022 20:31 UTC (Tue)
by martin.langhoff (subscriber, #61417)
[Link]
And I am pretty sure we had something wired up in the initramfs so we could load a DT overlay from a file in Linux. You'd put in in your /boot partition. But can't find the docs right now.
Posted Feb 16, 2022 9:12 UTC (Wed)
by michaelo (subscriber, #23907)
[Link]
Your comments are welcome there too.
Posted Feb 16, 2022 10:17 UTC (Wed)
by pbonzini (subscriber, #60935)
[Link]
Opdenacker: Using Device Tree Overlays, example on BeagleBone boards
Opdenacker: Using Device Tree Overlays, example on BeagleBone boards
https://beagleboard.org/blog/2022-02-15-using-device-tree...
Opdenacker: Using Device Tree Overlays, example on BeagleBone boards