Re: [PATCH 2/6] gpio/omap: remove saved_wakeup field from struct gpio_bank
Tarun Kanti DebBarma tarun.ka...@ti.com writes: There is no more need to have saved_wakeup. Instead we can use context.wake_en which holds the current wakeup enable register context. This also means that the read from wakeup enable register is not needed. Signed-off-by: Tarun Kanti DebBarma tarun.ka...@ti.com Looks right, but one question below... --- drivers/gpio/gpio-omap.c | 13 - 1 files changed, 4 insertions(+), 9 deletions(-) diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c index 40a1fb2..64f15d5 100644 --- a/drivers/gpio/gpio-omap.c +++ b/drivers/gpio/gpio-omap.c @@ -54,7 +54,6 @@ struct gpio_bank { u16 irq; u16 virtual_irq_start; u32 suspend_wakeup; - u32 saved_wakeup; u32 non_wakeup_gpios; u32 enabled_non_wakeup_gpios; struct gpio_regs context; @@ -772,7 +771,7 @@ static int omap_mpuio_suspend_noirq(struct device *dev) unsigned long flags; spin_lock_irqsave(bank-lock, flags); - bank-saved_wakeup = __raw_readl(mask_reg); + bank-context.wake_en = __raw_readl(mask_reg); Why is this read needed? Kevin __raw_writel(0x ~bank-suspend_wakeup, mask_reg); spin_unlock_irqrestore(bank-lock, flags); -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 2/6] gpio/omap: remove saved_wakeup field from struct gpio_bank
On Tue, Feb 28, 2012 at 5:20 AM, Kevin Hilman khil...@ti.com wrote: Tarun Kanti DebBarma tarun.ka...@ti.com writes: There is no more need to have saved_wakeup. Instead we can use context.wake_en which holds the current wakeup enable register context. This also means that the read from wakeup enable register is not needed. Signed-off-by: Tarun Kanti DebBarma tarun.ka...@ti.com Looks right, but one question below... --- drivers/gpio/gpio-omap.c | 13 - 1 files changed, 4 insertions(+), 9 deletions(-) diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c index 40a1fb2..64f15d5 100644 --- a/drivers/gpio/gpio-omap.c +++ b/drivers/gpio/gpio-omap.c @@ -54,7 +54,6 @@ struct gpio_bank { u16 irq; u16 virtual_irq_start; u32 suspend_wakeup; - u32 saved_wakeup; u32 non_wakeup_gpios; u32 enabled_non_wakeup_gpios; struct gpio_regs context; @@ -772,7 +771,7 @@ static int omap_mpuio_suspend_noirq(struct device *dev) unsigned long flags; spin_lock_irqsave(bank-lock, flags); - bank-saved_wakeup = __raw_readl(mask_reg); + bank-context.wake_en = __raw_readl(mask_reg); Why is this read needed? Well, we don't really need as we already have context.wake_en updated elsewhere. I will update this. Thanks. -- Tarun Kevin __raw_writel(0x ~bank-suspend_wakeup, mask_reg); spin_unlock_irqrestore(bank-lock, flags); -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 2/6] gpio/omap: remove saved_wakeup field from struct gpio_bank
There is no more need to have saved_wakeup. Instead we can use context.wake_en which holds the current wakeup enable register context. This also means that the read from wakeup enable register is not needed. Signed-off-by: Tarun Kanti DebBarma tarun.ka...@ti.com --- drivers/gpio/gpio-omap.c | 13 - 1 files changed, 4 insertions(+), 9 deletions(-) diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c index 40a1fb2..64f15d5 100644 --- a/drivers/gpio/gpio-omap.c +++ b/drivers/gpio/gpio-omap.c @@ -54,7 +54,6 @@ struct gpio_bank { u16 irq; u16 virtual_irq_start; u32 suspend_wakeup; - u32 saved_wakeup; u32 non_wakeup_gpios; u32 enabled_non_wakeup_gpios; struct gpio_regs context; @@ -772,7 +771,7 @@ static int omap_mpuio_suspend_noirq(struct device *dev) unsigned long flags; spin_lock_irqsave(bank-lock, flags); - bank-saved_wakeup = __raw_readl(mask_reg); + bank-context.wake_en = __raw_readl(mask_reg); __raw_writel(0x ~bank-suspend_wakeup, mask_reg); spin_unlock_irqrestore(bank-lock, flags); @@ -788,7 +787,7 @@ static int omap_mpuio_resume_noirq(struct device *dev) unsigned long flags; spin_lock_irqsave(bank-lock, flags); - __raw_writel(bank-saved_wakeup, mask_reg); + __raw_writel(bank-context.wake_en, mask_reg); spin_unlock_irqrestore(bank-lock, flags); return 0; @@ -1133,7 +1132,6 @@ static int omap_gpio_suspend(struct device *dev) struct platform_device *pdev = to_platform_device(dev); struct gpio_bank *bank = platform_get_drvdata(pdev); void __iomem *base = bank-base; - void __iomem *wakeup_enable; unsigned long flags; if (!bank-mod_usage || !bank-loses_context) @@ -1142,10 +1140,7 @@ static int omap_gpio_suspend(struct device *dev) if (!bank-regs-wkup_en || !bank-suspend_wakeup) return 0; - wakeup_enable = bank-base + bank-regs-wkup_en; - spin_lock_irqsave(bank-lock, flags); - bank-saved_wakeup = __raw_readl(wakeup_enable); _gpio_rmw(base, bank-regs-wkup_en, 0x, 0); _gpio_rmw(base, bank-regs-wkup_en, bank-suspend_wakeup, 1); spin_unlock_irqrestore(bank-lock, flags); @@ -1163,12 +1158,12 @@ static int omap_gpio_resume(struct device *dev) if (!bank-mod_usage || !bank-loses_context) return 0; - if (!bank-regs-wkup_en || !bank-saved_wakeup) + if (!bank-regs-wkup_en || !bank-context.wake_en) return 0; spin_lock_irqsave(bank-lock, flags); _gpio_rmw(base, bank-regs-wkup_en, 0x, 0); - _gpio_rmw(base, bank-regs-wkup_en, bank-saved_wakeup, 1); + _gpio_rmw(base, bank-regs-wkup_en, bank-context.wake_en, 1); spin_unlock_irqrestore(bank-lock, flags); return 0; -- 1.7.0.4 -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 2/6] gpio/omap: remove saved_wakeup field from struct gpio_bank
On Thu, Feb 23, 2012 at 05:40:27PM +0530, Tarun Kanti DebBarma wrote: There is no more need to have saved_wakeup. Instead we can use context.wake_en which holds the current wakeup enable register context. This also means that the read from wakeup enable register is not needed. Signed-off-by: Tarun Kanti DebBarma tarun.ka...@ti.com Likewise: Acked-by: Felipe Balbi ba...@ti.com -- balbi signature.asc Description: Digital signature