On 12/11/16 16:24, Jonathan Cameron wrote: > On 10/11/16 09:25, Brian Masney wrote: >> in_illuminance_calibrate_store() did not check to see if the chip is >> suspended. This patch adds the proper check. The return value from >> taos_als_calibrate() was also not checked in this function, so the >> proper check was also added while changes are being made here. >> >> Signed-off-by: Brian Masney <masneyb@xxxxxxxxxxxxx> > Applied. And backed out. It doesn't build :( drivers/staging/iio/light/tsl2583.c:511:10: error: ‘struct tsl2583_chip’ has no member named ‘suspended’ if (chip->suspended) { ^~ >> --- >> drivers/staging/iio/light/tsl2583.c | 17 ++++++++++++++--- >> 1 file changed, 14 insertions(+), 3 deletions(-) >> >> diff --git a/drivers/staging/iio/light/tsl2583.c b/drivers/staging/iio/light/tsl2583.c >> index 1a7be12..eb59ea0 100644 >> --- a/drivers/staging/iio/light/tsl2583.c >> +++ b/drivers/staging/iio/light/tsl2583.c >> @@ -501,16 +501,27 @@ static ssize_t in_illuminance_calibrate_store(struct device *dev, >> { >> struct iio_dev *indio_dev = dev_to_iio_dev(dev); >> struct tsl2583_chip *chip = iio_priv(indio_dev); >> - int value; >> + int value, ret; >> >> if (kstrtoint(buf, 0, &value) || value != 1) >> return -EINVAL; >> >> mutex_lock(&chip->als_mutex); >> - taos_als_calibrate(indio_dev); >> + >> + if (chip->suspended) { >> + ret = -EBUSY; >> + goto done; >> + } >> + >> + ret = taos_als_calibrate(indio_dev); >> + if (ret < 0) >> + goto done; >> + >> + ret = len; >> +done: >> mutex_unlock(&chip->als_mutex); >> >> - return len; >> + return ret; >> } >> >> static ssize_t in_illuminance_lux_table_show(struct device *dev, >> > > -- > 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 > -- 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