dtoc: Add some debugging when copying nodes

Show the operations being performed, when debugging is enabled.

Convert a mistaken 'print' in test_copy_subnodes_from_phandles() while we
are here.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass 2023-07-22 21:43:54 -06:00
parent 7155646b22
commit 8df8b6d670
2 changed files with 7 additions and 1 deletions

View file

@ -249,6 +249,7 @@ class Prop:
"""
if self.dirty:
node = self._node
tout.debug(f'sync {node.path}: {self.name}')
fdt_obj = node._fdt._fdt_obj
node_name = fdt_obj.get_name(node._offset)
if node_name and node_name != node.name:
@ -716,9 +717,13 @@ class Node:
'phandle' property is not copied since this might result in two nodes
with the same phandle, thus making phandle references ambiguous.
"""
tout.debug(f'copy to {self.path}: {src.path}')
for name, src_prop in src.props.items():
done = False
if name != 'phandle' and name not in self.props:
self.props[name] = Prop(self, None, name, src_prop.bytes)
done = True
tout.debug(f" {name}{'' if done else ' - ignored'}")
def copy_node(self, src):
"""Copy a node and all its subnodes into this node

View file

@ -32,6 +32,7 @@ from dtoc.fdt import Type, BytesToValue
import libfdt
from u_boot_pylib import test_util
from u_boot_pylib import tools
from u_boot_pylib import tout
#pylint: disable=protected-access
@ -414,7 +415,7 @@ class TestNode(unittest.TestCase):
# Make sure that the phandle for 'over' is not copied
over = dst.FindNode('over')
print('keys', over.props.keys())
tout.debug(f'keys: {over.props.keys()}')
self.assertNotIn('phandle', over.props.keys())
# Check the merged properties, first the base ones in '/dest'