I still would like to know what is better using a device tree than using a standard relocatable (common to all ARM) kernel and running a last linker command for each ARM configuration.
Anyway, if the bus cannot be queried for what it contains and at which address - that means that those address are constant and at some point the kernel has to know them.
So the same kernel with few relocations would be distributed to all ARMs targets, and each target would have to do a partial and final "ld" with a linker command file containning something like:
Each driver should check that the base address of its device is not null before trying to initialise itself.
If a higher level description is needed, a tool can be used to generate that linker command file.
Maybe there is something I am missing?
Posted Nov 11, 2010 11:39 UTC (Thu) by kronos (subscriber, #55879)
[Link]
You can add information about addresses and interrupts (and also device specific data) to the tree. There are example on http://devicetree.org
ELCE: Grant Likely on device trees
Posted Nov 11, 2010 12:16 UTC (Thu) by etienne (subscriber, #25256)
[Link]
Well, I do not see the problem of having:
serial_irq = 3;
network_irq = 4;
in the linker microcontroller-dependant-file,
and you can include explicit data in this file too: http://sourceware.org/binutils/docs-2.20/ld/Output-Sectio...
You could even include binary blob if that is your aim.