Re: [PATCH] PCI: keystone: Fix build error while only CONFIG_PCI_KEYSTONE is set
From: Lorenzo Pieralisi
Date: Tue Apr 23 2019 - 05:43:35 EST
On Mon, Apr 22, 2019 at 08:26:17AM -0500, Bjorn Helgaas wrote:
> On Mon, Apr 22, 2019 at 01:19:53PM +0530, Kishon Vijay Abraham I wrote:
> > Hi Bjorn,
> > ...
>
> > Sometime back Niklas had fixed this for DRA7xx in
> >
> > commit b052835c63857e13d9ada3ebc57a8f9e1d124f3a
> > Author: Niklas Cassel <niklas.cassel@xxxxxxxx>
> > Date: Wed Dec 20 00:29:28 2017 +0100
> >
> > PCI: dwc: dra7xx: Refactor Kconfig and Makefile handling for host/ep mode
> >
> > Refactor the Kconfig and Makefile handling for host/ep mode, since
> > the previous handling was a bit unorthodox and would have been a bit
> > bloated once more DWC based controllers added support for ep mode.
> >
> > Signed-off-by: Niklas Cassel <niklas.cassel@xxxxxxxx>
> > Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>
> > Acked-by: Kishon Vijay Abraham I <kishon@xxxxxx>
> >
> > Something similar is applicable for Keystone too as you mentioned without
> > selecting PCI_KEYSTONE_HOST or PCI_KEYSTONE_EP, compiling pci-keystone.c
> > doesn't make sense.
> >
> > Please see if below looks okay to you. This can be merged with "PCI:
> > keystone:Add support for PCIe EP in AM654x Platforms"). Let me know if I have
> > to send it separately with Fixes tag.
>
> Lorenzo merged that commit, so I assume he'll take care of this.
I will squash it in and rebuild the branch, thanks.
Lorenzo
> > 8<---------------------------------------------------------
> > From 8fba36048112cf72c49996fc47fd808534bf9689 Mon Sep 17 00:00:00 2001
> > From: Kishon Vijay Abraham I <kishon@xxxxxx>
> > Date: Mon, 22 Apr 2019 11:42:32 +0530
> > Subject: [PATCH] PCI: keystone: Refactor Kconfig for RC/EP mode
> >
> > Do not allow PCI_KEYSTONE to be visible to user and let user visible
> > CONFIG symbols PCI_KEYSTONE_HOST and PCI_KEYSTONE_EP select
> > PCI_KEYSTONE. This will let pci-keystone.c to be compiled only when
> > either PCI_KEYSTONE_HOST or PCI_KEYSTONE_EP is selected.
> >
> > Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
> > ---
> > drivers/pci/controller/dwc/Kconfig | 24 +++++++++++-------------
> > 1 file changed, 11 insertions(+), 13 deletions(-)
> >
> > diff --git a/drivers/pci/controller/dwc/Kconfig
> > b/drivers/pci/controller/dwc/Kconfig
> > index b450ad2823a5..90618233d15b 100644
> > --- a/drivers/pci/controller/dwc/Kconfig
> > +++ b/drivers/pci/controller/dwc/Kconfig
> > @@ -103,34 +103,32 @@ config PCIE_SPEAR13XX
> > Say Y here if you want PCIe support on SPEAr13XX SoCs.
> >
> > config PCI_KEYSTONE
> > - bool "TI Keystone PCIe controller"
> > - depends on ARCH_KEYSTONE || ARCH_K3 || ((ARM || ARM64) && COMPILE_TEST)
> > - help
> > - Say Y here if you want to enable PCI controller support on Keystone
> > - SoCs. The PCI controller on Keystone is based on DesignWare hardware
> > - and therefore the driver re-uses the DesignWare core functions to
> > - implement the driver.
> > -
> > -if PCI_KEYSTONE
> > + bool
> >
> > config PCI_KEYSTONE_HOST
> > bool "PCI Keystone Host Mode"
> > + depends on ARCH_KEYSTONE || ARCH_K3 || ((ARM || ARM64) && COMPILE_TEST)
> > depends on PCI_MSI_IRQ_DOMAIN
> > select PCIE_DW_HOST
> > + select PCI_KEYSTONE
> > default y
> > help
> > Enables support for the PCIe controller in the Keystone SoC to work in
> > - host mode.
> > + host mode. The PCI controller on Keystone is based on DesignWare hardware
> > + and therefore the driver re-uses the DesignWare core functions to
> > + implement the driver.
> >
> > config PCI_KEYSTONE_EP
> > bool "PCI Keystone Endpoint Mode"
> > + depends on ARCH_KEYSTONE || ARCH_K3 || ((ARM || ARM64) && COMPILE_TEST)
> > depends on PCI_ENDPOINT
> > select PCIE_DW_EP
> > + select PCI_KEYSTONE
> > help
> > Enables support for the PCIe controller in the Keystone SoC to work in
> > - endpoint mode.
> > -
> > -endif
> > + endpoint mode. The PCI controller on Keystone is based on DesignWare hardware
> > + and therefore the driver re-uses the DesignWare core functions to
> > + implement the driver.
> >
> > config PCI_LAYERSCAPE
> > bool "Freescale Layerscape PCIe controller"
> > --
> > 2.17.1