diff options
author | Simon Glass <sjg@chromium.org> | 2014-11-11 10:46:19 -0700 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2014-11-22 10:16:47 +0100 |
commit | 479728cb0c752a121e0fd84c6c6d74e93e086905 (patch) | |
tree | 845ec0bba9e72511b1d07522f0cdb89d29b3a65b | |
parent | 2ef249b4420818d7ea31a031f48825e5f38ed3ac (diff) |
dm: core: Add functions to find parent and OF data
Add dev_get_parent() as a convenience to obtain the parent of a device.
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@ti.com>
Acked-by: Heiko Schocher <hs@denx.de>
-rw-r--r-- | drivers/core/device.c | 5 | ||||
-rw-r--r-- | include/dm/device.h | 8 |
2 files changed, 13 insertions, 0 deletions
diff --git a/drivers/core/device.c b/drivers/core/device.c index 81ddecade2..6793e1c4f9 100644 --- a/drivers/core/device.c +++ b/drivers/core/device.c @@ -381,6 +381,11 @@ int device_find_next_child(struct udevice **devp) return 0; } +struct udevice *dev_get_parent(struct udevice *child) +{ + return child->parent; +} + ulong dev_get_of_data(struct udevice *dev) { return dev->of_id->data; diff --git a/include/dm/device.h b/include/dm/device.h index 287504cb27..13598a15b6 100644 --- a/include/dm/device.h +++ b/include/dm/device.h @@ -208,6 +208,14 @@ void *dev_get_parentdata(struct udevice *dev); void *dev_get_priv(struct udevice *dev); /** + * struct dev_get_parent() - Get the parent of a device + * + * @child: Child to check + * @return parent of child, or NULL if this is the root device + */ +struct udevice *dev_get_parent(struct udevice *child); + +/** * dev_get_of_data() - get the device tree data used to bind a device * * When a device is bound using a device tree node, it matches a |