dm: core: Introduce support for multiple trees
authorSimon Glass <sjg@chromium.org>
Sat, 30 Jul 2022 21:52:08 +0000 (15:52 -0600)
committerTom Rini <trini@konsulko.com>
Fri, 12 Aug 2022 12:14:23 +0000 (08:14 -0400)
commit331048471dee5c1d9cede54382256e6cfaee2370
treed12f08911b3f33b1da5ec9970ee1995aef23e6fe
parent72b338aa2cd4afff8e92ab28199bc2db073cfea7
dm: core: Introduce support for multiple trees

At present ofnode only works with a single device tree, for the most part.
This is the control FDT used by U-Boot.

When booting an OS we may obtain a different device tree and want to
modify it. Add some initial support for this into the ofnode API.

Note that we don't permit aliases in this other device tree, since the
of_access implementation maintains a list of aliases collected at
start-up. Also, we don't need aliases to do fixups in the other FDT. So
make sure that flat tree and live tree processing are consistent in this
area.

Signed-off-by: Simon Glass <sjg@chromium.org>
doc/develop/driver-model/livetree.rst
drivers/core/of_access.c
drivers/core/ofnode.c
include/dm/of_access.h
include/dm/ofnode.h
include/dm/ofnode_decl.h
include/of_live.h
lib/of_live.c
test/dm/ofnode.c