Messages in this thread | | | Date | Sat, 18 Jan 2014 11:38:39 +0000 | From | Jonathan Cameron <> | Subject | Re: [PATCH] iio: tsl2563: Use the correct channel2 member |
| |
On 18/01/14 11:37, Jonathan Cameron wrote: > > > On 13/01/14 21:25, Peter Meerwald wrote: >> >>> Use the correct channel2 member instead of channel when dealing with sysfs >>> reads/writes >> >>> Signed-off-by: Ivaylo Dimitrov <ivo.g.dimitrov.75@gmail.com> >> >> as a bonus, m is renamed to mask > Which would have been relevant back when it was a mask. Still it doesn't > make things worse, so never mind ;) One day someone might be bored enough > to clean up all the places in read_raw etc where the variable is called mask > but is infact a straight number. >> >> Acked-by: Peter Meerwald <pmeerw@pmeerw.net> > Applied to the fixes-togreg branch of iio.git - initially pushed out as testing > for the autobuilders to thoroughly hammer. I'm dozing this morning. This of course the fixes-togreg branch which doesn't get separately pushed out for autobuilding fun and goes straight out as fixes-togreg!
>> >>> --- >>> drivers/iio/light/tsl2563.c | 16 ++++++++++------ >>> 1 files changed, 10 insertions(+), 6 deletions(-) >>> >>> diff --git a/drivers/iio/light/tsl2563.c b/drivers/iio/light/tsl2563.c >>> index 5e5d9de..2be6df3 100644 >>> --- a/drivers/iio/light/tsl2563.c >>> +++ b/drivers/iio/light/tsl2563.c >>> @@ -460,10 +460,14 @@ static int tsl2563_write_raw(struct iio_dev *indio_dev, >>> { >>> struct tsl2563_chip *chip = iio_priv(indio_dev); >>> >>> - if (chan->channel == IIO_MOD_LIGHT_BOTH) >>> + if (mask != IIO_CHAN_INFO_CALIBSCALE) >>> + return -EINVAL; >>> + if (chan->channel2 == IIO_MOD_LIGHT_BOTH) >>> chip->calib0 = calib_from_sysfs(val); >>> - else >>> + else if (chan->channel2 == IIO_MOD_LIGHT_IR) >>> chip->calib1 = calib_from_sysfs(val); >>> + else >>> + return -EINVAL; >>> >>> return 0; >>> } >>> @@ -472,14 +476,14 @@ static int tsl2563_read_raw(struct iio_dev *indio_dev, >>> struct iio_chan_spec const *chan, >>> int *val, >>> int *val2, >>> - long m) >>> + long mask) >>> { >>> int ret = -EINVAL; >>> u32 calib0, calib1; >>> struct tsl2563_chip *chip = iio_priv(indio_dev); >>> >>> mutex_lock(&chip->lock); >>> - switch (m) { >>> + switch (mask) { >>> case IIO_CHAN_INFO_RAW: >>> case IIO_CHAN_INFO_PROCESSED: >>> switch (chan->type) { >>> @@ -498,7 +502,7 @@ static int tsl2563_read_raw(struct iio_dev *indio_dev, >>> ret = tsl2563_get_adc(chip); >>> if (ret) >>> goto error_ret; >>> - if (chan->channel == 0) >>> + if (chan->channel2 == IIO_MOD_LIGHT_BOTH) >>> *val = chip->data0; >>> else >>> *val = chip->data1; >>> @@ -510,7 +514,7 @@ static int tsl2563_read_raw(struct iio_dev *indio_dev, >>> break; >>> >>> case IIO_CHAN_INFO_CALIBSCALE: >>> - if (chan->channel == 0) >>> + if (chan->channel2 == IIO_MOD_LIGHT_BOTH) >>> *val = calib_to_sysfs(chip->calib0); >>> else >>> *val = calib_to_sysfs(chip->calib1); >>> >> > -- > To unsubscribe from this list: send the line "unsubscribe linux-iio" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html
| |