[PATCH v3 2/2] msm: gpio: Add irq support to v2 gpiolib.
Pavan Kondeti
pkondeti at codeaurora.org
Thu Nov 18 06:15:27 EST 2010
Hi Greg,
On Tue, Nov 16, 2010 at 01:38:36PM -0800, Gregory Bean wrote:
> Complete the MSM v2 gpio subsystem by adding irq_chip.
>
> Signed-off-by: Gregory Bean <gbean at codeaurora.org>
> ---
> arch/arm/mach-msm/gpio-v2.c | 344 ++++++++++++++++++++++++++++++++++++++++---
> 1 files changed, 326 insertions(+), 18 deletions(-)
>
>
> +#ifdef CONFIG_PM
> +static int msm_gpio_suspend_noirq(struct device *dev)
> +{
> + unsigned long irq_flags;
> + unsigned long i;
> +
> + spin_lock_irqsave(&tlmm_lock, irq_flags);
> + for_each_set_bit(i, msm_gpio.enabled_irqs, NR_GPIO_IRQS) {
> + if (!test_bit(i, msm_gpio.wake_irqs))
> + writel(TARGET_PROC_NONE, GPIO_INTR_CFG_SU(i));
> + }
If none of the enabled irqs is configured as a wakeup source, should not we
disable the summary IRQ?
> + spin_unlock_irqrestore(&tlmm_lock, irq_flags);
> + return 0;
> +}
> +
> +static int msm_gpio_resume_noirq(struct device *dev)
> +{
> + unsigned long irq_flags;
> + unsigned long i;
> +
> + spin_lock_irqsave(&tlmm_lock, irq_flags);
> + for_each_set_bit(i, msm_gpio.enabled_irqs, NR_GPIO_IRQS)
> + writel(TARGET_PROC_SCORPION, GPIO_INTR_CFG_SU(i));
> + spin_unlock_irqrestore(&tlmm_lock, irq_flags);
> + return 0;
> +}
> +#else
> +#define msm_gpio_suspend_noirq NULL
> +#define msm_gpio_resume_noirq NULL
> +#endif
> +
--
Sent by a consultant of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.
More information about the linux-arm-kernel
mailing list