[PATCH] Fix GPIOs bank H and J not being preserved during suspend
Ben Dooks
ben-linux at fluff.org
Thu Mar 4 18:21:15 EST 2010
On Wed, Mar 03, 2010 at 08:00:37AM +0100, Christian Pellegrin wrote:
> This patch adds bank H and J GPIOs (present on S3C244X CPUs) to the list
> of registers that must be saved/resumed during suspend.
>
> Signed-off-by: Christian Pellegrin <chripell at fsfe.org>
> ---
> arch/arm/mach-s3c2410/include/mach/gpio-core.h | 5 +++++
> arch/arm/plat-s3c/pm-gpio.c | 4 ++--
> 2 files changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm/mach-s3c2410/include/mach/gpio-core.h b/arch/arm/mach-s3c2410/include/mach/gpio-core.h
> index f8b879a..de9697c 100644
> --- a/arch/arm/mach-s3c2410/include/mach/gpio-core.h
> +++ b/arch/arm/mach-s3c2410/include/mach/gpio-core.h
> @@ -24,8 +24,13 @@ static inline struct s3c_gpio_chip *s3c_gpiolib_getchip(unsigned int pin)
> {
> struct s3c_gpio_chip *chip;
>
> +#ifdef CONFIG_CPU_S3C244X
> + if (pin > S3C2410_GPJ(15))
> + return NULL;
> +#else
Hmm, could we use the arch define for number of GPIOs here instead
of an ifdef?
if (pin > S3C2410_GPG(10))
> return NULL;
> +#endif
>
> chip = &s3c24xx_gpios[pin/32];
> return (S3C2410_GPIO_OFFSET(pin) < chip->chip.ngpio) ? chip : NULL;
> diff --git a/arch/arm/plat-s3c/pm-gpio.c b/arch/arm/plat-s3c/pm-gpio.c
> index cfd326a..b3cc8db 100644
> --- a/arch/arm/plat-s3c/pm-gpio.c
> +++ b/arch/arm/plat-s3c/pm-gpio.c
> @@ -343,7 +343,7 @@ void s3c_pm_save_gpios(void)
> ourchip->pm_save[2],
> ourchip->pm_save[3]);
>
> - gpio_nr += ourchip->chip.ngpio;
> + gpio_nr += ourchip->chip.ngpio - 1;
> gpio_nr += CONFIG_S3C_GPIO_SPACE;
> }
> }
> @@ -374,7 +374,7 @@ void s3c_pm_restore_gpios(void)
>
> s3c_pm_resume_gpio(ourchip);
>
> - gpio_nr += ourchip->chip.ngpio;
> + gpio_nr += ourchip->chip.ngpio - 1;
> gpio_nr += CONFIG_S3C_GPIO_SPACE;
> }
> }
> --
> 1.5.6.5
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
--
--
Ben
Q: What's a light-year?
A: One-third less calories than a regular year.
More information about the linux-arm-kernel
mailing list