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: if self.dirty:
node = self._node node = self._node
tout.debug(f'sync {node.path}: {self.name}')
fdt_obj = node._fdt._fdt_obj fdt_obj = node._fdt._fdt_obj
node_name = fdt_obj.get_name(node._offset) node_name = fdt_obj.get_name(node._offset)
if node_name and node_name != node.name: 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 'phandle' property is not copied since this might result in two nodes
with the same phandle, thus making phandle references ambiguous. 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(): for name, src_prop in src.props.items():
done = False
if name != 'phandle' and name not in self.props: if name != 'phandle' and name not in self.props:
self.props[name] = Prop(self, None, name, src_prop.bytes) 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): def copy_node(self, src):
"""Copy a node and all its subnodes into this node """Copy a node and all its subnodes into this node

View File

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