diff mbox

ARM: Dove: allow PCI to be disabled

Message ID 20120815085709.GI18957@n2100.arm.linux.org.uk (mailing list archive)
State New, archived
Headers show

Commit Message

Russell King - ARM Linux Aug. 15, 2012, 8:57 a.m. UTC
Allow PCI support for Dove to be disabled.  Some platforms do not have
anything connected to the PCIe ports, so requiring PCI support to be
built into the kernel just wastes space, and presents a lot more config
options than are necessary.

However, select USB_ARCH_HAS_EHCI so that we can still have EHCI
support.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
---
 arch/arm/Kconfig            |    3 ++-
 arch/arm/mach-dove/Makefile |    3 ++-
 arch/arm/mach-dove/common.h |    4 ++++
 3 files changed, 8 insertions(+), 2 deletions(-)

Comments

Jason Cooper Aug. 15, 2012, 12:18 p.m. UTC | #1
On Wed, Aug 15, 2012 at 09:57:09AM +0100, Russell King - ARM Linux wrote:
> Allow PCI support for Dove to be disabled.  Some platforms do not have
> anything connected to the PCIe ports, so requiring PCI support to be
> built into the kernel just wastes space, and presents a lot more config
> options than are necessary.
> 
> However, select USB_ARCH_HAS_EHCI so that we can still have EHCI
> support.
> 
> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
> ---
>  arch/arm/Kconfig            |    3 ++-
>  arch/arm/mach-dove/Makefile |    3 ++-
>  arch/arm/mach-dove/common.h |    4 ++++
>  3 files changed, 8 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 27f5b2c..344d40e 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -536,14 +536,15 @@ config ARCH_IXP4XX
>  config ARCH_DOVE
>  	bool "Marvell Dove"
>  	select CPU_V7
> -	select PCI
>  	select ARCH_REQUIRE_GPIOLIB
>  	select GENERIC_CLOCKEVENTS
> +	select MIGHT_HAVE_PCI
>  	select NEED_MACH_IO_H
>  	select PLAT_ORION
>  	select CLKDEV_LOOKUP
>  	select NEED_MACH_MEMORY_H
>  	select COMMON_CLK
> +	select USB_ARCH_HAS_EHCI
>  	help
>  	  Support for the Marvell Dove SoC 88AP510
>  
> diff --git a/arch/arm/mach-dove/Makefile b/arch/arm/mach-dove/Makefile
> index 7d89269..b5a5773 100644
> --- a/arch/arm/mach-dove/Makefile
> +++ b/arch/arm/mach-dove/Makefile
> @@ -1,4 +1,5 @@
> -obj-y				+= common.o addr-map.o irq.o pcie.o mpp.o clock.o dump_cp15_regs.o
> +obj-y				+= common.o addr-map.o irq.o mpp.o clock.o dump_cp15_regs.o
> +obj-$(CONFIG_PCI)		+= pcie.o
>  
>  obj-$(CONFIG_MACH_DOVE_DB)	+= dove-db-setup.o
>  obj-$(CONFIG_MACH_CM_A510)	+= cm-a510.o
> diff --git a/arch/arm/mach-dove/common.h b/arch/arm/mach-dove/common.h
> index 2ea271d..17404a0 100644
> --- a/arch/arm/mach-dove/common.h
> +++ b/arch/arm/mach-dove/common.h
> @@ -29,7 +29,11 @@ void dove_setup_cpu_mbus(void);
>  void dove_ge00_init(struct mv643xx_eth_platform_data *eth_data);
>  void dove_hwmon_init(void);
>  void dove_sata_init(struct mv_sata_platform_data *sata_data);
> +#ifdef CONfig_PCI

ummm...   ^^^^^^ is this a typo?  (/me dives into a trench)

>  void dove_pcie_init(int init_port0, int init_port1);
> +#else
> +static inline void dove_pcie_init(int init_port0, int init_port1) { }
> +#endif
>  void dove_ehci0_init(void);
>  void dove_ehci1_init(void);
>  void dove_uart0_init(void);

thx,

Jason.
Russell King - ARM Linux Aug. 15, 2012, 2:52 p.m. UTC | #2
On Wed, Aug 15, 2012 at 08:18:01AM -0400, Jason Cooper wrote:
> On Wed, Aug 15, 2012 at 09:57:09AM +0100, Russell King - ARM Linux wrote:
> > +#ifdef CONfig_PCI
> 
> ummm...   ^^^^^^ is this a typo?  (/me dives into a trench)

No, it's your imagination playing tricks again. :)  I'll get a new patch
out when I'm in a state that I can redo the git commit without destroying
the current state of my development git tree.

(which may be a while as I'm trying to sort out why ubuntu 12.04 userspace
seems to be a total disaster on the cubox.)
diff mbox

Patch

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 27f5b2c..344d40e 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -536,14 +536,15 @@  config ARCH_IXP4XX
 config ARCH_DOVE
 	bool "Marvell Dove"
 	select CPU_V7
-	select PCI
 	select ARCH_REQUIRE_GPIOLIB
 	select GENERIC_CLOCKEVENTS
+	select MIGHT_HAVE_PCI
 	select NEED_MACH_IO_H
 	select PLAT_ORION
 	select CLKDEV_LOOKUP
 	select NEED_MACH_MEMORY_H
 	select COMMON_CLK
+	select USB_ARCH_HAS_EHCI
 	help
 	  Support for the Marvell Dove SoC 88AP510
 
diff --git a/arch/arm/mach-dove/Makefile b/arch/arm/mach-dove/Makefile
index 7d89269..b5a5773 100644
--- a/arch/arm/mach-dove/Makefile
+++ b/arch/arm/mach-dove/Makefile
@@ -1,4 +1,5 @@ 
-obj-y				+= common.o addr-map.o irq.o pcie.o mpp.o clock.o dump_cp15_regs.o
+obj-y				+= common.o addr-map.o irq.o mpp.o clock.o dump_cp15_regs.o
+obj-$(CONFIG_PCI)		+= pcie.o
 
 obj-$(CONFIG_MACH_DOVE_DB)	+= dove-db-setup.o
 obj-$(CONFIG_MACH_CM_A510)	+= cm-a510.o
diff --git a/arch/arm/mach-dove/common.h b/arch/arm/mach-dove/common.h
index 2ea271d..17404a0 100644
--- a/arch/arm/mach-dove/common.h
+++ b/arch/arm/mach-dove/common.h
@@ -29,7 +29,11 @@  void dove_setup_cpu_mbus(void);
 void dove_ge00_init(struct mv643xx_eth_platform_data *eth_data);
 void dove_hwmon_init(void);
 void dove_sata_init(struct mv_sata_platform_data *sata_data);
+#ifdef CONfig_PCI
 void dove_pcie_init(int init_port0, int init_port1);
+#else
+static inline void dove_pcie_init(int init_port0, int init_port1) { }
+#endif
 void dove_ehci0_init(void);
 void dove_ehci1_init(void);
 void dove_uart0_init(void);