1 --- a/arch/arm/mach-cns3xxx/Kconfig
2 +++ b/arch/arm/mach-cns3xxx/Kconfig
3 @@ -11,4 +11,14 @@ config MACH_CNS3420VB
4 This is a platform with an on-board ARM11 MPCore and has support
5 for USB, USB-OTG, MMC/SD/SDIO, SATA, PCI-E, etc.
8 + bool "Support for Gateworks Laguna Platform"
9 + select HAVE_ARM_SCU if SMP
10 + select MIGHT_HAVE_PCI
12 + Include support for the Gateworks Laguna Platform
14 + This is a platform with an on-board ARM11 MPCore and has support
15 + for USB, USB-OTG, MMC/SD/SDIO, SATA, PCI-E, I2C, GIG, etc.
18 --- a/arch/arm/mach-cns3xxx/Makefile
19 +++ b/arch/arm/mach-cns3xxx/Makefile
21 obj-$(CONFIG_ARCH_CNS3XXX) += core.o pm.o devices.o
22 obj-$(CONFIG_PCI) += pcie.o
23 obj-$(CONFIG_MACH_CNS3420VB) += cns3420vb.o
24 +obj-$(CONFIG_MACH_GW2388) += laguna.o
25 obj-$(CONFIG_SMP) += platsmp.o headsmp.o
26 obj-$(CONFIG_HOTPLUG_CPU) += hotplug.o
27 obj-$(CONFIG_LOCAL_TIMERS) += localtimer.o
28 --- a/arch/arm/mach-cns3xxx/devices.c
29 +++ b/arch/arm/mach-cns3xxx/devices.c
31 #include <mach/cns3xxx.h>
32 #include <mach/irqs.h>
34 +#include <asm/mach-types.h>
38 @@ -102,7 +103,11 @@ void __init cns3xxx_sdhci_init(void)
39 u32 gpioa_pins = __raw_readl(gpioa);
41 /* MMC/SD pins share with GPIOA */
42 - gpioa_pins |= 0x1fff0004;
43 + if (machine_is_gw2388()) {
44 + gpioa_pins |= 0x1fff0000;
46 + gpioa_pins |= 0x1fff0004;
48 __raw_writel(gpioa_pins, gpioa);
50 cns3xxx_pwr_clk_en(CNS3XXX_PWR_CLK_EN(SDIO));