summaryrefslogtreecommitdiff
path: root/tools/binman/ftest.py
diff options
context:
space:
mode:
authorMoteen Shah <m-shah@ti.com>2025-05-16 17:11:48 +0530
committerTom Rini <trini@konsulko.com>2025-06-26 11:48:37 -0600
commit1b5e41964c34ee062fe9932ef5f9ccc747c50ea1 (patch)
treef81ac42019ef132665f969b85872f576096cf1d1 /tools/binman/ftest.py
parentd85d15fdfebd040e58bdf80e40ef09d67a8ac808 (diff)
tools: binman: ftest.py: Add testcase for bootph-* propagation
Add a testcase to ensure that scan_and_prop_bootph() actually propagates bootph-* properties to supernodes. Signed-off-by: Moteen Shah <m-shah@ti.com> Reviewed-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'tools/binman/ftest.py')
-rw-r--r--tools/binman/ftest.py24
1 files changed, 24 insertions, 0 deletions
diff --git a/tools/binman/ftest.py b/tools/binman/ftest.py
index fa174900014..1bbb5e2b2ab 100644
--- a/tools/binman/ftest.py
+++ b/tools/binman/ftest.py
@@ -8011,5 +8011,29 @@ fdt fdtmap Extract the devicetree blob from the fdtmap
self._DoTestFile('346_remove_template.dts',
force_missing_bintools='openssl',)
+ def testBootphPropagation(self):
+ """Test that bootph-* properties are propagated correctly to supernodes"""
+ _, _, _, out_dtb_fname = self._DoReadFileDtb(
+ '347_bootph_prop.dts', use_real_dtb=True, update_dtb=True)
+ dtb = fdt.Fdt(out_dtb_fname)
+ dtb.Scan()
+ root = dtb.GetRoot()
+ parent_node = root.FindNode('dummy-parent')
+ subnode1 = parent_node.FindNode('subnode-1')
+ subnode2 = subnode1.FindNode('subnode-2')
+ subnode3 = subnode1.FindNode('subnode-3')
+ subnode4 = subnode3.FindNode('subnode-4')
+
+ self.assertIn('bootph-some-ram', subnode1.props,
+ "Child node is missing 'bootph-some-ram' property")
+ self.assertIn('bootph-all', subnode1.props,
+ "Child node is missing 'bootph-all' property")
+ self.assertIn('bootph-some-ram', parent_node.props,
+ "Parent node is missing 'bootph-some-ram' property")
+ self.assertIn('bootph-all', parent_node.props,
+ "Parent node is missing 'bootph-all' property")
+ self.assertEqual(len(subnode4.props), 0,
+ "subnode shouldn't have any properties")
+
if __name__ == "__main__":
unittest.main()