ARM: Dove: allow PCI to be disabled
authorRussell King <rmk+kernel@arm.linux.org.uk>
Sun, 9 Sep 2012 19:34:13 +0000 (20:34 +0100)
committerJason Cooper <jason@lakedaemon.net>
Fri, 21 Sep 2012 17:07:26 +0000 (17:07 +0000)
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>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
arch/arm/Kconfig
arch/arm/mach-dove/Makefile
arch/arm/mach-dove/common.h

index 2f88d8d9770116014f7ff55e80d98c65fbb191ed..95041b9937dc76495c66ee8126a0115ab459a0f5 100644 (file)
@@ -573,11 +573,12 @@ config ARCH_MVEBU
 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 USB_ARCH_HAS_EHCI
        help
          Support for the Marvell Dove SoC 88AP510
 
index fa0f018560600b0e4a3d335240e805db4b482d7c..5e683baf96cffc53e0ac8410be6e7505d4fb8557 100644 (file)
@@ -1,4 +1,4 @@
-obj-y                          += common.o addr-map.o irq.o pcie.o mpp.o
-
+obj-y                          += common.o addr-map.o irq.o mpp.o
+obj-$(CONFIG_PCI)              += pcie.o
 obj-$(CONFIG_MACH_DOVE_DB)     += dove-db-setup.o
 obj-$(CONFIG_MACH_CM_A510)     += cm-a510.o
index 6432a3ba864b7058ecc81dcc3df5b90f897bb4d5..1a233404b7355990fd1158da7e598e8f3125c541 100644 (file)
@@ -26,7 +26,11 @@ void dove_init_irq(void);
 void dove_setup_cpu_mbus(void);
 void dove_ge00_init(struct mv643xx_eth_platform_data *eth_data);
 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);