dm: core: Add a way to bind a device by ofnode
authorSimon Glass <sjg@chromium.org>
Mon, 11 Jun 2018 19:07:15 +0000 (13:07 -0600)
committerSimon Glass <sjg@chromium.org>
Mon, 9 Jul 2018 15:11:00 +0000 (09:11 -0600)
Add a new device_bind_ofnode() function which can bind a device given its
ofnode. This allows binding devices more easily with livetree nodes.

Signed-off-by: Simon Glass <sjg@chromium.org>
drivers/core/device.c
include/dm/device-internal.h

index e048e1a65951c531750b168659d0f37e2b0adb26..d5f5fc31b0359982db36e71a341779438e398b10 100644 (file)
@@ -230,6 +230,14 @@ int device_bind(struct udevice *parent, const struct driver *drv,
                                  offset_to_ofnode(of_offset), 0, devp);
 }
 
+int device_bind_ofnode(struct udevice *parent, const struct driver *drv,
+                      const char *name, void *platdata, ofnode node,
+                      struct udevice **devp)
+{
+       return device_bind_common(parent, drv, name, platdata, 0, node, 0,
+                                 devp);
+}
+
 int device_bind_by_name(struct udevice *parent, bool pre_reloc_only,
                        const struct driver_info *info, struct udevice **devp)
 {
index 5a4d50cbbea7d5553b84eeb2df2279fcbb40ff5f..f4af15448fabd46702c4d439700b6ca4db82482f 100644 (file)
@@ -40,6 +40,10 @@ int device_bind(struct udevice *parent, const struct driver *drv,
                const char *name, void *platdata, int of_offset,
                struct udevice **devp);
 
+int device_bind_ofnode(struct udevice *parent, const struct driver *drv,
+                      const char *name, void *platdata, ofnode node,
+                      struct udevice **devp);
+
 /**
  * device_bind_with_driver_data() - Create a device and bind it to a driver
  *