[PATCH 1/2] of: Add for_each_compatible_node_from iterator
tpiepho at kymetacorp.com
Tue Jan 5 10:58:01 PST 2016
On Tue, 2016-01-05 at 08:58 +0100, Sascha Hauer wrote:
> On Mon, Jan 04, 2016 at 07:07:27PM +0000, Trent Piepho wrote:
> > Couldn't one also use the of fixup system to modify the barebox DT? In
> > order to support multiple board variants, I added DT nodes that specify
> > what nodes should be enabled and/or disabled for different board
> > versions. An OF fixup applies this to the Linux DT. I haven't had to
> > modify the barebox DT for different boards but anticipate that happening
> > for the next board and I was planning to use the same system.
> I think you don't need the fixup system to accomplish that. Just hook up
> to an initcall early enough and modify the barebox device tree. It
> shouldn't be necessary to register a callback first and then wait for
> its execution.
My thought was that the fixup already registered for the Linux device
tree would also cover the barebox tree, including things like oftree -l
to load a new one. Calling the fixup function from an initcall wouldn't
get that. I guess I'll see what happens when I need that feature.
> Are you aware of device tree overlays? We planned to merge support for
> them into barebox once the official device tree compiler supports them.
> Unfortunately this hasn't happened yet.
I thought of that, and also using include files and generating a bunch
of device trees, but decided against it. It would be a lot of work to
add support for generating multiple device trees into the kernel build
system and buildroot which is driving everything. And then you have a
pile of device tree/overlay files to keep track of. And barebox has to
figure out which one to load for the kernel.
So I made a system where everything is supported by one device tree.
I also added support for specifying a tree to boot barebox with, hence
my patches for arm boot calling convention, but decided having the
xloader find a device tree fragment and pass it to the main barebox was
going to be too much of a pain. Thus the one tree to rule them all
More information about the barebox