On Thu, Aug 08, 2024 at 05:46:50PM +0200, Herve Codina wrote: > Add a PCI driver that handles the LAN966x PCI device using a device-tree > overlay. This overlay is applied to the PCI device DT node and allows to > describe components that are present in the device. > > The memory from the device-tree is remapped to the BAR memory thanks to > "ranges" properties computed at runtime by the PCI core during the PCI > enumeration. > > The PCI device itself acts as an interrupt controller and is used as the > parent of the internal LAN966x interrupt controller to route the > interrupts to the assigned PCI INTx interrupt. > > Signed-off-by: Herve Codina <herve.codina@xxxxxxxxxxx> > --- > drivers/misc/Kconfig | 24 ++++ > drivers/misc/Makefile | 3 + > drivers/misc/lan966x_pci.c | 215 ++++++++++++++++++++++++++++++++++ > drivers/misc/lan966x_pci.dtso | 167 ++++++++++++++++++++++++++ > drivers/pci/quirks.c | 1 + Acked-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx> # drivers/pci/quirks.c > diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c > index a2ce4e08edf5..bae2dd99017c 100644 > --- a/drivers/pci/quirks.c > +++ b/drivers/pci/quirks.c > @@ -6245,6 +6245,7 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0xa76e, dpc_log_size); > DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_XILINX, 0x5020, of_pci_make_dev_node); > DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_XILINX, 0x5021, of_pci_make_dev_node); > DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_REDHAT, 0x0005, of_pci_make_dev_node); > +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_EFAR, 0x9660, of_pci_make_dev_node); > > /* > * Devices known to require a longer delay before first config space access > -- > 2.45.0 >