100-laguna_support.patch 1.4 KB

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