Skip to content

Commit 9fe5fcd

Browse files
andy-shevbrgl
authored andcommitted
gpio: wcove: Switch to use regmap_set_bits(), regmap_clear_bits()
the regmap_set_bits(), regmap_clear_bits() API makes code better to understand. Switch the driver to use them, Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
1 parent 2edba74 commit 9fe5fcd

1 file changed

Lines changed: 7 additions & 10 deletions

File tree

drivers/gpio/gpio-wcove.c

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -125,9 +125,9 @@ static void wcove_update_irq_mask(struct wcove_gpio *wg, int gpio)
125125
}
126126

127127
if (wg->set_irq_mask)
128-
regmap_update_bits(wg->regmap, reg, mask, mask);
128+
regmap_set_bits(wg->regmap, reg, mask);
129129
else
130-
regmap_update_bits(wg->regmap, reg, mask, 0);
130+
regmap_clear_bits(wg->regmap, reg, mask);
131131
}
132132

133133
static void wcove_update_irq_ctrl(struct wcove_gpio *wg, int gpio)
@@ -207,9 +207,9 @@ static void wcove_gpio_set(struct gpio_chip *chip, unsigned int gpio, int value)
207207
return;
208208

209209
if (value)
210-
regmap_update_bits(wg->regmap, reg, 1, 1);
210+
regmap_set_bits(wg->regmap, reg, 1);
211211
else
212-
regmap_update_bits(wg->regmap, reg, 1, 0);
212+
regmap_clear_bits(wg->regmap, reg, 1);
213213
}
214214

215215
static int wcove_gpio_set_config(struct gpio_chip *chip, unsigned int gpio,
@@ -346,8 +346,7 @@ static irqreturn_t wcove_gpio_irq_handler(int irq, void *data)
346346
BIT(gpio);
347347
virq = irq_find_mapping(wg->chip.irq.domain, gpio);
348348
handle_nested_irq(virq);
349-
regmap_update_bits(wg->regmap, IRQ_STATUS_BASE + offset,
350-
mask, mask);
349+
regmap_set_bits(wg->regmap, IRQ_STATUS_BASE + offset, mask);
351350
}
352351

353352
/* Next iteration */
@@ -473,14 +472,12 @@ static int wcove_gpio_probe(struct platform_device *pdev)
473472
}
474473

475474
/* Enable GPIO0 interrupts */
476-
ret = regmap_update_bits(wg->regmap, IRQ_MASK_BASE, GPIO_IRQ0_MASK,
477-
0x00);
475+
ret = regmap_clear_bits(wg->regmap, IRQ_MASK_BASE + 0, GPIO_IRQ0_MASK);
478476
if (ret)
479477
return ret;
480478

481479
/* Enable GPIO1 interrupts */
482-
ret = regmap_update_bits(wg->regmap, IRQ_MASK_BASE + 1, GPIO_IRQ1_MASK,
483-
0x00);
480+
ret = regmap_clear_bits(wg->regmap, IRQ_MASK_BASE + 1, GPIO_IRQ1_MASK);
484481
if (ret)
485482
return ret;
486483

0 commit comments

Comments
 (0)