diff options
author | Jonathan Cameron <jic23@cam.ac.uk> | 2011-05-18 13:42:37 (GMT) |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-05-19 23:15:05 (GMT) |
commit | 6fe8135fccd66aedcc55ded70824342587fd2499 (patch) | |
tree | 3afc7acfd0edc052ba93241761e935af9a3b6ebc /drivers/staging/iio/accel/adis16203_core.c | |
parent | a3f02370c9fa6d85fbee2c11649ebc9c84bae919 (diff) | |
download | linux-fsl-qoriq-6fe8135fccd66aedcc55ded70824342587fd2499.tar.xz |
staging:iio: implement an iio_info structure to take some of the constant elements out of iio_dev.
This was suggested by Arnd Bergmann, Other elements may well
move in here in future, but it definitely makes sense for these.
Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/iio/accel/adis16203_core.c')
-rw-r--r-- | drivers/staging/iio/accel/adis16203_core.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/staging/iio/accel/adis16203_core.c b/drivers/staging/iio/accel/adis16203_core.c index 1694a0c..36be4d5 100644 --- a/drivers/staging/iio/accel/adis16203_core.c +++ b/drivers/staging/iio/accel/adis16203_core.c @@ -408,6 +408,13 @@ static const struct attribute_group adis16203_attribute_group = { .attrs = adis16203_attributes, }; +static const struct iio_info adis16203_info = { + .attrs = &adis16203_attribute_group, + .read_raw = &adis16203_read_raw, + .write_raw = &adis16203_write_raw, + .driver_module = THIS_MODULE, +}; + static int __devinit adis16203_probe(struct spi_device *spi) { int ret, regdone = 0; @@ -440,13 +447,10 @@ static int __devinit adis16203_probe(struct spi_device *spi) } st->indio_dev->name = spi->dev.driver->name; st->indio_dev->dev.parent = &spi->dev; - st->indio_dev->attrs = &adis16203_attribute_group; st->indio_dev->channels = adis16203_channels; st->indio_dev->num_channels = ARRAY_SIZE(adis16203_channels); - st->indio_dev->read_raw = &adis16203_read_raw; - st->indio_dev->write_raw = &adis16203_write_raw; + st->indio_dev->info = &adis16203_info; st->indio_dev->dev_data = (void *)(st); - st->indio_dev->driver_module = THIS_MODULE; st->indio_dev->modes = INDIO_DIRECT_MODE; ret = adis16203_configure_ring(st->indio_dev); |