I am trying to understand linux kernel for particular arm chipset I have read some documentation and more or less understand what are dts, dtsi and dtb files It would be a really useful.
@dtb_d2 β’ Threads, Say more
There are some good documents in that package that will help you better understand device trees in general
It's pretty easy to compile (and disassemble) device trees
Just want to update this with 2 years more experience on the subject The dts files in the linux repository are a mixture of dts and c preprocessor directives (#include, #define, etc.) So when the original dtb is compiled, the preprocessor links to the referenced files to create a pure dts file Dtc converts the single dts file into a dtb file
So if you want to modify a kernel dts file and. Is it possible to dynamically insert the dtb (after compiling it using dtc compiler) and test the driver (dynamically loadable) For statically building dtb is there any kconfig for the dtb files which i have to take care of apart from the device driver's kconfig. For sure, this dev cycle time is an order of magnitude greater than it would be just making/compiling the dtb directly, but i'd wager that for most of us, device tree modification is infrequent enough as to make this inefficiency acceptible.
This was confusing to me because i was expecting a linux kernel facility for doing this.
I'm trying to learn how device tree works