iio: accel: bma180: use iio helper function to guarantee direct mode
PATCH v2 1/1 iio: accel: bma180: use iio helper function to guarantee direct mode
Replace the code that guarantees the device stays in direct mode with iio_device_claim_direct_mode() which does same.
Signed-off-by Alison Schofield <[email protected]>
Cc Daniel Baluta <[email protected]>
---
Changes in v2:
- put back private data lock I had removed in v1.
drivers/iio/accel/bma180.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-)
drivers/iio/accel/bma180.c +5 -4
@@ -469,13 +469,14 @@ static int bma180_read_raw(struct iio_dev *indio_dev,switch (mask) {case IIO_CHAN_INFO_RAW : + ret =iio_device_claim_direct_mode (indio_dev); +if (ret) +return ret; +mutex_lock (&data->mutex); -if (iio_buffer_enabled (indio_dev)) { -mutex_unlock (&data->mutex); -return -EBUSY ; - } ret =bma180_get_data_reg (data, chan->scan_index);mutex_unlock (&data->mutex); +iio_device_release_direct_mode (indio_dev);if (ret <0 )return ret; *val = sign_extend32(ret >> chan->scan_type.shift,
Signature · 1 line
2.1.4
Quoted 5 lines · Alison Schofield
Replace the code that guarantees the device stays in direct mode with
iio_device_claim_direct_mode()which does same.Signed-off-by Alison Schofield <[email protected]>Cc Daniel Baluta <[email protected]>
Applied.
Thanks,
Jonathan
Quoted 31 lines
---
Changes in v2:
- put back private data lock I had removed in v1.drivers/iio/accel/bma180.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-)drivers/iio/accel/bma180.c +5
-4@@ -469,13 +469,14 @@ static int bma180_read_raw(struct iio_dev *indio_dev,switch (mask) {case IIO_CHAN_INFO_RAW : + ret =iio_device_claim_direct_mode (indio_dev); +if (ret) +return ret; +mutex_lock (&data->mutex); -if (iio_buffer_enabled (indio_dev)) { -mutex_unlock (&data->mutex); -return -EBUSY ; - } ret =bma180_get_data_reg (data, chan->scan_index);mutex_unlock (&data->mutex); +iio_device_release_direct_mode (indio_dev);if (ret <0 )return ret; *val = sign_extend32(ret >> chan->scan_type.shift,