diff options
Diffstat (limited to 'drivers/staging/iio/adc/ad7816.c')
-rw-r--r-- | drivers/staging/iio/adc/ad7816.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/staging/iio/adc/ad7816.c b/drivers/staging/iio/adc/ad7816.c index 928477146c2f..8470036a3378 100644 --- a/drivers/staging/iio/adc/ad7816.c +++ b/drivers/staging/iio/adc/ad7816.c @@ -175,9 +175,9 @@ static ssize_t ad7816_store_channel(struct device *dev, unsigned long data; int ret; - ret = strict_strtoul(buf, 10, &data); + ret = kstrtoul(buf, 10, &data); if (ret) - return -EINVAL; + return ret; if (data > AD7816_CS_MAX && data != AD7816_CS_MASK) { dev_err(&chip->spi_dev->dev, "Invalid channel id %lu for %s.\n", @@ -290,7 +290,9 @@ static inline ssize_t ad7816_set_oti(struct device *dev, u8 data; int ret; - ret = strict_strtol(buf, 10, &value); + ret = kstrtol(buf, 10, &value); + if (ret) + return ret; if (chip->channel_id > AD7816_CS_MAX) { dev_err(dev, "Invalid oti channel id %d.\n", chip->channel_id); |