dm: core: Add logging of some common errors
Add additional logging so that common errors when finding a device by
ofnode are easier to debug.
Signed-off-by: Simon Glass <sjg@chromium.org>
diff --git a/drivers/core/uclass.c b/drivers/core/uclass.c
index 0085d3f..d609b17 100644
--- a/drivers/core/uclass.c
+++ b/drivers/core/uclass.c
@@ -308,6 +308,7 @@
struct udevice *dev;
int ret;
+ log(LOGC_DM, LOGL_DEBUG, "Looking for %s\n", ofnode_get_name(node));
*devp = NULL;
if (!ofnode_valid(node))
return -ENODEV;
@@ -316,13 +317,19 @@
return ret;
list_for_each_entry(dev, &uc->dev_head, uclass_node) {
+ log(LOGC_DM, LOGL_DEBUG_CONTENT, " - checking %s\n",
+ dev->name);
if (ofnode_equal(dev_ofnode(dev), node)) {
*devp = dev;
- return 0;
+ goto done;
}
}
+ ret = -ENODEV;
- return -ENODEV;
+done:
+ log(LOGC_DM, LOGL_DEBUG, " - result for %s: %s (ret=%d)\n",
+ ofnode_get_name(node), *devp ? (*devp)->name : "(none)", ret);
+ return ret;
}
#if CONFIG_IS_ENABLED(OF_CONTROL)
@@ -449,8 +456,11 @@
struct udevice *dev;
int ret;
+ log(LOGC_DM, LOGL_DEBUG, "Looking for %s\n", ofnode_get_name(node));
*devp = NULL;
ret = uclass_find_device_by_ofnode(id, node, &dev);
+ log(LOGC_DM, LOGL_DEBUG, " - result for %s: %s (ret=%d)\n",
+ ofnode_get_name(node), dev ? dev->name : "(none)", ret);
return uclass_get_device_tail(dev, ret, devp);
}