summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/core/device.c5
-rw-r--r--include/dm/device.h8
2 files changed, 13 insertions, 0 deletions
diff --git a/drivers/core/device.c b/drivers/core/device.c
index 81ddeca..6793e1c 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 287504c..13598a1 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