fix build with latest gpiolib changes
authorFlorian Fainelli <florian@openwrt.org>
Wed, 3 Oct 2012 16:12:03 +0000 (16:12 +0000)
committerFlorian Fainelli <florian@openwrt.org>
Wed, 3 Oct 2012 16:12:03 +0000 (16:12 +0000)
SVN-Revision: 33605

target/linux/pxa/patches-3.3/001-gumstix_verdex_pro_arch_support.patch
target/linux/pxa/patches-3.3/003-gumstix_h_verdex_pro_support.patch
target/linux/pxa/patches-3.3/005-verdex_pcmcia_support.patch

index 04d8a2f88eaeb098a30bf655c1bda3e10603a265..9d1c0c23210dccc7792982117242fa613a98f429 100644 (file)
@@ -75,7 +75,7 @@ Signed-off-by: Bobby Powers <bobbypowers@gmail.com>
  obj-$(CONFIG_MACH_INTELMOTE2) += stargate2.o
 --- /dev/null
 +++ b/arch/arm/mach-pxa/gumstix-verdex.c
-@@ -0,0 +1,793 @@
+@@ -0,0 +1,794 @@
 +/*
 + *  linux/arch/arm/mach-pxa/gumstix-verdex.c
 + *
@@ -103,6 +103,7 @@ Signed-off-by: Bobby Powers <bobbypowers@gmail.com>
 +#include <linux/i2c/tsc2007.h>
 +#include <linux/i2c/pxa-i2c.h>
 +#include <linux/gpio.h>
++#include <linux/gpio-pxa.h>
 +
 +#include <asm/setup.h>
 +#include <asm/memory.h>
@@ -371,8 +372,8 @@ Signed-off-by: Bobby Powers <bobbypowers@gmail.com>
 +
 +inline void __init gumstix_pcmcia_cpld_clk(void)
 +{
-+      GPCR(GPIO_GUMSTIX_nPOE) = GPIO_bit(GPIO_GUMSTIX_nPOE);
-+      GPSR(GPIO_GUMSTIX_nPOE) = GPIO_bit(GPIO_GUMSTIX_nPOE);
++      gpio_set_value(GPIO_GUMSTIX_nPOE, 0);
++      gpio_set_value(GPIO_GUMSTIX_nPOE, 1);
 +}
 +
 +inline unsigned char __init gumstix_pcmcia_cpld_read_bits(int bits)
@@ -381,7 +382,7 @@ Signed-off-by: Bobby Powers <bobbypowers@gmail.com>
 +      unsigned int shift = 0;
 +      while(bits--)
 +      {
-+              result |= !!(GPLR(GPIO_GUMSTIX_nCD_0) & GPIO_bit(GPIO_GUMSTIX_nCD_0)) << shift;
++              result |= !!(gpio_get_value(GPIO_GUMSTIX_nCD_0) & GPIO_bit(GPIO_GUMSTIX_nCD_0)) << shift;
 +              shift ++;
 +              gumstix_pcmcia_cpld_clk();
 +      }
@@ -438,15 +439,15 @@ Signed-off-by: Bobby Powers <bobbypowers@gmail.com>
 +      }
 +
 +      // Setup the shift register
-+      GPSR(GPIO_GUMSTIX_nPCE_1) = GPIO_bit(GPIO_GUMSTIX_nPCE_1);
-+      GPCR(GPIO_GUMSTIX_nPCE_2) = GPIO_bit(GPIO_GUMSTIX_nPCE_2);
++      gpio_set_value(GPIO_GUMSTIX_nPCE_1, 1);
++      gpio_set_value(GPIO_GUMSTIX_nPCE_2, 0);
 +
 +      // Tick the clock to program the shift register
 +      gumstix_pcmcia_cpld_clk();
 +
 +      // Now set shift register into read mode
-+      GPCR(GPIO_GUMSTIX_nPCE_1) = GPIO_bit(GPIO_GUMSTIX_nPCE_1);
-+      GPSR(GPIO_GUMSTIX_nPCE_2) = GPIO_bit(GPIO_GUMSTIX_nPCE_2);
++      gpio_set_value(GPIO_GUMSTIX_nPCE_1, 0);
++      gpio_set_value(GPIO_GUMSTIX_nPCE_2, 1);
 +
 +      // We can read the bits now -- 0xC2 means "Dual compact flash"
 +      if(gumstix_pcmcia_cpld_read_bits(8) != 0xC2)
@@ -574,9 +575,9 @@ Signed-off-by: Bobby Powers <bobbypowers@gmail.com>
 +      if(on_or_off) {
 +              gpio_direction_input(17);
 +      } else {
-+              GPCR(17) = GPIO_bit(17);
++              gpio_set_value(17, 0);
 +              gpio_direction_output(17, 0);
-+              GPCR(17) = GPIO_bit(17);
++              gpio_set_value(17, 0);
 +      }
 +
 +      return;
@@ -843,7 +844,7 @@ Signed-off-by: Bobby Powers <bobbypowers@gmail.com>
 +#ifdef CONFIG_FB_PXA_SHARP_LQ043_PSP
 +      /* DISP must be always high while screen is on */
 +      gpio_direction_output(GPIO77, 0);
-+      GPSR(GPIO77) = GPIO_bit(GPIO77);
++      gpio_set_value(GPIO77, 1);
 +#endif
 +      verdex_udc_init();
 +      verdex_mmc_init();
index 74e0c4643f2f4d56e44357e6c1cd2c006813dff8..6dd291d48331182c39e88addf8ee3bd399b2d116 100644 (file)
@@ -42,7 +42,7 @@ Signed-off-by: Bobby Powers <bobbypowers@gmail.com>
  /* usb state change */
  #define GUMSTIX_USB_INTR_IRQ          PXA_GPIO_TO_IRQ(GPIO_GUMSTIX_USB_GPIOn)
  
-@@ -42,48 +54,135 @@ has detected a cable insertion; driven l
+@@ -42,48 +54,136 @@ has detected a cable insertion; driven l
   * ETH_RST provides a hardware reset line to the ethernet chip
   * ETH is the IRQ line in from the ethernet chip to the PXA
   */
@@ -66,13 +66,13 @@ Signed-off-by: Bobby Powers <bobbypowers@gmail.com>
 -#define GPIO_GUMSTIX_ETH1             27
  #define GPIO_GUMSTIX_ETH1_MD          (GPIO_GUMSTIX_ETH1 | GPIO_IN)
 -#define GUMSTIX_ETH1_IRQ              PXA_GPIO_TO_IRQ(GPIO_GUMSTIX_ETH1)
+-
  
+-/* CF reset line */
+-#define GPIO8_RESET                   8
 +#define GUMSTIX_ETH0_IRQ              PXA_GPIO_TO_IRQ(GPIO_GUMSTIX_ETH0)
 +#define GUMSTIX_ETH1_IRQ              PXA_GPIO_TO_IRQ(GPIO_GUMSTIX_ETH1)
  
--/* CF reset line */
--#define GPIO8_RESET                   8
--
 -/* CF slot 0 */
 -#define GPIO4_nBVD1                   4
 -#define GPIO4_nSTSCHG                 GPIO4_nBVD1
@@ -159,6 +159,7 @@ Signed-off-by: Bobby Powers <bobbypowers@gmail.com>
 +#endif
 +
 +#define GPIO_GUMSTIX_PRDY_nBSY_0_OLD  GPIO109_PRDY_nBSY_0
++#define GUMSTIX_S0_PRDY_nBSY_OLD_IRQ  PXA_GPIO_TO_IRQ(GPIO109_PRDY_nBSY_0)
 +
 +#define GUMSTIX_S0_nSTSCHG_IRQ                PXA_GPIO_TO_IRQ(GPIO_GUMSTIX_nSTSCHG_0)
 +#define GUMSTIX_S0_nCD_IRQ            PXA_GPIO_TO_IRQ(GPIO_GUMSTIX_nCD_0)
@@ -169,6 +170,18 @@ Signed-off-by: Bobby Powers <bobbypowers@gmail.com>
 -#define GPIO18_nSTSCHG                        GPIO18_nBVD1
 -#define GPIO36_nCD                    36
 -#define GPIO27_PRDY_nBSY              27
+-#define GUMSTIX_S1_nSTSCHG_IRQ                PXA_GPIO_TO_IRQ(GPIO18_nSTSCHG)
+-#define GUMSTIX_S1_nCD_IRQ            PXA_GPIO_TO_IRQ(GPIO36_nCD)
+-#define GUMSTIX_S1_PRDY_nBSY_IRQ      PXA_GPIO_TO_IRQ(GPIO27_PRDY_nBSY)
+-
+-/* CF GPIO line modes */
+-#define GPIO4_nSTSCHG_MD              (GPIO4_nSTSCHG | GPIO_IN)
+-#define GPIO8_RESET_MD                        (GPIO8_RESET | GPIO_OUT)
+-#define GPIO11_nCD_MD                 (GPIO11_nCD | GPIO_IN)
+-#define GPIO18_nSTSCHG_MD             (GPIO18_nSTSCHG | GPIO_IN)
+-#define GPIO26_PRDY_nBSY_MD           (GPIO26_PRDY_nBSY | GPIO_IN)
+-#define GPIO27_PRDY_nBSY_MD           (GPIO27_PRDY_nBSY | GPIO_IN)
+-#define GPIO36_nCD_MD                 (GPIO36_nCD | GPIO_IN)
 +#define GPIO18_nBVD1_1                        18
 +#define GPIO18_nSTSCHG_1              GPIO18_nBVD1_1
 +#define GPIO36_nCD_1                  36
@@ -179,18 +192,10 @@ Signed-off-by: Bobby Powers <bobbypowers@gmail.com>
 +#define GPIO_GUMSTIX_nCD_1            GPIO36_nCD_1
 +#define GPIO_GUMSTIX_PRDY_nBSY_1      GPIO27_PRDY_nBSY_1
 +
- #define GUMSTIX_S1_nSTSCHG_IRQ                PXA_GPIO_TO_IRQ(GPIO18_nSTSCHG)
- #define GUMSTIX_S1_nCD_IRQ            PXA_GPIO_TO_IRQ(GPIO36_nCD)
- #define GUMSTIX_S1_PRDY_nBSY_IRQ      PXA_GPIO_TO_IRQ(GPIO27_PRDY_nBSY)
--/* CF GPIO line modes */
--#define GPIO4_nSTSCHG_MD              (GPIO4_nSTSCHG | GPIO_IN)
--#define GPIO8_RESET_MD                        (GPIO8_RESET | GPIO_OUT)
--#define GPIO11_nCD_MD                 (GPIO11_nCD | GPIO_IN)
--#define GPIO18_nSTSCHG_MD             (GPIO18_nSTSCHG | GPIO_IN)
--#define GPIO26_PRDY_nBSY_MD           (GPIO26_PRDY_nBSY | GPIO_IN)
--#define GPIO27_PRDY_nBSY_MD           (GPIO27_PRDY_nBSY | GPIO_IN)
--#define GPIO36_nCD_MD                 (GPIO36_nCD | GPIO_IN)
++#define GUMSTIX_S1_nSTSCHG_IRQ                PXA_GPIO_TO_IRQ(GPIO18_nSTSCHG_1)
++#define GUMSTIX_S1_nCD_IRQ            PXA_GPIO_TO_IRQ(GPIO36_nCD_1)
++#define GUMSTIX_S1_PRDY_nBSY_IRQ      PXA_GPIO_TO_IRQ(GPIO27_PRDY_nBSY_1)
++
 +/* CF GPIO line modes - correspond to mfp-pxa2[57]x.h */
 +#define GPIO_GUMSTIX_CF_RESET_MD      (GPIO_GUMSTIX_CF_RESET | GPIO_OUT)
 +#define GPIO_GUMSTIX_CF_OLD_RESET_MD  (GPIO_GUMSTIX_CF_OLD_RESET | GPIO_OUT)
index f2a53d35c6e721ee6c16ccc2c085e25366d4427d..f369cf21d38fc6904d848b35de9b88a8c7064204 100644 (file)
@@ -38,7 +38,7 @@ Signed-off-by: Bobby Powers <bobbypowers@gmail.com>
  obj-$(CONFIG_PCMCIA_XXS1500)                  += xxs1500_ss.o
 --- /dev/null
 +++ b/drivers/pcmcia/pxa2xx_gumstix.c
-@@ -0,0 +1,194 @@
+@@ -0,0 +1,195 @@
 +/*
 + * linux/drivers/pcmcia/pxa2xx_gumstix.c
 + *
@@ -62,16 +62,14 @@ Signed-off-by: Bobby Powers <bobbypowers@gmail.com>
 +#include <linux/delay.h>
 +#include <linux/platform_device.h>
 +
++#include <linux/gpio-pxa.h>
++
 +#include <pcmcia/ss.h>
 +
 +#include <mach/hardware.h>
 +#include <asm/mach-types.h>
 +
-+#ifdef CONFIG_MACH_GUMSTIX_VERDEX
-+#include <mach/pxa27x.h>
-+#else
 +#include <mach/pxa27x.h>
-+#endif
 +
 +#include <asm/io.h>
 +#include <mach/gpio.h>
@@ -80,6 +78,9 @@ Signed-off-by: Bobby Powers <bobbypowers@gmail.com>
 +
 +#define ARRAY_AND_SIZE(x)     (x), ARRAY_SIZE(x)
 +
++#define BANK_OFF(n)     (((n) < 3) ? (n) << 2 : 0x100 + (((n) - 3) << 2))
++#define GPLR(x)         __REG2(0x40E00000, BANK_OFF((x) >> 5))
++
 +static struct pcmcia_irqs gumstix_pcmcia_irqs0[] = {
 +      { 0, GUMSTIX_S0_nCD_IRQ,        "CF0 nCD"     },
 +      { 0, GUMSTIX_S0_nSTSCHG_IRQ,    "CF0 nSTSCHG" },
@@ -98,7 +99,7 @@ Signed-off-by: Bobby Powers <bobbypowers@gmail.com>
 +/* Note: The verdex_pcmcia_pin_config is moved to gumstix_verdex.c in order to use mfp_pxa2xx_config
 +   for board-specific pin configuration instead of the old deprecated pxa_gpio_mode function.  Thus,
 +   only the IRQ init is still needed to be done here. */
-+      skt->irq = (skt->nr == 0) ? ((net_cf_vx_mode == 0) ? GUMSTIX_S0_PRDY_nBSY_IRQ : GUMSTIX_S0_PRDY_nBSY_OLD_IRQ) : GUMSTIX_S1_PRDY_nBSY_IRQ;
++      skt->socket.pci_irq = (skt->nr == 0) ? ((net_cf_vx_mode == 0) ? GUMSTIX_S0_PRDY_nBSY_IRQ : GUMSTIX_S0_PRDY_nBSY_OLD_IRQ) : GUMSTIX_S1_PRDY_nBSY_IRQ;
 +
 +      return (skt->nr == 0) ? soc_pcmcia_request_irqs(skt, gumstix_pcmcia_irqs0, ARRAY_SIZE(gumstix_pcmcia_irqs0)) :
 +                              soc_pcmcia_request_irqs(skt, gumstix_pcmcia_irqs1, ARRAY_SIZE(gumstix_pcmcia_irqs1));
@@ -138,9 +139,9 @@ Signed-off-by: Bobby Powers <bobbypowers@gmail.com>
 +              prdy_nbsy = GPIO_GUMSTIX_PRDY_nBSY_1;
 +              nbvd1 = GPIO_GUMSTIX_nBVD1_1;
 +      }
-+      state->detect = !(GPLR(cd) & GPIO_bit(cd));
-+      state->ready  = !!(GPLR(prdy_nbsy) & GPIO_bit(prdy_nbsy));
-+      state->bvd1   = !!(GPLR(nbvd1) & GPIO_bit(nbvd1));
++      state->detect = !!gpio_get_value(cd);
++      state->ready  = !!gpio_get_value(prdy_nbsy);
++      state->bvd1   = !!gpio_get_value(nbvd1);
 +      state->bvd2   = 1;
 +      state->vs_3v  = 0;
 +      state->vs_Xv  = 0;