Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

iio: adc: sc27xx_adc: make use of regmap_clear_bits(), regmap_set_bits()

Instead of using regmap_update_bits() and passing the mask twice, use
regmap_set_bits().

Instead of using regmap_update_bits() and passing val = 0, use
regmap_clear_bits().

Suggested-by: Uwe Kleine-König <u.kleine-koenig@baylibre.com>
Reviewed-by: Baolin Wang <baolin.wang@linux.alibaba.com>
Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
Acked-by: Uwe Kleine-König <u.kleine-koenig@baylibre.com>
Link: https://patch.msgid.link/20240617-review-v3-17-88d1338c4cca@baylibre.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>

authored by

Trevor Gamblin and committed by
Jonathan Cameron
059fbfaa cb3f8e0c

+20 -21
+20 -21
drivers/iio/adc/sc27xx_adc.c
··· 508 508 } 509 509 } 510 510 511 - ret = regmap_update_bits(data->regmap, data->base + SC27XX_ADC_CTL, 512 - SC27XX_ADC_EN, SC27XX_ADC_EN); 511 + ret = regmap_set_bits(data->regmap, data->base + SC27XX_ADC_CTL, 512 + SC27XX_ADC_EN); 513 513 if (ret) 514 514 goto regulator_restore; 515 515 516 - ret = regmap_update_bits(data->regmap, data->base + SC27XX_ADC_INT_CLR, 517 - SC27XX_ADC_IRQ_CLR, SC27XX_ADC_IRQ_CLR); 516 + ret = regmap_set_bits(data->regmap, data->base + SC27XX_ADC_INT_CLR, 517 + SC27XX_ADC_IRQ_CLR); 518 518 if (ret) 519 519 goto disable_adc; 520 520 ··· 537 537 if (ret) 538 538 goto disable_adc; 539 539 540 - ret = regmap_update_bits(data->regmap, data->base + SC27XX_ADC_CTL, 541 - SC27XX_ADC_CHN_RUN, SC27XX_ADC_CHN_RUN); 540 + ret = regmap_set_bits(data->regmap, data->base + SC27XX_ADC_CTL, 541 + SC27XX_ADC_CHN_RUN); 542 542 if (ret) 543 543 goto disable_adc; 544 544 ··· 559 559 value &= SC27XX_ADC_DATA_MASK; 560 560 561 561 disable_adc: 562 - regmap_update_bits(data->regmap, data->base + SC27XX_ADC_CTL, 563 - SC27XX_ADC_EN, 0); 562 + regmap_clear_bits(data->regmap, data->base + SC27XX_ADC_CTL, 563 + SC27XX_ADC_EN); 564 564 regulator_restore: 565 565 if ((data->var_data->set_volref) && (channel == 30 || channel == 31)) { 566 566 ret_volref = regulator_set_voltage(data->volref, ··· 765 765 { 766 766 int ret; 767 767 768 - ret = regmap_update_bits(data->regmap, data->var_data->module_en, 769 - SC27XX_MODULE_ADC_EN, SC27XX_MODULE_ADC_EN); 768 + ret = regmap_set_bits(data->regmap, data->var_data->module_en, 769 + SC27XX_MODULE_ADC_EN); 770 770 if (ret) 771 771 return ret; 772 772 773 773 /* Enable ADC work clock and controller clock */ 774 - ret = regmap_update_bits(data->regmap, data->var_data->clk_en, 775 - SC27XX_CLK_ADC_EN | SC27XX_CLK_ADC_CLK_EN, 776 - SC27XX_CLK_ADC_EN | SC27XX_CLK_ADC_CLK_EN); 774 + ret = regmap_set_bits(data->regmap, data->var_data->clk_en, 775 + SC27XX_CLK_ADC_EN | SC27XX_CLK_ADC_CLK_EN); 777 776 if (ret) 778 777 goto disable_adc; 779 778 ··· 788 789 return 0; 789 790 790 791 disable_clk: 791 - regmap_update_bits(data->regmap, data->var_data->clk_en, 792 - SC27XX_CLK_ADC_EN | SC27XX_CLK_ADC_CLK_EN, 0); 792 + regmap_clear_bits(data->regmap, data->var_data->clk_en, 793 + SC27XX_CLK_ADC_EN | SC27XX_CLK_ADC_CLK_EN); 793 794 disable_adc: 794 - regmap_update_bits(data->regmap, data->var_data->module_en, 795 - SC27XX_MODULE_ADC_EN, 0); 795 + regmap_clear_bits(data->regmap, data->var_data->module_en, 796 + SC27XX_MODULE_ADC_EN); 796 797 797 798 return ret; 798 799 } ··· 802 803 struct sc27xx_adc_data *data = _data; 803 804 804 805 /* Disable ADC work clock and controller clock */ 805 - regmap_update_bits(data->regmap, data->var_data->clk_en, 806 - SC27XX_CLK_ADC_EN | SC27XX_CLK_ADC_CLK_EN, 0); 806 + regmap_clear_bits(data->regmap, data->var_data->clk_en, 807 + SC27XX_CLK_ADC_EN | SC27XX_CLK_ADC_CLK_EN); 807 808 808 - regmap_update_bits(data->regmap, data->var_data->module_en, 809 - SC27XX_MODULE_ADC_EN, 0); 809 + regmap_clear_bits(data->regmap, data->var_data->module_en, 810 + SC27XX_MODULE_ADC_EN); 810 811 } 811 812 812 813 static const struct sc27xx_adc_variant_data sc2731_data = {