diff mbox series

[v5,11/30] libpdbg: Construct unique path based on virtual nodes

Message ID 20191014051748.20190-12-amitay@ozlabs.org
State Accepted
Headers show
Series Add system device tree to libpdbg | expand

Commit Message

Amitay Isaacs Oct. 14, 2019, 5:17 a.m. UTC
Even though there can be two different paths to a node, libpdbg users
should always see the path as defined in system device tree (view) which
is the same and independent of the backend device tree.

Signed-off-by: Amitay Isaacs <amitay@ozlabs.org>
Reviewed-by: Alistair Popple <alistair@popple.id.au>
---
 libpdbg/device.c | 2 ++
 1 file changed, 2 insertions(+)
diff mbox series

Patch

diff --git a/libpdbg/device.c b/libpdbg/device.c
index 2776169..8d603e4 100644
--- a/libpdbg/device.c
+++ b/libpdbg/device.c
@@ -219,6 +219,7 @@  static char *dt_get_path(struct pdbg_target *node)
 		return strdup("<NULL>");
 
 	for (n = node; n; n = n->parent) {
+		n = target_to_virtual(n, false);
 		len += strlen(n->dn_name);
 		if (n->parent || n == node)
 			len++;
@@ -227,6 +228,7 @@  static char *dt_get_path(struct pdbg_target *node)
 	assert(path);
 	p = path + len;
 	for (n = node; n; n = n->parent) {
+		n = target_to_virtual(n, false);
 		len = strlen(n->dn_name);
 		p -= len;
 		memcpy(p, n->dn_name, len);