diff options
author | eric miao <eric.y.miao@gmail.com> | 2007-08-29 05:18:47 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2007-10-12 16:15:32 -0400 |
commit | 30f0b40844e5add7ad879e2f5939ff498f72f3e6 (patch) | |
tree | c899a6cc6b9e3a0d998b6b5e15d3208eae51dcfb /arch/arm/mach-pxa/irq.c | |
parent | 37c2f779a4eabf7c6a39e6f9ded0ec3471ed5995 (diff) |
[ARM] 4559/1: pxa: make PXA_LAST_GPIO a run-time variable
This definition produces processor specific code in generic function
pxa_gpio_mode(), thus creating inconsistencies for support of pxa25x
and pxa27x in a single zImage.
As David Brownell suggests, make it a run-time variable and initialize
at run-time according to the number of GPIOs on the processor. For now
the initialization happens in pxa_init_irq_gpio(), since there is
already a parameter for that, besides, this is and MUST be earlier
than any subsequent calls to pxa_gpio_mode().
Signed-off-by: eric miao <eric.y.miao@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-pxa/irq.c')
-rw-r--r-- | arch/arm/mach-pxa/irq.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm/mach-pxa/irq.c b/arch/arm/mach-pxa/irq.c index ae2ae08032d7..3d95442d4168 100644 --- a/arch/arm/mach-pxa/irq.c +++ b/arch/arm/mach-pxa/irq.c | |||
@@ -349,6 +349,8 @@ void __init pxa_init_irq_gpio(int gpio_nr) | |||
349 | { | 349 | { |
350 | int irq, i; | 350 | int irq, i; |
351 | 351 | ||
352 | pxa_last_gpio = gpio_nr - 1; | ||
353 | |||
352 | /* clear all GPIO edge detects */ | 354 | /* clear all GPIO edge detects */ |
353 | for (i = 0; i < gpio_nr; i += 32) { | 355 | for (i = 0; i < gpio_nr; i += 32) { |
354 | GFER(i) = 0; | 356 | GFER(i) = 0; |