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

Herve Codina herve.codina at bootlin.com
Fri Apr 18 06:10:36 PDT 2025


Hi Andy,

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 ?

Best regards,
Hervé



More information about the linux-arm-kernel mailing list