Commit 059fbfaa authored by Trevor Gamblin's avatar Trevor Gamblin Committed by Jonathan Cameron

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: default avatarUwe Kleine-König <u.kleine-koenig@baylibre.com>
Reviewed-by: default avatarBaolin Wang <baolin.wang@linux.alibaba.com>
Signed-off-by: default avatarTrevor Gamblin <tgamblin@baylibre.com>
Acked-by: default avatarUwe Kleine-König <u.kleine-koenig@baylibre.com>
Link: https://patch.msgid.link/20240617-review-v3-17-88d1338c4cca@baylibre.comSigned-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
parent cb3f8e0c
...@@ -508,13 +508,13 @@ static int sc27xx_adc_read(struct sc27xx_adc_data *data, int channel, ...@@ -508,13 +508,13 @@ static int sc27xx_adc_read(struct sc27xx_adc_data *data, int channel,
} }
} }
ret = regmap_update_bits(data->regmap, data->base + SC27XX_ADC_CTL, ret = regmap_set_bits(data->regmap, data->base + SC27XX_ADC_CTL,
SC27XX_ADC_EN, SC27XX_ADC_EN); SC27XX_ADC_EN);
if (ret) if (ret)
goto regulator_restore; goto regulator_restore;
ret = regmap_update_bits(data->regmap, data->base + SC27XX_ADC_INT_CLR, ret = regmap_set_bits(data->regmap, data->base + SC27XX_ADC_INT_CLR,
SC27XX_ADC_IRQ_CLR, SC27XX_ADC_IRQ_CLR); SC27XX_ADC_IRQ_CLR);
if (ret) if (ret)
goto disable_adc; goto disable_adc;
...@@ -537,8 +537,8 @@ static int sc27xx_adc_read(struct sc27xx_adc_data *data, int channel, ...@@ -537,8 +537,8 @@ static int sc27xx_adc_read(struct sc27xx_adc_data *data, int channel,
if (ret) if (ret)
goto disable_adc; goto disable_adc;
ret = regmap_update_bits(data->regmap, data->base + SC27XX_ADC_CTL, ret = regmap_set_bits(data->regmap, data->base + SC27XX_ADC_CTL,
SC27XX_ADC_CHN_RUN, SC27XX_ADC_CHN_RUN); SC27XX_ADC_CHN_RUN);
if (ret) if (ret)
goto disable_adc; goto disable_adc;
...@@ -559,8 +559,8 @@ static int sc27xx_adc_read(struct sc27xx_adc_data *data, int channel, ...@@ -559,8 +559,8 @@ static int sc27xx_adc_read(struct sc27xx_adc_data *data, int channel,
value &= SC27XX_ADC_DATA_MASK; value &= SC27XX_ADC_DATA_MASK;
disable_adc: disable_adc:
regmap_update_bits(data->regmap, data->base + SC27XX_ADC_CTL, regmap_clear_bits(data->regmap, data->base + SC27XX_ADC_CTL,
SC27XX_ADC_EN, 0); SC27XX_ADC_EN);
regulator_restore: regulator_restore:
if ((data->var_data->set_volref) && (channel == 30 || channel == 31)) { if ((data->var_data->set_volref) && (channel == 30 || channel == 31)) {
ret_volref = regulator_set_voltage(data->volref, ret_volref = regulator_set_voltage(data->volref,
...@@ -765,14 +765,13 @@ static int sc27xx_adc_enable(struct sc27xx_adc_data *data) ...@@ -765,14 +765,13 @@ static int sc27xx_adc_enable(struct sc27xx_adc_data *data)
{ {
int ret; int ret;
ret = regmap_update_bits(data->regmap, data->var_data->module_en, ret = regmap_set_bits(data->regmap, data->var_data->module_en,
SC27XX_MODULE_ADC_EN, SC27XX_MODULE_ADC_EN); SC27XX_MODULE_ADC_EN);
if (ret) if (ret)
return ret; return ret;
/* Enable ADC work clock and controller clock */ /* Enable ADC work clock and controller clock */
ret = regmap_update_bits(data->regmap, data->var_data->clk_en, ret = regmap_set_bits(data->regmap, data->var_data->clk_en,
SC27XX_CLK_ADC_EN | SC27XX_CLK_ADC_CLK_EN,
SC27XX_CLK_ADC_EN | SC27XX_CLK_ADC_CLK_EN); SC27XX_CLK_ADC_EN | SC27XX_CLK_ADC_CLK_EN);
if (ret) if (ret)
goto disable_adc; goto disable_adc;
...@@ -789,11 +788,11 @@ static int sc27xx_adc_enable(struct sc27xx_adc_data *data) ...@@ -789,11 +788,11 @@ static int sc27xx_adc_enable(struct sc27xx_adc_data *data)
return 0; return 0;
disable_clk: disable_clk:
regmap_update_bits(data->regmap, data->var_data->clk_en, regmap_clear_bits(data->regmap, data->var_data->clk_en,
SC27XX_CLK_ADC_EN | SC27XX_CLK_ADC_CLK_EN, 0); SC27XX_CLK_ADC_EN | SC27XX_CLK_ADC_CLK_EN);
disable_adc: disable_adc:
regmap_update_bits(data->regmap, data->var_data->module_en, regmap_clear_bits(data->regmap, data->var_data->module_en,
SC27XX_MODULE_ADC_EN, 0); SC27XX_MODULE_ADC_EN);
return ret; return ret;
} }
...@@ -803,11 +802,11 @@ static void sc27xx_adc_disable(void *_data) ...@@ -803,11 +802,11 @@ static void sc27xx_adc_disable(void *_data)
struct sc27xx_adc_data *data = _data; struct sc27xx_adc_data *data = _data;
/* Disable ADC work clock and controller clock */ /* Disable ADC work clock and controller clock */
regmap_update_bits(data->regmap, data->var_data->clk_en, regmap_clear_bits(data->regmap, data->var_data->clk_en,
SC27XX_CLK_ADC_EN | SC27XX_CLK_ADC_CLK_EN, 0); SC27XX_CLK_ADC_EN | SC27XX_CLK_ADC_CLK_EN);
regmap_update_bits(data->regmap, data->var_data->module_en, regmap_clear_bits(data->regmap, data->var_data->module_en,
SC27XX_MODULE_ADC_EN, 0); SC27XX_MODULE_ADC_EN);
} }
static const struct sc27xx_adc_variant_data sc2731_data = { static const struct sc27xx_adc_variant_data sc2731_data = {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment