Просмотр исходного кода

cns3xxx: Fix GPIO configuration for Gateworks Laguna boards

The Laguna boards do not use all the same pins for SDHCI as the Cavium
reference board.

Signed-off-by: Tim Harvey <[email protected]>

SVN-Revision: 33684
Felix Fietkau 13 лет назад
Родитель
Сommit
85871f283a
1 измененных файлов с 23 добавлено и 0 удалено
  1. 23 0
      target/linux/cns3xxx/patches-3.3/300-laguna_support.patch

+ 23 - 0
target/linux/cns3xxx/patches-3.3/300-laguna_support.patch

@@ -963,3 +963,26 @@
  obj-$(CONFIG_SMP)			+= platsmp.o headsmp.o
  obj-$(CONFIG_HOTPLUG_CPU)		+= hotplug.o
  obj-$(CONFIG_LOCAL_TIMERS)		+= localtimer.o
+--- a/arch/arm/mach-cns3xxx/devices.c
++++ b/arch/arm/mach-cns3xxx/devices.c
+@@ -19,6 +19,7 @@
+ #include <mach/cns3xxx.h>
+ #include <mach/irqs.h>
+ #include <mach/pm.h>
++#include <asm/mach-types.h>
+ #include "core.h"
+ #include "devices.h"
+ 
+@@ -102,7 +103,11 @@ void __init cns3xxx_sdhci_init(void)
+ 	u32 gpioa_pins = __raw_readl(gpioa);
+ 
+ 	/* MMC/SD pins share with GPIOA */
+-	gpioa_pins |= 0x1fff0004;
++	if (machine_is_gw2388()) {
++		gpioa_pins |= 0x1fff0000;
++	} else {
++		gpioa_pins |= 0x1fff0004;
++	}
+ 	__raw_writel(gpioa_pins, gpioa);
+ 
+ 	cns3xxx_pwr_clk_en(CNS3XXX_PWR_CLK_EN(SDIO));