Re: [PATCH v3 18/28] of: property: Allow fw_devlink device-tree on x86 when PCI device-tree node creation is enabled
From: Herve Codina
Date: Thu Jul 03 2025 - 02:38:23 EST
Hi Rob, Andy,
On Fri, 27 Jun 2025 12:49:36 -0500
Rob Herring <robh@xxxxxxxxxx> wrote:
> On Fri, Jun 27, 2025 at 11:33 AM Andy Shevchenko
> <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote:
> >
> > On Fri, Jun 27, 2025 at 11:22:45AM -0500, Rob Herring wrote:
> > > On Fri, Jun 13, 2025 at 03:47:58PM +0200, Herve Codina wrote:
> >
> > ...
> >
> > > > - if (IS_ENABLED(CONFIG_X86))
> > > > + if (IS_ENABLED(CONFIG_X86) && !IS_ENABLED(CONFIG_PCI_DYNAMIC_OF_NODES))
> > >
> > > I really want CONFIG_PCI_DYNAMIC_OF_NODES to go away at some point, not
> > > add more users.
> > >
> > > I think this should instead check for specific platforms not with
> > > kconfig symbols but DT properties. For ce4100, you can just check the
> > > root compatible string. For OLPC, there isn't a root compatible (in the
> > > DT I have). You could check for /architecture == OLPC instead. There's
> > > some virtualization guests using DT now too. I would think their DT's
> > > are simple enough to avoid any fw_devlink issues.
> >
> > I don't think this is good approach. The above check is more reliable in my
> > opinion.
>
> I'm fine with any solution that doesn't add a
> CONFIG_PCI_DYNAMIC_OF_NODES which we can't remove. Adding it was a
> kick the can down the road to merge the support worry the mixed
> usecase (on ACPI systems) later. It's now later.
>
> > > Alternatively, we could perhaps make x86 fw_devlink default off
> >
> > For my (little) knowledge I believe this is not feasible anymore.
> > Some x86 code (drivers) relies on fw_devlink nowadays. But take
> > this with grain of salt, I may be way mistaken.
>
> Doesn't the CONFIG_X86 check disable it?
>
> Rob
Filtering out by Kconfig seems a no-go:
- Check for CONFIG_OLPC of CONFIG_X86_INTEL_CE as proposed in v1
(https://lore.kernel.org/lkml/20250407145546.270683-12-herve.codina@xxxxxxxxxxx/)
was a no-go from Andy
- Check for CONFIG_PCI_DYNAMIC_OF_NODES as proposed here is a no-go from
Rob
I will follow Rob's suggestion based on DT properties. With a DT property
list, it would be easier to add more x86 fw_delink broken system in the list
of the system to exclude.
Best regards,
Hervé