fdt: Allow indicating a node is for U-Boot proper only

At present it is not possible to specify that a node should be used before
relocation (in U-Boot proper) without it also ending up in SPL and TPL
device trees. Add a new "u-boot,dm-pre-proper" boolean property for this.

Signed-off-by: Simon Glass <sjg@chromium.org>
lime2-spi
Simon Glass 6 years ago
parent a15a7aa47b
commit 06f94461a9
  1. 4
      doc/driver-model/README.txt
  2. 2
      drivers/core/ofnode.c

@ -837,7 +837,9 @@ well, if device tree is enabled there.
It is possible to limit this to specific relocation steps, by using It is possible to limit this to specific relocation steps, by using
the more specialized 'u-boot,dm-spl' and 'u-boot,dm-tpl' flags the more specialized 'u-boot,dm-spl' and 'u-boot,dm-tpl' flags
in the devicetree. in the device tree node. For U-Boot proper you can use 'u-boot,dm-pre-proper'
which means that it will be processed (and a driver bound) in U-Boot proper
prior to relocation, but will not be available in SPL or TPL.
Then post relocation we throw that away and re-init driver model again. Then post relocation we throw that away and re-init driver model again.
For drivers which require some sort of continuity between pre- and For drivers which require some sort of continuity between pre- and

@ -699,6 +699,8 @@ bool ofnode_pre_reloc(ofnode node)
{ {
if (ofnode_read_bool(node, "u-boot,dm-pre-reloc")) if (ofnode_read_bool(node, "u-boot,dm-pre-reloc"))
return true; return true;
if (ofnode_read_bool(node, "u-boot,dm-pre-proper"))
return true;
#ifdef CONFIG_TPL_BUILD #ifdef CONFIG_TPL_BUILD
if (ofnode_read_bool(node, "u-boot,dm-tpl")) if (ofnode_read_bool(node, "u-boot,dm-tpl"))

Loading…
Cancel
Save