Re: [PATCH 1/2] driver core: provide device_match_fwnode_ext()

From: Dmitry Torokhov

Date: Thu Feb 19 2026 - 11:54:33 EST


Hi Bartosz,

On Thu, Feb 19, 2026 at 05:39:47PM +0100, Bartosz Golaszewski wrote:
> On Thu, Feb 19, 2026 at 5:36 PM Greg Kroah-Hartman
> <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
> >
> > On Thu, Feb 19, 2026 at 05:31:22PM +0100, Bartosz Golaszewski wrote:
> > > Provide an extended variant of device_match_fwnode() that also tries to
> > > match the device's secondary fwnode.
> > >
> > > Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxxxxxxxx>
> > > ---
> > > drivers/base/core.c | 14 ++++++++++++++
> > > include/linux/device/bus.h | 1 +
> > > 2 files changed, 15 insertions(+)
> > >
> > > diff --git a/drivers/base/core.c b/drivers/base/core.c
> > > index f599a1384eec90c104601422b04dc2b4c19d4382..bbf1337978fafc35eb94bda85e0bb7f6879879c0 100644
> > > --- a/drivers/base/core.c
> > > +++ b/drivers/base/core.c
> > > @@ -5326,6 +5326,20 @@ int device_match_fwnode(struct device *dev, const void *fwnode)
> > > }
> > > EXPORT_SYMBOL_GPL(device_match_fwnode);
> > >
> > > +int device_match_fwnode_ext(struct device *dev, const void *fwnode)
> >
> > No kernel doc to explain what this function does?
> >
> > :(
> >
>
> It's not like any of the other variants from this file were documented
> but ok, I can add it in v2. Still, I'd like to hear if this even makes
> sense.

I think it really needs a good explanation given how it goes through
secondaries on one side but not on the other (but maybe it should? Why
one would not want to match secondary?)

I also not fond of the name and still not quite sure if we need a
special variant or if the normal device_match_fwnode() should be
adjusted and its callers (there are about 20) should be audited (and
maybe if the actually rely on current behavior we can introduce
device_match_primary_fwnode() instead).

And it should be a 'bool' (and we should fix the rest of them as well).

Thanks.

--
Dmitry