[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20171130230514.GC19640@bhelgaas-glaptop.roam.corp.google.com>
Date: Thu, 30 Nov 2017 17:05:14 -0600
From: Bjorn Helgaas <helgaas@...nel.org>
To: Cyrille Pitchen <cyrille.pitchen@...e-electrons.com>
Cc: Lorenzo Pieralisi <lorenzo.pieralisi@....com>,
Kishon Vijay Abraham I <kishon@...com>,
bhelgaas@...gle.com, linux-pci@...r.kernel.org,
adouglas@...ence.com, stelford@...ence.com, dgary@...ence.com,
kgopi@...ence.com, eandrews@...ence.com,
thomas.petazzoni@...e-electrons.com, sureshp@...ence.com,
nsekhar@...com, linux-kernel@...r.kernel.org, robh@...nel.org,
devicetree@...r.kernel.org
Subject: Re: [PATCH 0/5] PCI: Add support to the Cadence PCIe controller
On Thu, Nov 30, 2017 at 09:05:12PM +0100, Cyrille Pitchen wrote:
> Le 30/11/2017 à 19:45, Cyrille Pitchen a écrit :
> > Le 30/11/2017 à 19:18, Lorenzo Pieralisi a écrit :
> >> On Thu, Nov 30, 2017 at 12:43:20PM +0530, Kishon Vijay Abraham I wrote:
> >>> The reason to patch drivers/Makefile should be because
> >>> pcie-cadence-ep has to be compiled even when CONFIG_PCI is not
> >>> enabled. CONFIG_PCI enables host specific features and ENDPOINT
> >>> shouldn't depend on CONFIG_PCI.
> I know it's far from perfect but what do you think or something like that:
>
> ---8<---------------------------------------------------------------------------
> diff --git a/drivers/Makefile b/drivers/Makefile
> index 27bdd98784d9..9757199b9a65 100644
> --- a/drivers/Makefile
> +++ b/drivers/Makefile
> @@ -16,11 +16,7 @@ obj-$(CONFIG_PINCTRL) += pinctrl/
> obj-$(CONFIG_GPIOLIB) += gpio/
> obj-y += pwm/
>
> -obj-$(CONFIG_PCI) += pci/
> -obj-$(CONFIG_PCI_ENDPOINT) += pci/endpoint/
> -obj-$(CONFIG_PCI_CADENCE) += pci/cadence/
> -# PCI dwc controller drivers
> -obj-y += pci/dwc/
> +obj-y += pci/
>
> obj-$(CONFIG_PARISC) += parisc/
> obj-$(CONFIG_RAPIDIO) += rapidio/
> diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
> index 3d5e047f0a32..4e57fe4499ce 100644
> --- a/drivers/pci/Makefile
> +++ b/drivers/pci/Makefile
> @@ -3,6 +3,7 @@
> # Makefile for the PCI bus specific drivers.
> #
>
> +ifdef CONFIG_PCI
> obj-y += access.o bus.o probe.o host-bridge.o remove.o pci.o \
> pci-driver.o search.o pci-sysfs.o rom.o setup-res.o \
> irq.o vpd.o setup-bus.o vc.o mmap.o setup-irq.o
> @@ -54,3 +55,9 @@ ccflags-$(CONFIG_PCI_DEBUG) := -DDEBUG
> # PCI host controller drivers
> obj-y += host/
> obj-y += switch/
> +endif
> +
> +obj-$(CONFIG_PCI_ENDPOINT) += endpoint/
> +obj-$(CONFIG_PCI_CADENCE) += cadence/
> +# PCI dwc controller drivers
> +obj-y += dwc/
> ---8<---------------------------------------------------------------------------
>
> I admit it doesn't solve the ordering issue but at least it cleans some mess
> in drivers/Makefile.
I like this a lot. I think the only things that would actually
require the ifdef are the generic symbol things (CONFIG_PROC_FS,
CONFIG_SYSFS, CONFIG_OF), so we could do this for most of it:
obj-$(CONFIG_PCI) += access.o bus.o probe.o ...
...
obj-$(CONFIG_PCI_QUIRKS) += quirks.o
obj-$(CONFIG_PCIEPORTBUS) += pcie/
obj-$(CONFIG_PCI) += host/
obj-$(CONFIG_PCI) += switch/
With possibly a few Kconfig dependency tweaks.
Powered by blists - more mailing lists