Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0aa27273 authored by Tarun Kanti DebBarma's avatar Tarun Kanti DebBarma Committed by Kevin Hilman
Browse files

gpio/omap: remove suspend_wakeup field from struct gpio_bank



Since we already have bank->context.wake_en to keep track
of gpios which are wakeup enabled, there is no need to have
this field any more.

Cc: Kevin Hilman <khilman@ti.com>
Cc: Tony Lindgren <tony@atomide.com>
Cc: Santosh Shilimkar <santosh.shilimkar@ti.com>
Cc: Cousson, Benoit <b-cousson@ti.com>
Cc: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: default avatarTarun Kanti DebBarma <tarun.kanti@ti.com>
Reviewed-by: default avatarSantosh Shilimkar <santosh.shilimkar@ti.com>
Acked-by: default avatarFelipe Balbi <balbi@ti.com>
Tested-by: default avatarGovindraj.R <govindraj.raja@ti.com>
Signed-off-by: default avatarKevin Hilman <khilman@ti.com>
parent c6f31c9e
Loading
Loading
Loading
Loading
+6 −7
Original line number Diff line number Diff line
@@ -57,7 +57,6 @@ struct gpio_bank {
	u16 irq;
	int irq_base;
	struct irq_domain *domain;
	u32 suspend_wakeup;
	u32 saved_wakeup;
	u32 non_wakeup_gpios;
	u32 enabled_non_wakeup_gpios;
@@ -514,11 +513,11 @@ static int _set_gpio_wakeup(struct gpio_bank *bank, int gpio, int enable)

	spin_lock_irqsave(&bank->lock, flags);
	if (enable)
		bank->suspend_wakeup |= gpio_bit;
		bank->context.wake_en |= gpio_bit;
	else
		bank->suspend_wakeup &= ~gpio_bit;
		bank->context.wake_en &= ~gpio_bit;

	__raw_writel(bank->suspend_wakeup, bank->base + bank->regs->wkup_en);
	__raw_writel(bank->context.wake_en, bank->base + bank->regs->wkup_en);
	spin_unlock_irqrestore(&bank->lock, flags);

	return 0;
@@ -788,7 +787,7 @@ static int omap_mpuio_suspend_noirq(struct device *dev)

	spin_lock_irqsave(&bank->lock, flags);
	bank->saved_wakeup = __raw_readl(mask_reg);
	__raw_writel(0xffff & ~bank->suspend_wakeup, mask_reg);
	__raw_writel(0xffff & ~bank->context.wake_en, mask_reg);
	spin_unlock_irqrestore(&bank->lock, flags);

	return 0;
@@ -1162,7 +1161,7 @@ static int omap_gpio_suspend(struct device *dev)
	if (!bank->mod_usage || !bank->loses_context)
		return 0;

	if (!bank->regs->wkup_en || !bank->suspend_wakeup)
	if (!bank->regs->wkup_en || !bank->context.wake_en)
		return 0;

	wakeup_enable = bank->base + bank->regs->wkup_en;
@@ -1170,7 +1169,7 @@ static int omap_gpio_suspend(struct device *dev)
	spin_lock_irqsave(&bank->lock, flags);
	bank->saved_wakeup = __raw_readl(wakeup_enable);
	_gpio_rmw(base, bank->regs->wkup_en, 0xffffffff, 0);
	_gpio_rmw(base, bank->regs->wkup_en, bank->suspend_wakeup, 1);
	_gpio_rmw(base, bank->regs->wkup_en, bank->context.wake_en, 1);
	spin_unlock_irqrestore(&bank->lock, flags);

	return 0;