Re: [PATCH v2] pci: Kconfig: select PCI_MSI_IRQ_DOMAIN by default on RISC-V

From: Bjorn Helgaas
Date: Thu Aug 08 2019 - 17:47:35 EST


On Thu, Aug 08, 2019 at 01:51:50PM -0700, Paul Walmsley wrote:
> On Thu, 8 Aug 2019, Bjorn Helgaas wrote:
> > On Thu, Jul 25, 2019 at 02:28:07PM -0700, Paul Walmsley wrote:
> > > From: Wesley Terpstra <wesley@xxxxxxxxxx>
> > >
> > > This is part of adding support for RISC-V systems with PCIe host
> > > controllers that support message-signaled interrupts.
> > >
> > > Signed-off-by: Wesley Terpstra <wesley@xxxxxxxxxx>
> > > [paul.walmsley@xxxxxxxxxx: wrote patch description; split this
> > > patch from the arch/riscv patch]
> > > Signed-off-by: Paul Walmsley <paul.walmsley@xxxxxxxxxx>
> > > ---
> > > drivers/pci/Kconfig | 2 +-
> > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
> > > index 2ab92409210a..beb3408a0272 100644
> > > --- a/drivers/pci/Kconfig
> > > +++ b/drivers/pci/Kconfig
> > > @@ -52,7 +52,7 @@ config PCI_MSI
> > > If you don't know what to do here, say Y.
> > >
> > > config PCI_MSI_IRQ_DOMAIN
> > > - def_bool ARC || ARM || ARM64 || X86
> > > + def_bool ARC || ARM || ARM64 || X86 || RISCV
> >
> > The other arches listed here either supply their own include/asm/msi.h
> > or generate it:
> >
> > $ ls arch/*/include/asm/msi.h
> > arch/x86/include/asm/msi.h
> >
> > $ grep msi.h arch/*/include/asm/Kbuild
> > arch/arc/include/asm/Kbuild:generic-y += msi.h
> > arch/arm64/include/asm/Kbuild:generic-y += msi.h
> > arch/arm/include/asm/Kbuild:generic-y += msi.h
> > arch/mips/include/asm/Kbuild:generic-y += msi.h
> > arch/powerpc/include/asm/Kbuild:generic-y += msi.h
> > arch/sparc/include/asm/Kbuild:generic-y += msi.h
> >
> > For example, see
> >
> > f8430eae9f1b ("PCI/MSI: Enable PCI_MSI_IRQ_DOMAIN support for ARC")
> > be091d468a0a ("arm64: PCI/MSI: Use asm-generic/msi.h")
> > 0ab089c2548c ("ARM: Add msi.h to Kbuild")
> >
> > I didn't look into the details of msi.h generation, but I assume
> > RISC-V needs to do something similar? If so, I think that should be
> > part of this patch to avoid issues.
> >
> > If CONFIG_GENERIC_MSI_IRQ_DOMAIN is defined, include/linux/msi.h
> > #includes <asm/msi.h> and I don't see where that would come from.
>
> Commit 251a44888183 ("riscv: include generic support for MSI irqdomains")
> has been merged upstream for this purpose:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=251a44888183003b0380df184835a2c00bfa39d7
>
> The original patch was split into a RISC-V component and a generic PCI
> component to reduce the risk of merge conflicts.
>
> Does that work for you?

Indeed, sorry I missed it. I generally work based on -rc1, and it
looks like 251a44888183 was merged after -rc1.

Since we're after the merge window, the default target would be v5.4,
but I see some post-rc1 pull requests from you, so if you need this in
v5.3, let me know.

I applied your patch to pci/msi for v5.4 for now.

Bjorn