dm: core: Add a function to get a uclass name
authorSimon Glass <sjg@chromium.org>
Thu, 6 Oct 2016 02:42:13 +0000 (20:42 -0600)
committerBin Meng <bmeng.cn@gmail.com>
Tue, 11 Oct 2016 03:55:33 +0000 (11:55 +0800)
It is useful in debug() statements to display the name of the uclass for a
device. Add a simple function to provide this.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
drivers/core/uclass.c
include/dm/uclass.h

index de602ae52dcbd2d7d7a823a4e470b81beb6d178b..60610e5a1f5464eee6c49afa5b4d3da9bf807e2d 100644 (file)
@@ -148,6 +148,15 @@ int uclass_get(enum uclass_id id, struct uclass **ucp)
        return 0;
 }
 
+const char *uclass_get_name(enum uclass_id id)
+{
+       struct uclass *uc;
+
+       if (uclass_get(id, &uc))
+               return NULL;
+       return uc->uc_drv->name;
+}
+
 int uclass_find_device(enum uclass_id id, int index, struct udevice **devp)
 {
        struct uclass *uc;
index 84f05bcfceaac482011aed97eca320dfeddecd14..b583aa869b3adc6a84bc7c876272c6b08a7d87ac 100644 (file)
@@ -118,6 +118,14 @@ struct uclass_driver {
  */
 int uclass_get(enum uclass_id key, struct uclass **ucp);
 
+/**
+ * uclass_get_name() - Get the name of a uclass driver
+ *
+ * @id: ID to look up
+ * @returns the name of the uclass driver for that ID, or NULL if none
+ */
+const char *uclass_get_name(enum uclass_id id);
+
 /**
  * uclass_get_device() - Get a uclass device based on an ID and index
  *