summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2021-06-25 09:25:28 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2021-06-25 10:01:00 +0200
commitdbe1a80aad09d13143d7eadf0f60bd65d79635fd (patch)
tree4aabc28359d897ccb727b951f956a8279840d9dd /drivers
parent6e6b840ed8f85d28f7dde0b5f361aa2d231d1bef (diff)
downloadbarebox-dbe1a80aad09d13143d7eadf0f60bd65d79635fd.tar.gz
barebox-dbe1a80aad09d13143d7eadf0f60bd65d79635fd.tar.xz
of: implement of_get_stdoutpath()
For deep probe support it will be useful to have a function to get the node corresponding to the stdoutpath. of_device_is_stdout_path() already has that functionality in it, so make a separate funcion from it. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Link: https://lore.barebox.org/20210625072540.32717-8-s.hauer@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/of/base.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/drivers/of/base.c b/drivers/of/base.c
index 83c9d5fb6b..b40bffe922 100644
--- a/drivers/of/base.c
+++ b/drivers/of/base.c
@@ -2453,16 +2453,13 @@ void of_delete_node(struct device_node *node)
of_set_root_node(NULL);
}
-int of_device_is_stdout_path(struct device_d *dev)
+struct device_node *of_get_stdoutpath(void)
{
struct device_node *dn;
const char *name;
const char *p;
char *q;
- if (!dev->device_node)
- return 0;
-
name = of_get_property(of_chosen, "stdout-path", NULL);
if (!name)
name = of_get_property(of_chosen, "linux,stdout-path", NULL);
@@ -2481,7 +2478,15 @@ int of_device_is_stdout_path(struct device_d *dev)
free(q);
- return dn == dev->device_node;
+ return dn;
+}
+
+int of_device_is_stdout_path(struct device_d *dev)
+{
+ if (!dev->device_node)
+ return 0;
+
+ return dev->device_node == of_get_stdoutpath();
}
/**