linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
To: saravanak@google.com, linux-kernel@vger.kernel.org,
	Rob Herring <robh+dt@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: devicetree@vger.kernel.org,
	Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Subject: [PATCH v2 1/2] of: property: Fix create device links for all child-supplier dependencies
Date: Fri, 17 Apr 2020 18:54:41 +0200	[thread overview]
Message-ID: <20200417165442.1856-2-nsaenzjulienne@suse.de> (raw)
In-Reply-To: <20200417165442.1856-1-nsaenzjulienne@suse.de>

Upon adding a new device from a DT node, we scan its properties and its
children's properties in order to create a consumer/supplier
relationship between the device and the property provider.

That said, it's possible for some of the node's children to be disabled,
which will create links that'll never be fulfilled.

To get around this, use the for_each_available_child_of_node() function
instead of for_each_available_node() when iterating over the node's
children.

Fixes: d4387cd11741 ("of: property: Create device links for all child-supplier depencencies")
Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>

---

Changes since v1:
 - Slightly reword description

 drivers/of/property.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/of/property.c b/drivers/of/property.c
index 252e4f6001553..dc034eb45defd 100644
--- a/drivers/of/property.c
+++ b/drivers/of/property.c
@@ -1298,7 +1298,7 @@ static int of_link_to_suppliers(struct device *dev,
 		if (of_link_property(dev, con_np, p->name))
 			ret = -ENODEV;
 
-	for_each_child_of_node(con_np, child)
+	for_each_available_child_of_node(con_np, child)
 		if (of_link_to_suppliers(dev, child) && !ret)
 			ret = -EAGAIN;
 
-- 
2.26.0


  reply	other threads:[~2020-04-17 16:55 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-17 16:54 [PATCH v2 0/2] of: property: fw_devlink misc fixes Nicolas Saenz Julienne
2020-04-17 16:54 ` Nicolas Saenz Julienne [this message]
2020-04-17 20:56   ` [PATCH v2 1/2] of: property: Fix create device links for all child-supplier dependencies Saravana Kannan
2020-04-17 16:54 ` [PATCH v2 2/2] of: property: Do not link to disabled devices Nicolas Saenz Julienne
2020-04-17 21:08   ` Saravana Kannan
2020-04-18  9:20     ` Nicolas Saenz Julienne
2020-04-17 18:06 ` [PATCH v2 0/2] of: property: fw_devlink misc fixes Nicolas Saenz Julienne
2020-04-17 20:55   ` Saravana Kannan
2020-04-20 11:29     ` Nicolas Saenz Julienne
2020-04-20 22:37       ` Saravana Kannan
2020-04-21  8:54         ` Nicolas Saenz Julienne

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200417165442.1856-2-nsaenzjulienne@suse.de \
    --to=nsaenzjulienne@suse.de \
    --cc=devicetree@vger.kernel.org \
    --cc=frowand.list@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=robh+dt@kernel.org \
    --cc=saravanak@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).