Hi Lee, On Thu, 11 Jul 2024 16:29:52 +0100 Lee Jones <lee@xxxxxxxxxx> wrote: > On Thu, 27 Jun 2024, 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. > > Not entirely sure why this is in MFD. This PCI driver purpose is to instanciate many other drivers using a DT overlay. I think MFD is the right subsystem. It acts as an interrupt controller because we need to have a bridge between the device-tree interrupt world and the the PCI world. This bridge is needed and specific to the driver in order to have resources available from the device-tree world present in the applied overlay. > > Also I'm unsure of his current views, but Greg has voiced pretty big > feelings about representing PCI drivers as Platform ones in the past. PCI drivers as Plaform ones ? I probably missed something. Can you give me more details ? Best regards, Hervé