diff options
author | Simon Glass | 2018-06-11 13:07:19 -0600 |
---|---|---|
committer | Simon Glass | 2018-07-09 09:11:00 -0600 |
commit | 31e60ffa05b0952be3df8f584155567afdee50bd (patch) | |
tree | 1638710fe4b9c8ff569479d9679ffd291fa459d2 | |
parent | 964cadc445f1437e63f1d2b4fffd233ac053c6e6 (diff) |
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>
-rw-r--r-- | drivers/core/uclass.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/drivers/core/uclass.c b/drivers/core/uclass.c index 0085d3fb24b..d609b170e1a 100644 --- a/drivers/core/uclass.c +++ b/drivers/core/uclass.c @@ -308,6 +308,7 @@ int uclass_find_device_by_ofnode(enum uclass_id id, ofnode node, 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 @@ int uclass_find_device_by_ofnode(enum uclass_id id, ofnode node, 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 @@ int uclass_get_device_by_ofnode(enum uclass_id id, ofnode node, 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); } |