From dbe1a80aad09d13143d7eadf0f60bd65d79635fd Mon Sep 17 00:00:00 2001 From: Sascha Hauer Date: Fri, 25 Jun 2021 09:25:28 +0200 Subject: 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 Link: https://lore.barebox.org/20210625072540.32717-8-s.hauer@pengutronix.de Signed-off-by: Sascha Hauer --- drivers/of/base.c | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'drivers') 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(); } /** -- cgit v1.2.3