Re: [RFC 1/2] arm64: PCI: Allow use arch-specific pci sysdata

From: Marc Zyngier
Date: Sat Mar 20 2021 - 13:15:24 EST


On Sat, 20 Mar 2021 14:24:06 +0000,
Arnd Bergmann <arnd@xxxxxxxx> wrote:
>
> On Sat, Mar 20, 2021 at 2:23 PM Marc Zyngier <maz@xxxxxxxxxx> wrote:
> >
> > On Sat, 20 Mar 2021 13:03:13 +0000,
> > Arnd Bergmann <arnd@xxxxxxxx> wrote:
> > >
> > > On Sat, Mar 20, 2021 at 1:54 PM Marc Zyngier <maz@xxxxxxxxxx> wrote:
> > > > On Fri, 19 Mar 2021 21:12:46 +0000,
> > > >
> > > > Having an optional callback to host bridges to obtain the MSI domain
> > > > may be possible in some cases though (there might be a chicken/egg
> > > > problem for some drivers though...).
> > >
> > > I would expect that the host bridge driver can find the MSI domain
> > > at probe time and just add a pointer into the pci_host_bridge
> > > structure.
> >
> > In most cases, it doesn't implement it itself, and I'd be reluctant to
> > duplicate information that can already be retrieved from somewhere
> > else in a generic way (i.e. no PCI specific).
>
> At the moment, the information is retried through a maze of different
> functions, and already duplicated in both the pci_host_bridge and the
> pci_bus structures. If we can change everything to use
> CONFIG_GENERIC_MSI_IRQ_DOMAIN, then most of that code
> can probably just go away, leaving only the part in the phb.

Fine by me, as long as you don't assume that there is a single MSI
domain per PHB (both OF and IORT mandate that you can segment the RID
space to hit multiple controllers).

M.

--
Without deviation from the norm, progress is not possible.