[PATCH v4 0/2] Attach DT nodes to existing PCI devices
From: Herve Codina
Date: Tue Apr 23 2024 - 10:57:28 EST
Hi,
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).
Creating a new device from a DT node leads to some kind of wrong struct
device duplication to represent the exact same PCI device.
This patch series first introduces device_{add,remove}_of_node() in
order to add or remove a newly created of_node to an already existing
device. Then it fixes the DT node creation for PCI devices to add or
remove the created node to the existing PCI device without any new
device creation.
Compared to the previous iteration:
https://lore.kernel.org/lkml/20240325153919.199337-1-herve.codina@xxxxxxxxxxx/
this v4 series does not create the of_node sysfs symlink.
Best regards,
Hervé
Changes v3 -> v4
- Patch 1
Remove the of_node sysfs symlink handling
Update commit log
- Patch 2
Update commit log
Changes v2 -> v3
- Patch 1
No changes
- Patch 2
Rewrap commit log
Changes v1 -> v2
- Patch 1
Add 'Cc: stable@xxxxxxxxxxxxxxx'
Herve Codina (2):
driver core: Introduce device_{add,remove}_of_node()
PCI: of: Attach created of_node to existing device
drivers/base/core.c | 52 ++++++++++++++++++++++++++++++++++++++++++
drivers/pci/of.c | 15 ++++++++++--
include/linux/device.h | 2 ++
3 files changed, 67 insertions(+), 2 deletions(-)
--
2.44.0