diff --git a/arch/arm/mach-pxa/generic.h b/arch/arm/mach-pxa/generic.h index bc12c9421ceff138c6d28f1b3c43980da3640e11..3465268ca71693b182ab39313273ede8236dbed1 100644 --- a/arch/arm/mach-pxa/generic.h +++ b/arch/arm/mach-pxa/generic.h @@ -20,7 +20,6 @@ extern void __init pxa3xx_init_irq(void); extern void __init pxa_map_io(void); extern unsigned int get_clk_frequency_khz(int info); -extern int pxa_last_gpio; #define SET_BANK(__nr,__start,__size) \ mi->bank[__nr].start = (__start), \ diff --git a/arch/arm/mach-pxa/gpio.c b/arch/arm/mach-pxa/gpio.c index 9a33eb07fe0a555f5084e72b54b9f23742666eb0..41935590e9909317801f9f937d389aecfe8ea6b8 100644 --- a/arch/arm/mach-pxa/gpio.c +++ b/arch/arm/mach-pxa/gpio.c @@ -20,6 +20,8 @@ #include +int pxa_last_gpio; + #define GPIO0_BASE (GPIO_REGS_VIRT + 0x0000) #define GPIO1_BASE (GPIO_REGS_VIRT + 0x0004) #define GPIO2_BASE (GPIO_REGS_VIRT + 0x0008) @@ -38,8 +40,6 @@ struct pxa_gpio_chip { void __iomem *regbase; }; -int pxa_last_gpio; - static int pxa_gpio_direction_input(struct gpio_chip *chip, unsigned offset) { unsigned long flags; diff --git a/arch/arm/mach-pxa/include/mach/gpio.h b/arch/arm/mach-pxa/include/mach/gpio.h index be4900ea32da2e0daad1277f4cf8b6d69946e49d..4049b234eda310a44e2661be4c1bb55228e87aa8 100644 --- a/arch/arm/mach-pxa/include/mach/gpio.h +++ b/arch/arm/mach-pxa/include/mach/gpio.h @@ -100,8 +100,11 @@ /* NOTE: some PXAs have fewer on-chip GPIOs (like PXA255, with 85). - * Those cases currently cause holes in the GPIO number space. + * Those cases currently cause holes in the GPIO number space, the + * actual number of the last GPIO is recorded by 'pxa_last_gpio'. */ +extern int pxa_last_gpio; + #define NR_BUILTIN_GPIO 128 static inline int gpio_get_value(unsigned gpio)