| From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 |
| From: Saravana Kannan <saravanak@google.com> |
| Date: Mon, 4 Nov 2019 22:49:58 -0800 |
| Subject: FROMGIT: of: property: Minor style clean up of of_link_to_phandle() |
| |
| Adding a debug log instead of silently ignoring a phandle for an early |
| device. Also, return the right error code instead of 0 even though the |
| actual execution flow won't change. |
| |
| Signed-off-by: Saravana Kannan <saravanak@google.com> |
| Reviewed-by: Rob Herring <robh@kernel.org> |
| Link: https://lore.kernel.org/r/20191105065000.50407-2-saravanak@google.com |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| (cherry-pick from commit ba861f8e07bf38c457b98e1abf6ecd9fd8c4ee92 |
| https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git driver-core-next) |
| Change-Id: Ie120fde8733b27976951142ef973b01f450bc8a0 |
| --- |
| drivers/of/property.c | 10 ++++++++-- |
| 1 file changed, 8 insertions(+), 2 deletions(-) |
| |
| diff --git a/drivers/of/property.c b/drivers/of/property.c |
| index 42c79b2ea837..b544421c748e 100644 |
| --- a/drivers/of/property.c |
| +++ b/drivers/of/property.c |
| @@ -1051,8 +1051,14 @@ static int of_link_to_phandle(struct device *dev, struct device_node *sup_np, |
| sup_dev = get_dev_from_fwnode(&sup_np->fwnode); |
| is_populated = of_node_check_flag(sup_np, OF_POPULATED); |
| of_node_put(sup_np); |
| - if (!sup_dev) |
| - return is_populated ? 0 : -EAGAIN; |
| + if (!sup_dev && is_populated) { |
| + /* Early device without struct device. */ |
| + dev_dbg(dev, "Not linking to %pOFP - No struct device\n", |
| + sup_np); |
| + return -ENODEV; |
| + } else if (!sup_dev) { |
| + return -EAGAIN; |
| + } |
| if (!device_link_add(dev, sup_dev, dl_flags)) |
| ret = -EAGAIN; |
| put_device(sup_dev); |