diff mbox series

PCI: dwc: exynos: add back MSI dependency

Message ID 20201204165841.3845589-1-arnd@kernel.org (mailing list archive)
State Superseded
Headers show
Series PCI: dwc: exynos: add back MSI dependency | expand

Commit Message

Arnd Bergmann Dec. 4, 2020, 4:58 p.m. UTC
From: Arnd Bergmann <arnd@arndb.de>

While the exynos driver does not always need MSI, the generic
deisgnware host code it uses fails to build without it:

WARNING: unmet direct dependencies detected for PCIE_DW_HOST
  Depends on [n]: PCI [=y] && PCI_MSI_IRQ_DOMAIN [=n]
  Selected by [y]:
  - PCI_EXYNOS [=y] && PCI [=y] && (ARCH_EXYNOS [=n] || COMPILE_TEST [=y])
drivers/pci/controller/dwc/pcie-designware-host.c:247:19: error: implicit declaration of function 'pci_msi_create_irq_domain' [-Werror,-Wimplicit-function-declaration]
        pp->msi_domain = pci_msi_create_irq_domain(fwnode,
                         ^

Add back the dependency that all other designware controllers have.

Fixes: f0a6743028f9 ("PCI: dwc: exynos: Rework the driver to support Exynos5433 variant")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 drivers/pci/controller/dwc/Kconfig | 1 +
 1 file changed, 1 insertion(+)

Comments

Rob Herring Dec. 7, 2020, 2:23 p.m. UTC | #1
On Fri, Dec 4, 2020 at 10:58 AM Arnd Bergmann <arnd@kernel.org> wrote:
>
> From: Arnd Bergmann <arnd@arndb.de>
>
> While the exynos driver does not always need MSI, the generic
> deisgnware host code it uses fails to build without it:
>
> WARNING: unmet direct dependencies detected for PCIE_DW_HOST
>   Depends on [n]: PCI [=y] && PCI_MSI_IRQ_DOMAIN [=n]
>   Selected by [y]:
>   - PCI_EXYNOS [=y] && PCI [=y] && (ARCH_EXYNOS [=n] || COMPILE_TEST [=y])
> drivers/pci/controller/dwc/pcie-designware-host.c:247:19: error: implicit declaration of function 'pci_msi_create_irq_domain' [-Werror,-Wimplicit-function-declaration]
>         pp->msi_domain = pci_msi_create_irq_domain(fwnode,
>                          ^
>
> Add back the dependency that all other designware controllers have.
>
> Fixes: f0a6743028f9 ("PCI: dwc: exynos: Rework the driver to support Exynos5433 variant")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
>  drivers/pci/controller/dwc/Kconfig | 1 +
>  1 file changed, 1 insertion(+)

Seems like we should rework this to avoid select on options with
depends, but that's a separate change.

> diff --git a/drivers/pci/controller/dwc/Kconfig b/drivers/pci/controller/dwc/Kconfig
> index 020101b58155..e403bb2eeb4c 100644
> --- a/drivers/pci/controller/dwc/Kconfig
> +++ b/drivers/pci/controller/dwc/Kconfig
> @@ -85,6 +85,7 @@ config PCIE_DW_PLAT_EP
>  config PCI_EXYNOS
>         tristate "Samsung Exynos PCIe controller"
>         depends on ARCH_EXYNOS || COMPILE_TEST
> +       depends on PCI && PCI_MSI_IRQ_DOMAIN

PCI isn't needed here.

>         select PCIE_DW_HOST
>         help
>           Enables support for the PCIe controller in the Samsung Exynos SoCs
> --
> 2.27.0
>
Arnd Bergmann Dec. 7, 2020, 2:48 p.m. UTC | #2
On Mon, Dec 7, 2020 at 3:23 PM Rob Herring <robh@kernel.org> wrote:
> On Fri, Dec 4, 2020 at 10:58 AM Arnd Bergmann <arnd@kernel.org> wrote:
> > diff --git a/drivers/pci/controller/dwc/Kconfig b/drivers/pci/controller/dwc/Kconfig
> > index 020101b58155..e403bb2eeb4c 100644
> > --- a/drivers/pci/controller/dwc/Kconfig
> > +++ b/drivers/pci/controller/dwc/Kconfig
> > @@ -85,6 +85,7 @@ config PCIE_DW_PLAT_EP
> >  config PCI_EXYNOS
> >         tristate "Samsung Exynos PCIe controller"
> >         depends on ARCH_EXYNOS || COMPILE_TEST
> > +       depends on PCI && PCI_MSI_IRQ_DOMAIN
>
> PCI isn't needed here.

Ah right. I had copied this from PCIE_DW_PLAT_HOST, and
I'm fairly sure it used to be needed at some point in the past,
but the Kconfig file has been changed enough over time that
it clearly is not needed any more, as the entire menu depends on
PCI nowadays, i.e. you can no longer have an endpoint-only
configuration.

      Arnd
diff mbox series

Patch

diff --git a/drivers/pci/controller/dwc/Kconfig b/drivers/pci/controller/dwc/Kconfig
index 020101b58155..e403bb2eeb4c 100644
--- a/drivers/pci/controller/dwc/Kconfig
+++ b/drivers/pci/controller/dwc/Kconfig
@@ -85,6 +85,7 @@  config PCIE_DW_PLAT_EP
 config PCI_EXYNOS
 	tristate "Samsung Exynos PCIe controller"
 	depends on ARCH_EXYNOS || COMPILE_TEST
+	depends on PCI && PCI_MSI_IRQ_DOMAIN
 	select PCIE_DW_HOST
 	help
 	  Enables support for the PCIe controller in the Samsung Exynos SoCs