diff options
author | Andy Shevchenko <andriy.shevchenko@linux.intel.com> | 2020-09-30 17:20:12 +0300 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2020-10-01 10:00:17 +0200 |
commit | e09e200e07222467ef82367bff7cc6f44ad00397 (patch) | |
tree | 07a41fdc1f9546fd8dd9f3e4354875db6c5a228b /drivers/gpio/gpio-pca953x.c | |
parent | 17479aa39fbf65ad1502368437875e537c2f8139 (diff) | |
download | lwn-e09e200e07222467ef82367bff7cc6f44ad00397.tar.gz lwn-e09e200e07222467ef82367bff7cc6f44ad00397.zip |
gpio: pca953x: Use bitmap API over implicit GCC extension
In IRQ handler we have to clear bitmap before use. Currently
the GCC extension has been used for that. For sake of the consistency
switch to bitmap API. As expected bloat-o-meter shows no difference
in the object size.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Link: https://lore.kernel.org/r/20200930142013.59247-1-andriy.shevchenko@linux.intel.com
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/gpio/gpio-pca953x.c')
-rw-r--r-- | drivers/gpio/gpio-pca953x.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpio/gpio-pca953x.c b/drivers/gpio/gpio-pca953x.c index 29342e5def82..7f64e6948574 100644 --- a/drivers/gpio/gpio-pca953x.c +++ b/drivers/gpio/gpio-pca953x.c @@ -814,10 +814,12 @@ static irqreturn_t pca953x_irq_handler(int irq, void *devid) { struct pca953x_chip *chip = devid; struct gpio_chip *gc = &chip->gpio_chip; - DECLARE_BITMAP(pending, MAX_LINE) = {}; + DECLARE_BITMAP(pending, MAX_LINE); int level; bool ret; + bitmap_zero(pending, MAX_LINE); + mutex_lock(&chip->i2c_lock); ret = pca953x_irq_pending(chip, pending); mutex_unlock(&chip->i2c_lock); |