Re: [PATCH 2/2] PCI: of: Attach created of_node to existing device

From: Herve Codina
Date: Thu Nov 30 2023 - 11:32:02 EST


Hi Greg,

On Thu, 30 Nov 2023 16:18:58 +0000
Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:

> On Thu, Nov 30, 2023 at 04:24:04PM +0100, Herve Codina wrote:
> > The commit 407d1a51921e ("PCI: Create device tree node for bridge")
> > creates of_node for PCI devices.
> > During the insertion handling of these new DT nodes done by of_platform,
> > new devices (struct device) are created.
> > For each PCI devices a struct device is already present (created and
> > handled by the PCI core).
> > Having a second struct device to represent the exact same PCI device is
> > not correct.
> >
> > On the of_node creation, tell the of_platform that there is no need to
> > create a device for this node (OF_POPULATED flag), link this newly
> > created of_node to the already present device and tell fwnode that the
> > device attached to this of_node is ready (fwnode_dev_initialized()).
> >
> > With this fix, the of_node are available in the sysfs device tree:
> > /sys/devices/platform/soc/d0070000.pcie/
> > + of_node -> .../devicetree/base/soc/pcie@d0070000
> > + pci0000:00
> > + 0000:00:00.0
> > + of_node -> .../devicetree/base/soc/pcie@d0070000/pci@0,0
> > + 0000:01:00.0
> > + of_node -> .../devicetree/base/soc/pcie@d0070000/pci@0,0/dev@0,0
> >
> > On the of_node removal, revert the operations.
> >
> > Fixes: 407d1a51921e ("PCI: Create device tree node for bridge")
> > Cc: stable@xxxxxxxxxxxxxxx
>
> How can this be cc: stable when the api it relies on is not?
>
> confused,

My bad, I will add cc: stable in the other patch needed.

Sorry about that.
Hervé

--
Hervé Codina, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com