[PATCH v5 04/11] dm: treewide: Complete migration to new driver model schema

Simon Glass sjg at chromium.org
Mon Feb 13 16:56:34 CET 2023


Update various build and test components to use the new schema.

Signed-off-by: Simon Glass <sjg at chromium.org>
---

(no changes since v1)

 drivers/core/ofnode.c            | 10 +++++-----
 drivers/video/video-uclass.c     |  4 ++--
 dts/Kconfig                      |  2 +-
 include/dm/device.h              |  2 +-
 include/dm/ofnode.h              | 10 +++++-----
 test/dm/test-fdt.c               |  2 +-
 test/py/tests/test_ofplatdata.py |  8 ++++----
 tools/binman/binman.rst          |  3 +--
 tools/dtoc/test_fdt.py           |  8 ++++----
 9 files changed, 24 insertions(+), 25 deletions(-)

diff --git a/drivers/core/ofnode.c b/drivers/core/ofnode.c
index 5fdac2b6638..f49ee493d3c 100644
--- a/drivers/core/ofnode.c
+++ b/drivers/core/ofnode.c
@@ -1312,22 +1312,22 @@ bool ofnode_pre_reloc(ofnode node)
 {
 #if defined(CONFIG_SPL_BUILD) || defined(CONFIG_TPL_BUILD)
 	/* for SPL and TPL the remaining nodes after the fdtgrep 1st pass
-	 * had property dm-pre-reloc or u-boot,dm-spl/tpl.
+	 * had property bootph-all or bootph-pre-sram/bootph-pre-ram.
 	 * They are removed in final dtb (fdtgrep 2nd pass)
 	 */
 	return true;
 #else
-	if (ofnode_read_bool(node, "u-boot,dm-pre-reloc"))
+	if (ofnode_read_bool(node, "bootph-all"))
 		return true;
-	if (ofnode_read_bool(node, "u-boot,dm-pre-proper"))
+	if (ofnode_read_bool(node, "bootph-some-ram"))
 		return true;
 
 	/*
 	 * In regular builds individual spl and tpl handling both
 	 * count as handled pre-relocation for later second init.
 	 */
-	if (ofnode_read_bool(node, "u-boot,dm-spl") ||
-	    ofnode_read_bool(node, "u-boot,dm-tpl"))
+	if (ofnode_read_bool(node, "bootph-pre-ram") ||
+	    ofnode_read_bool(node, "bootph-pre-sram"))
 		return true;
 
 	if (IS_ENABLED(CONFIG_OF_TAG_MIGRATE)) {
diff --git a/drivers/video/video-uclass.c b/drivers/video/video-uclass.c
index 6aaacff10df..ab482f11e5d 100644
--- a/drivers/video/video-uclass.c
+++ b/drivers/video/video-uclass.c
@@ -529,8 +529,8 @@ static int video_post_bind(struct udevice *dev)
 	addr = uc_priv->video_ptr;
 	size = alloc_fb(dev, &addr);
 	if (addr < gd->video_bottom) {
-		/* Device tree node may need the 'u-boot,dm-pre-reloc' or
-		 * 'u-boot,dm-pre-proper' tag
+		/* Device tree node may need the 'bootph-all' or
+		 * 'bootph-some-ram' tag
 		 */
 		printf("Video device '%s' cannot allocate frame buffer memory -ensure the device is set up before relocation\n",
 		       dev->name);
diff --git a/dts/Kconfig b/dts/Kconfig
index deb865d4c28..3b7489f0f87 100644
--- a/dts/Kconfig
+++ b/dts/Kconfig
@@ -362,7 +362,7 @@ config OF_SPL_REMOVE_PROPS
 	help
 	  Since SPL normally runs in a reduced memory space, the device tree
 	  is cut down to only what is needed to load and start U-Boot. Only
-	  nodes marked with the property "u-boot,dm-pre-reloc" will be
+	  nodes marked with the property "bootph-all" will be
 	  included. In addition, some properties are not used by U-Boot and
 	  can be discarded. This option defines the list of properties to
 	  discard.
diff --git a/include/dm/device.h b/include/dm/device.h
index e9460386ca9..b86bf90609b 100644
--- a/include/dm/device.h
+++ b/include/dm/device.h
@@ -1070,7 +1070,7 @@ static inline bool device_is_on_pci_bus(const struct udevice *dev)
  * sub-nodes and binds drivers for each node where a driver can be found.
  *
  * If this is called prior to relocation, only pre-relocation devices will be
- * bound (those marked with u-boot,dm-pre-reloc in the device tree, or where
+ * bound (those marked with bootph-all in the device tree, or where
  * the driver has the DM_FLAG_PRE_RELOC flag set). Otherwise, all devices will
  * be bound.
  *
diff --git a/include/dm/ofnode.h b/include/dm/ofnode.h
index 3f6b0843c58..c00677275ee 100644
--- a/include/dm/ofnode.h
+++ b/include/dm/ofnode.h
@@ -1188,12 +1188,12 @@ int ofnode_read_simple_size_cells(ofnode node);
  * determine if a node was bound in one of SPL/TPL stages.
  *
  * There are 4 settings currently in use
- * - u-boot,dm-pre-proper: U-Boot proper pre-relocation only
- * - u-boot,dm-pre-reloc: legacy and indicates any of TPL or SPL
+ * - bootph-some-ram: U-Boot proper pre-relocation only
+ * - bootph-all: all phases
  * Existing platforms only use it to indicate nodes needed in
- * SPL. Should probably be replaced by u-boot,dm-spl for new platforms.
- * - u-boot,dm-spl: SPL and U-Boot pre-relocation
- * - u-boot,dm-tpl: TPL and U-Boot pre-relocation
+ * SPL. Should probably be replaced by bootph-pre-ram for new platforms.
+ * - bootph-pre-ram: SPL and U-Boot pre-relocation
+ * - bootph-pre-sram: TPL and U-Boot pre-relocation
  *
  * @node: node to check
  * Return: true if node is needed in SPL/TL, false otherwise
diff --git a/test/dm/test-fdt.c b/test/dm/test-fdt.c
index 1d2af94f568..8e6e42e46b4 100644
--- a/test/dm/test-fdt.c
+++ b/test/dm/test-fdt.c
@@ -215,7 +215,7 @@ static int dm_test_fdt_pre_reloc(struct unit_test_state *uts)
 
 	/*
 	 * These are 2 pre-reloc devices:
-	 * one with "u-boot,dm-pre-reloc" property (a-test node), and the other
+	 * one with "bootph-all" property (a-test node), and the other
 	 * one whose driver marked with DM_FLAG_PRE_RELOC flag (h-test node).
 	 */
 	ut_asserteq(2, list_count_items(&uc->dev_head));
diff --git a/test/py/tests/test_ofplatdata.py b/test/py/tests/test_ofplatdata.py
index e9cce4daf48..51a188454f3 100644
--- a/test/py/tests/test_ofplatdata.py
+++ b/test/py/tests/test_ofplatdata.py
@@ -13,10 +13,10 @@ def test_spl_devicetree(u_boot_console):
     fdtgrep = cons.config.build_dir + '/tools/fdtgrep'
     output = util.run_and_log(cons, [fdtgrep, '-l', dtb])
 
-    assert "u-boot,dm-pre-reloc" not in output
-    assert "u-boot,dm-pre-proper" not in output
-    assert "u-boot,dm-spl" not in output
-    assert "u-boot,dm-tpl" not in output
+    assert "bootph-all" not in output
+    assert "bootph-some-ram" not in output
+    assert "bootph-pre-ram" not in output
+    assert "bootph-pre-sram" not in output
 
     assert "spl-test5" not in output
     assert "spl-test6" not in output
diff --git a/tools/binman/binman.rst b/tools/binman/binman.rst
index 03a99a19bc6..2bcb7d3886f 100644
--- a/tools/binman/binman.rst
+++ b/tools/binman/binman.rst
@@ -1122,8 +1122,7 @@ It is sometimes inconvenient to add a 'binman' node to the .dts file for each
 board. This can be done by using #include to bring in a common file. Another
 approach supported by the U-Boot build system is to automatically include
 a common header. You can then put the binman node (and anything else that is
-specific to U-Boot, such as u-boot,dm-pre-reloc properies) in that header
-file.
+specific to U-Boot, such as bootph-all properies) in that header file.
 
 Binman will search for the following files in arch/<arch>/dts::
 
diff --git a/tools/dtoc/test_fdt.py b/tools/dtoc/test_fdt.py
index 3b8ee00d4e0..dffa86fc190 100755
--- a/tools/dtoc/test_fdt.py
+++ b/tools/dtoc/test_fdt.py
@@ -132,10 +132,10 @@ class TestFdt(unittest.TestCase):
         """Tests obtaining a list of properties"""
         node = self.dtb.GetNode('/spl-test')
         props = self.dtb.GetProps(node)
-        self.assertEqual(['boolval', 'bytearray', 'byteval', 'compatible',
-                          'int64val', 'intarray', 'intval', 'longbytearray',
-                          'maybe-empty-int', 'notstring', 'stringarray',
-                          'stringval', 'u-boot,dm-pre-reloc'],
+        self.assertEqual(['boolval', 'bootph-all', 'bytearray', 'byteval',
+                          'compatible', 'int64val', 'intarray', 'intval',
+                          'longbytearray', 'maybe-empty-int', 'notstring',
+                          'stringarray', 'stringval', ],
                          sorted(props.keys()))
 
     def test_check_error(self):
-- 
2.39.1.581.gbfd45094c4-goog



More information about the U-Boot mailing list