diff options
author | Simon Glass <sjg@chromium.org> | 2015-07-02 18:15:38 -0600 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2015-08-05 20:57:51 -0600 |
commit | d82ba4c0b457f0cb30da7bbee935aad7793e5fac (patch) | |
tree | a540d1e498aac23968cd3d0856846ec327a07782 /include/dm | |
parent | 389f1856bd0882471214c2ac94da2b415362c10f (diff) | |
download | u-boot-d82ba4c0b457f0cb30da7bbee935aad7793e5fac.tar.gz |
dm: core: Support finding a device by phandle
It is common for one node to reference another via a phandle. Add support
for obtaining an attached device by this method. As an example, a node may
have a 'power-supply' property which references a regulator, allowing the
driver to turn on its power.
Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'include/dm')
-rw-r--r-- | include/dm/uclass.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/include/dm/uclass.h b/include/dm/uclass.h index 4cfc0df84c..3fe17397e1 100644 --- a/include/dm/uclass.h +++ b/include/dm/uclass.h @@ -177,6 +177,23 @@ int uclass_get_device_by_of_offset(enum uclass_id id, int node, struct udevice **devp); /** + * uclass_get_device_by_phandle() - Get a uclass device by phandle + * + * This searches the devices in the uclass for one with the given phandle. + * + * The device is probed to activate it ready for use. + * + * @id: uclass ID to look up + * @parent: Parent device containing the phandle pointer + * @name: Name of property in the parent device node + * @devp: Returns pointer to device (there is only one for each node) + * @return 0 if OK, -ENOENT if there is no @name present in the node, other + * -ve on error + */ +int uclass_get_device_by_phandle(enum uclass_id id, struct udevice *parent, + const char *name, struct udevice **devp); + +/** * uclass_first_device() - Get the first device in a uclass * * The device returned is probed if necessary, and ready for use |