提交 cd038019 编写于 作者: J Jonathan Cameron 提交者: Greg Kroah-Hartman

staging:iio:adc: max1363 fix 2 raw sysfs issues.

indio_dev->channels was accidentally removed thus preventing any sysfs
registrations occuring for direct reading.  That hid the other issue.

Unfortunately the incorrect handling leads to misspresentation of data
in sysfs reads.
Signed-off-by: NJonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
上级 cdf6e817
...@@ -255,7 +255,7 @@ static int max1363_read_raw(struct iio_dev *indio_dev, ...@@ -255,7 +255,7 @@ static int max1363_read_raw(struct iio_dev *indio_dev,
switch (m) { switch (m) {
case 0: case 0:
ret = max1363_read_single_chan(indio_dev, chan, val, m); ret = max1363_read_single_chan(indio_dev, chan, val, m);
if (ret) if (ret < 0)
return ret; return ret;
return IIO_VAL_INT; return IIO_VAL_INT;
case (1 << IIO_CHAN_INFO_SCALE_SHARED): case (1 << IIO_CHAN_INFO_SCALE_SHARED):
...@@ -1295,6 +1295,8 @@ static int __devinit max1363_probe(struct i2c_client *client, ...@@ -1295,6 +1295,8 @@ static int __devinit max1363_probe(struct i2c_client *client,
indio_dev->info = st->chip_info->info; indio_dev->info = st->chip_info->info;
indio_dev->modes = INDIO_DIRECT_MODE; indio_dev->modes = INDIO_DIRECT_MODE;
indio_dev->channels = st->chip_info->channels;
indio_dev->num_channels = st->chip_info->num_channels;
ret = max1363_initial_setup(st); ret = max1363_initial_setup(st);
if (ret < 0) if (ret < 0)
goto error_free_available_scan_masks; goto error_free_available_scan_masks;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册