summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Parsons <lost.distance@yahoo.com>2011-05-08 01:54:33 +0000
committerAndi Kleen <ak@linux.intel.com>2011-08-01 13:55:03 -0700
commitdd4e598f13dd3e9c871034dd22ace5977fa4c37a (patch)
treef0e9bbb5765d9cdc27bc4047eea0886df966ce2a
parent788ae7963e9b103697d23a773dc1449533bf2e79 (diff)
ARM: pxa: fix PGSR register address calculation
[ upstream commit beb0c9b056b1c23d2029b46a425362e9ccbeba01 ] The file mfp-pxa2xx.c defines a macro, PGSR(), which translates a gpio bank number to a PGSR register address. The function pxa2xx_mfp_suspend() erroneously passed in a gpio number instead of a gpio bank number. Signed-off-by: Paul Parsons <lost.distance@yahoo.com> Cc: stable@kernel.org Signed-off-by: Eric Miao <eric.y.miao@gmail.com> Signed-off-by: Andi Kleen <ak@linux.intel.com>
-rw-r--r--arch/arm/mach-pxa/mfp-pxa2xx.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/arm/mach-pxa/mfp-pxa2xx.c b/arch/arm/mach-pxa/mfp-pxa2xx.c
index 1d1419b73457..dfff1de92bf2 100644
--- a/arch/arm/mach-pxa/mfp-pxa2xx.c
+++ b/arch/arm/mach-pxa/mfp-pxa2xx.c
@@ -347,9 +347,9 @@ static int pxa2xx_mfp_suspend(struct sys_device *d, pm_message_t state)
if ((gpio_desc[i].config & MFP_LPM_KEEP_OUTPUT) &&
(GPDR(i) & GPIO_bit(i))) {
if (GPLR(i) & GPIO_bit(i))
- PGSR(i) |= GPIO_bit(i);
+ PGSR(gpio_to_bank(i)) |= GPIO_bit(i);
else
- PGSR(i) &= ~GPIO_bit(i);
+ PGSR(gpio_to_bank(i)) &= ~GPIO_bit(i);
}
}