On Fri, 21 Jul 2017 00:24:24 +0900 Akinobu Mita <akinobu.mita@xxxxxxxxx> wrote: > This adds a helper function to set conversion mode as there are a fair > number of users. > > Cc: Daniel Baluta <daniel.baluta@xxxxxxxxx> > Cc: Jonathan Cameron <jic23@xxxxxxxxxx> > Signed-off-by: Akinobu Mita <akinobu.mita@xxxxxxxxx> Applied. Thanks, Jonathan > --- > drivers/iio/adc/ti-ads1015.c | 23 +++++++++++------------ > 1 file changed, 11 insertions(+), 12 deletions(-) > > diff --git a/drivers/iio/adc/ti-ads1015.c b/drivers/iio/adc/ti-ads1015.c > index e83cebc..9f3f0c9 100644 > --- a/drivers/iio/adc/ti-ads1015.c > +++ b/drivers/iio/adc/ti-ads1015.c > @@ -570,6 +570,13 @@ static void ads1015_get_channels_config(struct i2c_client *client) > } > } > > +static int ads1015_set_conv_mode(struct ads1015_data *data, int mode) > +{ > + return regmap_update_bits(data->regmap, ADS1015_CFG_REG, > + ADS1015_CFG_MOD_MASK, > + mode << ADS1015_CFG_MOD_SHIFT); > +} > + > static int ads1015_probe(struct i2c_client *client, > const struct i2c_device_id *id) > { > @@ -628,9 +635,7 @@ static int ads1015_probe(struct i2c_client *client, > return ret; > } > > - ret = regmap_update_bits(data->regmap, ADS1015_CFG_REG, > - ADS1015_CFG_MOD_MASK, > - ADS1015_CONTINUOUS << ADS1015_CFG_MOD_SHIFT); > + ret = ads1015_set_conv_mode(data, ADS1015_CONTINUOUS); > if (ret) > return ret; > > @@ -671,9 +676,7 @@ static int ads1015_remove(struct i2c_client *client) > iio_triggered_buffer_cleanup(indio_dev); > > /* power down single shot mode */ > - return regmap_update_bits(data->regmap, ADS1015_CFG_REG, > - ADS1015_CFG_MOD_MASK, > - ADS1015_SINGLESHOT << ADS1015_CFG_MOD_SHIFT); > + return ads1015_set_conv_mode(data, ADS1015_SINGLESHOT); > } > > #ifdef CONFIG_PM > @@ -682,9 +685,7 @@ static int ads1015_runtime_suspend(struct device *dev) > struct iio_dev *indio_dev = i2c_get_clientdata(to_i2c_client(dev)); > struct ads1015_data *data = iio_priv(indio_dev); > > - return regmap_update_bits(data->regmap, ADS1015_CFG_REG, > - ADS1015_CFG_MOD_MASK, > - ADS1015_SINGLESHOT << ADS1015_CFG_MOD_SHIFT); > + return ads1015_set_conv_mode(data, ADS1015_SINGLESHOT); > } > > static int ads1015_runtime_resume(struct device *dev) > @@ -693,9 +694,7 @@ static int ads1015_runtime_resume(struct device *dev) > struct ads1015_data *data = iio_priv(indio_dev); > int ret; > > - ret = regmap_update_bits(data->regmap, ADS1015_CFG_REG, > - ADS1015_CFG_MOD_MASK, > - ADS1015_CONTINUOUS << ADS1015_CFG_MOD_SHIFT); > + ret = ads1015_set_conv_mode(data, ADS1015_CONTINUOUS); > if (!ret) > data->conv_invalid = true; > -- To unsubscribe from this list: send the line "unsubscribe linux-iio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html