diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-12-02 19:39:07 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-12-02 19:39:07 -0500 |
commit | 06749f192b740651302a84273707d0b66749d126 (patch) | |
tree | f79f6bd1f8a8a0b63b624d78bedc5c00650f1383 /drivers/iio/accel | |
parent | 931cf48d2db64c67d0e917f55d7db7ab7b9fefa3 (diff) | |
parent | dc1ccc48159d63eca5089e507c82c7d22ef60839 (diff) |
Merge v3.13-rc2 into staging-next
we want these fixes in here.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/iio/accel')
-rw-r--r-- | drivers/iio/accel/hid-sensor-accel-3d.c | 5 | ||||
-rw-r--r-- | drivers/iio/accel/kxsd9.c | 7 |
2 files changed, 7 insertions, 5 deletions
diff --git a/drivers/iio/accel/hid-sensor-accel-3d.c b/drivers/iio/accel/hid-sensor-accel-3d.c index 6b8735ce8345..3dcdbad65456 100644 --- a/drivers/iio/accel/hid-sensor-accel-3d.c +++ b/drivers/iio/accel/hid-sensor-accel-3d.c | |||
@@ -362,7 +362,7 @@ static int hid_accel_3d_probe(struct platform_device *pdev) | |||
362 | error_iio_unreg: | 362 | error_iio_unreg: |
363 | iio_device_unregister(indio_dev); | 363 | iio_device_unregister(indio_dev); |
364 | error_remove_trigger: | 364 | error_remove_trigger: |
365 | hid_sensor_remove_trigger(indio_dev); | 365 | hid_sensor_remove_trigger(&accel_state->common_attributes); |
366 | error_unreg_buffer_funcs: | 366 | error_unreg_buffer_funcs: |
367 | iio_triggered_buffer_cleanup(indio_dev); | 367 | iio_triggered_buffer_cleanup(indio_dev); |
368 | error_free_dev_mem: | 368 | error_free_dev_mem: |
@@ -375,10 +375,11 @@ static int hid_accel_3d_remove(struct platform_device *pdev) | |||
375 | { | 375 | { |
376 | struct hid_sensor_hub_device *hsdev = pdev->dev.platform_data; | 376 | struct hid_sensor_hub_device *hsdev = pdev->dev.platform_data; |
377 | struct iio_dev *indio_dev = platform_get_drvdata(pdev); | 377 | struct iio_dev *indio_dev = platform_get_drvdata(pdev); |
378 | struct accel_3d_state *accel_state = iio_priv(indio_dev); | ||
378 | 379 | ||
379 | sensor_hub_remove_callback(hsdev, HID_USAGE_SENSOR_ACCEL_3D); | 380 | sensor_hub_remove_callback(hsdev, HID_USAGE_SENSOR_ACCEL_3D); |
380 | iio_device_unregister(indio_dev); | 381 | iio_device_unregister(indio_dev); |
381 | hid_sensor_remove_trigger(indio_dev); | 382 | hid_sensor_remove_trigger(&accel_state->common_attributes); |
382 | iio_triggered_buffer_cleanup(indio_dev); | 383 | iio_triggered_buffer_cleanup(indio_dev); |
383 | kfree(indio_dev->channels); | 384 | kfree(indio_dev->channels); |
384 | 385 | ||
diff --git a/drivers/iio/accel/kxsd9.c b/drivers/iio/accel/kxsd9.c index d72118d1189c..98ba761cbb9c 100644 --- a/drivers/iio/accel/kxsd9.c +++ b/drivers/iio/accel/kxsd9.c | |||
@@ -112,9 +112,10 @@ static int kxsd9_read(struct iio_dev *indio_dev, u8 address) | |||
112 | mutex_lock(&st->buf_lock); | 112 | mutex_lock(&st->buf_lock); |
113 | st->tx[0] = KXSD9_READ(address); | 113 | st->tx[0] = KXSD9_READ(address); |
114 | ret = spi_sync_transfer(st->us, xfers, ARRAY_SIZE(xfers)); | 114 | ret = spi_sync_transfer(st->us, xfers, ARRAY_SIZE(xfers)); |
115 | if (ret) | 115 | if (!ret) |
116 | return ret; | 116 | ret = (((u16)(st->rx[0])) << 8) | (st->rx[1] & 0xF0); |
117 | return (((u16)(st->rx[0])) << 8) | (st->rx[1] & 0xF0); | 117 | mutex_unlock(&st->buf_lock); |
118 | return ret; | ||
118 | } | 119 | } |
119 | 120 | ||
120 | static IIO_CONST_ATTR(accel_scale_available, | 121 | static IIO_CONST_ATTR(accel_scale_available, |