aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGrygorii Strashko <grygorii.strashko@linaro.org>2015-03-23 08:18:23 -0400
committerLinus Walleij <linus.walleij@linaro.org>2015-03-27 06:03:06 -0400
commitb2b2004550f4b18ed16929107f478005fadfdb5c (patch)
treedd4fe5963c8b6ab7c11781183e96dd5a21f03f31
parentc4b40493de668a86856602a4cf19bf0d809e2681 (diff)
gpio: omap: convert omap_gpio_is_input() to use gpio offset
Convert omap_gpio_is_input() to use GPIO offset instead of mask and, in such way, make code simpler and remove few lines of code. Tested-by: Tony Lindgren <tony@atomide.com> Tested-by: Aaro Koskinen <aaro.koskinen@iki.fi> Acked-by: Santosh Shilimkar <ssantosh@kernel.org> Acked-by: Javier Martinez Canillas <javier@dowhile0.org> Signed-off-by: Grygorii Strashko <grygorii.strashko@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-rw-r--r--drivers/gpio/gpio-omap.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c
index 2b2fc4ba8c6d..ce7123928219 100644
--- a/drivers/gpio/gpio-omap.c
+++ b/drivers/gpio/gpio-omap.c
@@ -472,11 +472,11 @@ static void omap_disable_gpio_module(struct gpio_bank *bank, unsigned offset)
472 } 472 }
473} 473}
474 474
475static int omap_gpio_is_input(struct gpio_bank *bank, int mask) 475static int omap_gpio_is_input(struct gpio_bank *bank, unsigned offset)
476{ 476{
477 void __iomem *reg = bank->base + bank->regs->direction; 477 void __iomem *reg = bank->base + bank->regs->direction;
478 478
479 return readl_relaxed(reg) & mask; 479 return readl_relaxed(reg) & BIT(offset);
480} 480}
481 481
482static void omap_gpio_init_irq(struct gpio_bank *bank, unsigned gpio, 482static void omap_gpio_init_irq(struct gpio_bank *bank, unsigned gpio,
@@ -519,7 +519,7 @@ static int omap_gpio_irq_type(struct irq_data *d, unsigned type)
519 offset = GPIO_INDEX(bank, gpio); 519 offset = GPIO_INDEX(bank, gpio);
520 retval = omap_set_gpio_triggering(bank, offset, type); 520 retval = omap_set_gpio_triggering(bank, offset, type);
521 omap_gpio_init_irq(bank, gpio, offset); 521 omap_gpio_init_irq(bank, gpio, offset);
522 if (!omap_gpio_is_input(bank, BIT(offset))) { 522 if (!omap_gpio_is_input(bank, offset)) {
523 spin_unlock_irqrestore(&bank->lock, flags); 523 spin_unlock_irqrestore(&bank->lock, flags);
524 return -EINVAL; 524 return -EINVAL;
525 } 525 }
@@ -976,12 +976,10 @@ static int omap_gpio_input(struct gpio_chip *chip, unsigned offset)
976static int omap_gpio_get(struct gpio_chip *chip, unsigned offset) 976static int omap_gpio_get(struct gpio_chip *chip, unsigned offset)
977{ 977{
978 struct gpio_bank *bank; 978 struct gpio_bank *bank;
979 u32 mask;
980 979
981 bank = container_of(chip, struct gpio_bank, chip); 980 bank = container_of(chip, struct gpio_bank, chip);
982 mask = (BIT(offset));
983 981
984 if (omap_gpio_is_input(bank, mask)) 982 if (omap_gpio_is_input(bank, offset))
985 return omap_get_gpio_datain(bank, offset); 983 return omap_get_gpio_datain(bank, offset);
986 else 984 else
987 return omap_get_gpio_dataout(bank, offset); 985 return omap_get_gpio_dataout(bank, offset);