From: Michael Pratt <mcpratt@pm.me>
To: devicetree@vger.kernel.org, gregkh@linuxfoundation.org,
linux-kernel@vger.kernel.org, linux-mtd@lists.infradead.org
Cc: Michael Pratt <mcpratt@pm.me>,
saravanak@google.com, abel.vesa@linaro.org,
alexander.stein@ew.tq-group.com,
andriy.shevchenko@linux.intel.com, bigunclemax@gmail.com,
brgl@bgdev.pl, colin.foster@in-advantage.com,
djrscally@gmail.com, dmitry.baryshkov@linaro.org,
festevam@gmail.com, fido_max@inbox.ru, frowand.list@gmail.com,
geert@linux-m68k.org, heikki.krogerus@linux.intel.com,
kernel@pengutronix.de, linus.walleij@linaro.org,
linux@roeck-us.net, luca.weiss@fairphone.com,
magnus.damm@gmail.com, martin.kepplinger@puri.sm,
miquel.raynal@bootlin.com, rafal@milecki.pl,
ansuelsmth@gmail.com, richard@nod.at,
sakari.ailus@linux.intel.com, sudeep.holla@arm.com,
tglx@linutronix.de, tony@atomide.com, vigneshr@ti.com,
dianders@chromium.org, jpb@kernel.org, rafael@kernel.org
Subject: [PATCH v1 1/4] driver core: fw_devlink: Use driver to determine probe ability
Date: Tue, 23 Jan 2024 01:46:18 +0000 [thread overview]
Message-ID: <20240123014517.5787-2-mcpratt@pm.me> (raw)
In-Reply-To: <20240123014517.5787-1-mcpratt@pm.me>
The function __fw_devlink_pickup_dangling_consumers()
intends to ignore suppliers that are already capable of probing,
but uses whether or not a bus struct is defined in the device struct.
There are some cases where a firmware child node
can be address translatable but not able to probe
(e.g. the use of of_platform_populate() for MTD partitions),
so whether or not a driver is present is a more accurate way
to guess whether a fwnode represents a real probing device here.
This also serves as a preparation step for further changes
to fw_devlink including making the contents of this function
less strict in order to compensate for more cases being passed into
the rest of the function because the return case is now more strict.
"Hey! Who's driving the bus?"
Signed-off-by: Michael Pratt <mcpratt@pm.me>
---
drivers/base/core.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/base/core.c b/drivers/base/core.c
index 14d46af40f9a..c05a5f6b0641 100644
--- a/drivers/base/core.c
+++ b/drivers/base/core.c
@@ -214,7 +214,7 @@ static void __fwnode_links_move_consumers(struct fwnode_handle *from,
* @new_sup: fwnode of new supplier
*
* If the @fwnode has a corresponding struct device and the device supports
- * probing (that is, added to a bus), then we want to let fw_devlink create
+ * probing (that is, bound to a driver), then we want to let fw_devlink create
* MANAGED device links to this device, so leave @fwnode and its descendant's
* fwnode links alone.
*
@@ -225,7 +225,7 @@ static void __fw_devlink_pickup_dangling_consumers(struct fwnode_handle *fwnode,
{
struct fwnode_handle *child;
- if (fwnode->dev && fwnode->dev->bus)
+ if (fwnode->dev && fwnode->dev->driver)
return;
fwnode->flags |= FWNODE_FLAG_NOT_DEVICE;
--
2.30.2
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
next prev parent reply other threads:[~2024-01-23 1:46 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-23 1:45 [PATCH v1 0/4] fw_devlink: generically handle bad links to child fwnodes Michael Pratt
2024-01-23 1:46 ` Michael Pratt [this message]
2024-02-14 3:18 ` [PATCH v1 1/4] driver core: fw_devlink: Use driver to determine probe ability Saravana Kannan
2024-01-23 1:46 ` [PATCH v1 2/4] driver core: fw_devlink: Link to supplier ancestor if no device Michael Pratt
2024-02-05 15:00 ` Miquel Raynal
2024-02-25 20:16 ` Michael Pratt
2024-02-05 19:25 ` Saravana Kannan
2024-02-14 3:18 ` Saravana Kannan
2024-02-25 20:37 ` Michael Pratt
2024-01-23 1:47 ` [PATCH v1 3/4] driver core: fw_devlink: Add function device_links_fixup_suppliers() Michael Pratt
2024-01-23 1:47 ` [PATCH v1 4/4] mtd: mtdpart: Allow fwnode links to NVMEM compatible fwnodes Michael Pratt
2024-02-05 15:11 ` Miquel Raynal
2024-02-25 17:35 ` Michael Pratt
2024-02-05 20:06 ` [PATCH v1 0/4] fw_devlink: generically handle bad links to child fwnodes Saravana Kannan
2024-02-14 3:28 ` Saravana Kannan
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=20240123014517.5787-2-mcpratt@pm.me \
--to=mcpratt@pm.me \
--cc=abel.vesa@linaro.org \
--cc=alexander.stein@ew.tq-group.com \
--cc=andriy.shevchenko@linux.intel.com \
--cc=ansuelsmth@gmail.com \
--cc=bigunclemax@gmail.com \
--cc=brgl@bgdev.pl \
--cc=colin.foster@in-advantage.com \
--cc=devicetree@vger.kernel.org \
--cc=dianders@chromium.org \
--cc=djrscally@gmail.com \
--cc=dmitry.baryshkov@linaro.org \
--cc=festevam@gmail.com \
--cc=fido_max@inbox.ru \
--cc=frowand.list@gmail.com \
--cc=geert@linux-m68k.org \
--cc=gregkh@linuxfoundation.org \
--cc=heikki.krogerus@linux.intel.com \
--cc=jpb@kernel.org \
--cc=kernel@pengutronix.de \
--cc=linus.walleij@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=linux@roeck-us.net \
--cc=luca.weiss@fairphone.com \
--cc=magnus.damm@gmail.com \
--cc=martin.kepplinger@puri.sm \
--cc=miquel.raynal@bootlin.com \
--cc=rafael@kernel.org \
--cc=rafal@milecki.pl \
--cc=richard@nod.at \
--cc=sakari.ailus@linux.intel.com \
--cc=saravanak@google.com \
--cc=sudeep.holla@arm.com \
--cc=tglx@linutronix.de \
--cc=tony@atomide.com \
--cc=vigneshr@ti.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