kernel: update linux 3.8 to 3.8.3
[openwrt.git] / target / linux / cns3xxx / patches-3.8 / 300-laguna_support.patch
1 --- a/arch/arm/mach-cns3xxx/Kconfig
2 +++ b/arch/arm/mach-cns3xxx/Kconfig
3 @@ -9,4 +9,12 @@ 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.
6  
7 +config MACH_GW2388
8 +       bool "Support for Gateworks Laguna Platform"
9 +       help
10 +         Include support for the Gateworks Laguna Platform
11 +
12 +         This is a platform with an on-board ARM11 MPCore and has support
13 +         for USB, USB-OTG, MMC/SD/SDIO, SATA, PCI-E, I2C, GIG, etc.
14 +
15  endmenu
16 --- a/arch/arm/mach-cns3xxx/Makefile
17 +++ b/arch/arm/mach-cns3xxx/Makefile
18 @@ -1,5 +1,6 @@
19  obj-$(CONFIG_ARCH_CNS3XXX)             += core.o gpio.o pm.o devices.o
20  obj-$(CONFIG_PCI)                      += pcie.o
21  obj-$(CONFIG_MACH_CNS3420VB)           += cns3420vb.o
22 +obj-$(CONFIG_MACH_GW2388)              += laguna.o
23  obj-$(CONFIG_SMP)                      += platsmp.o headsmp.o cns3xxx_fiq.o
24  obj-$(CONFIG_HOTPLUG_CPU)              += hotplug.o
25 --- a/arch/arm/mach-cns3xxx/devices.c
26 +++ b/arch/arm/mach-cns3xxx/devices.c
27 @@ -19,6 +19,7 @@
28  #include <mach/cns3xxx.h>
29  #include <mach/irqs.h>
30  #include <mach/pm.h>
31 +#include <asm/mach-types.h>
32  #include "core.h"
33  #include "devices.h"
34  
35 @@ -102,7 +103,11 @@ void __init cns3xxx_sdhci_init(void)
36         u32 gpioa_pins = __raw_readl(gpioa);
37  
38         /* MMC/SD pins share with GPIOA */
39 -       gpioa_pins |= 0x1fff0004;
40 +       if (machine_is_gw2388()) {
41 +               gpioa_pins |= 0x1fff0000;
42 +       } else {
43 +               gpioa_pins |= 0x1fff0004;
44 +       }
45         __raw_writel(gpioa_pins, gpioa);
46  
47         cns3xxx_pwr_clk_en(CNS3XXX_PWR_CLK_EN(SDIO));