Message ID | b5959a9f6bfa65f0ae1a6a184e1b09dcec8e8f15.1570539512.git.michal.simek@xilinx.com (mailing list archive) |
---|---|
State | New, archived |
Delegated to: | Bjorn Helgaas |
Headers | show |
Series | [v2] PCI/MSI: Enable PCI_MSI_IRQ_DOMAIN support for Microblaze | expand |
> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig > index a304f5ea11b9..9d259372fbfd 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 || RISCV > + def_bool ARC || ARM || ARM64 || X86 || RISCV || MICROBLAZE Can you find out what the actual dependency is so that we can automatically enabled this instead of the weird arch list?
On Tue, Oct 08, 2019 at 08:46:52AM -0700, Christoph Hellwig wrote: > > diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig > > index a304f5ea11b9..9d259372fbfd 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 || RISCV > > + def_bool ARC || ARM || ARM64 || X86 || RISCV || MICROBLAZE > > Can you find out what the actual dependency is so that we can > automatically enabled this instead of the weird arch list? Hi Michal, I'll wait for your response on whether it's feasible to do something smarter than listing every arch here. Please ping here or post a v3; since I marked this patch "Changed Requested" in patchwork, it's fallen off my to-do list. Bjorn
Hi Bjorn, On 15. 10. 19 1:23, Bjorn Helgaas wrote: > On Tue, Oct 08, 2019 at 08:46:52AM -0700, Christoph Hellwig wrote: >>> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig >>> index a304f5ea11b9..9d259372fbfd 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 || RISCV >>> + def_bool ARC || ARM || ARM64 || X86 || RISCV || MICROBLAZE >> >> Can you find out what the actual dependency is so that we can >> automatically enabled this instead of the weird arch list? > > Hi Michal, I'll wait for your response on whether it's feasible to do > something smarter than listing every arch here. Please ping here or > post a v3; since I marked this patch "Changed Requested" in patchwork, > it's fallen off my to-do list. I was waiting more for you to comment this. I was expecting that the same question came last time when RISCV was added. I am happy to investigate more about it but definitely some your input would help. Thanks, Michal
On Mon, 14 Oct 2019 22:59:07 PDT (-0700), michal.simek@xilinx.com wrote: > Hi Bjorn, > > On 15. 10. 19 1:23, Bjorn Helgaas wrote: >> On Tue, Oct 08, 2019 at 08:46:52AM -0700, Christoph Hellwig wrote: >>>> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig >>>> index a304f5ea11b9..9d259372fbfd 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 || RISCV >>>> + def_bool ARC || ARM || ARM64 || X86 || RISCV || MICROBLAZE >>> >>> Can you find out what the actual dependency is so that we can >>> automatically enabled this instead of the weird arch list? >> >> Hi Michal, I'll wait for your response on whether it's feasible to do >> something smarter than listing every arch here. Please ping here or >> post a v3; since I marked this patch "Changed Requested" in patchwork, >> it's fallen off my to-do list. > > I was waiting more for you to comment this. I was expecting that the > same question came last time when RISCV was added. > I am happy to investigate more about it but definitely some your input > would help. Sorry: we usually try to do things the right way but it looks like this got lost in the shuffle. It really doesn't look like there's any architecture-specific code implementation on our end: commit 251a44888183003b0380df184835a2c00bfa39d7 Author: Wesley Terpstra <wesley@sifive.com> Date: Mon May 20 10:29:26 2019 -0700 riscv: include generic support for MSI irqdomains Some RISC-V systems include PCIe host controllers that support PCIe message-signaled interrupts. For this to work on Linux, we need to enable PCI_MSI_IRQ_DOMAIN and define struct msi_alloc_info. Support for the latter is enabled by including the architecture-generic msi.h include. Signed-off-by: Wesley Terpstra <wesley@sifive.com> [paul.walmsley@sifive.com: split initial patch into one arch/riscv patch and one drivers/pci patch] Signed-off-by: Paul Walmsley <paul.walmsley@sifive.com> diff --git a/arch/riscv/include/asm/Kbuild b/arch/riscv/include/asm/Kbuild index 1efaeddf1e4b..16970f246860 100644 --- a/arch/riscv/include/asm/Kbuild +++ b/arch/riscv/include/asm/Kbuild @@ -22,6 +22,7 @@ generic-y += kvm_para.h generic-y += local.h generic-y += local64.h generic-y += mm-arch-hooks.h +generic-y += msi.h generic-y += percpu.h generic-y += preempt.h generic-y += sections.h I bet that dropping the architectures and adding msi.h everywhere it's not listed will at least get this building. I'll give diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig index a304f5ea11b9..77c1428cd945 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 || RISCV + def_bool y depends on PCI_MSI select GENERIC_MSI_IRQ_DOMAIN a build everywhere to see what falls out.
diff --git a/arch/microblaze/include/asm/Kbuild b/arch/microblaze/include/asm/Kbuild index e5c9170a07fc..83417105c00a 100644 --- a/arch/microblaze/include/asm/Kbuild +++ b/arch/microblaze/include/asm/Kbuild @@ -25,6 +25,7 @@ generic-y += local64.h generic-y += mcs_spinlock.h generic-y += mm-arch-hooks.h generic-y += mmiowb.h +generic-y += msi.h generic-y += parport.h generic-y += percpu.h generic-y += preempt.h diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig index a304f5ea11b9..9d259372fbfd 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 || RISCV + def_bool ARC || ARM || ARM64 || X86 || RISCV || MICROBLAZE depends on PCI_MSI select GENERIC_MSI_IRQ_DOMAIN