[PATCH 11/16] of: property: Allow fw_devlink device-tree support for x86

Andy Shevchenko andriy.shevchenko at linux.intel.com
Sat Apr 19 08:30:31 PDT 2025


On Fri, Apr 18, 2025 at 03:10:36PM +0200, Herve Codina wrote:
> On Tue, 8 Apr 2025 17:34:54 +0300
> Andy Shevchenko <andriy.shevchenko at linux.intel.com> wrote:
> > On Tue, Apr 08, 2025 at 03:49:25PM +0200, Herve Codina wrote:
> > > On Mon, 7 Apr 2025 18:36:28 +0300
> > > Andy Shevchenko <andriy.shevchenko at linux.intel.com> wrote:  
> > > > On Mon, Apr 07, 2025 at 04:55:40PM +0200, Herve Codina wrote:  

...

> > > > This is incorrect, they never had ACPI to begin with. Also there is third
> > > > platform that are using DT on x86 core — SpreadTrum based phones.  
> > > 
> > > I will rework the commit log to avoid 'mixing ACPI and device-tree'
> > > 
> > > For "SpreadTrum based phones", do you have an idea about the Kconfig symbol
> > > I could use to filter our this x86 systems?  
> > 
> > Hmm... good question. I don't think it was anything. The Airmont core just
> > works and doesn't require anything special to be set. And platform is x86 with
> > the devices that are established on ARM, so nothing special in device tree
> > either, I suppose. Basically any x86 platform with OF should be excluded,
> > rather think of what should be included. But I see that as opposite
> > requirements to the same function. I have no idea how to solve this. Perhaps
> > find that SpreadTrum Intel Atom-based device? Would be really hard, I believe.
> > Especially if we want to install a custom kernel there...
> > 
> > > Anything I find upstream related to SpreadTrum seems base on ARM cpus.
> > > I probably miss something.  
> > 
> > There were two SoCs that were Intel Atom based [1]. And some patches [2] to x86
> > DT code were made to support those cases.
> > 
> > > > And not sure about AMD stuff (Geode?).  
> > > 
> > > Same here, if some AMD devices need to be filtered out, is there a specific
> > > Kconfig symbol I can use ?  
> > 
> > This is question to AMD people. I have no clue.
> > 
> > [1]: https://www.anandtech.com/show/11196/mwc-2017-spreadtrum-launches-8core-intel-airmontbased-soc-with-cat-7-lte-for-smartphones
> > 
> > [2]: 4e07db9c8db8 ("x86/devicetree: Use CPU description from Device Tree")
> > and co. `git log --no-merges 4e07db9c8db8 -- arch/x86/kernel/devicetree.c
> 
> I have tried to find a solution for this topic.
> 
> Indeed, this patch enables fw_devlink based on device-tree on all x86
> platform except OLPC and CE4100.
> 
> You have mentioned some other x86 based system that could have issues with
> fw_devlink and it seems to be hard to have a complete list of systems for
> which we should not enable fw_devlink (potential issues and so regression
> against current kernel behavior).
> 
> As you also proposed, we can thing on the opposite direction and enable
> fw_devlink on x86 systems that need it.
> 
> We need it because we need the device-tree description over PCI device feature
> (CONFIG_PCI_DYNAMIC_OF_NODES) on x86 in order to support the LAN966x use case.
> 
> What do you think about the following condition?
> 
> 	if (IS_ENABLED(CONFIG_X86) && !IS_ENABLED(CONFIG_PCI_DYNAMIC_OF_NODES))
>  		return 0; /* Not enabled */
> 
> CONFIG_PCI_DYNAMIC_OF_NODES has already to set explicitly by the user.
> 
> Do you think it makes sense and could be a good alternative instead of
> filtering out a list of x86 systems ?

At least this won't break old platforms that won't set that configuration
option. Ideally, of course, it would be nice to have some kind of detection
at run-time...

-- 
With Best Regards,
Andy Shevchenko





More information about the linux-arm-kernel mailing list