aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/iio/magnetometer
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-12-02 19:39:07 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-12-02 19:39:07 -0500
commit06749f192b740651302a84273707d0b66749d126 (patch)
treef79f6bd1f8a8a0b63b624d78bedc5c00650f1383 /drivers/iio/magnetometer
parent931cf48d2db64c67d0e917f55d7db7ab7b9fefa3 (diff)
parentdc1ccc48159d63eca5089e507c82c7d22ef60839 (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/magnetometer')
-rw-r--r--drivers/iio/magnetometer/Kconfig2
-rw-r--r--drivers/iio/magnetometer/hid-sensor-magn-3d.c5
-rw-r--r--drivers/iio/magnetometer/mag3110.c7
3 files changed, 11 insertions, 3 deletions
diff --git a/drivers/iio/magnetometer/Kconfig b/drivers/iio/magnetometer/Kconfig
index 0cf09637b35b..d86d226dcd67 100644
--- a/drivers/iio/magnetometer/Kconfig
+++ b/drivers/iio/magnetometer/Kconfig
@@ -19,6 +19,8 @@ config AK8975
19config MAG3110 19config MAG3110
20 tristate "Freescale MAG3110 3-Axis Magnetometer" 20 tristate "Freescale MAG3110 3-Axis Magnetometer"
21 depends on I2C 21 depends on I2C
22 select IIO_BUFFER
23 select IIO_TRIGGERED_BUFFER
22 help 24 help
23 Say yes here to build support for the Freescale MAG3110 3-Axis 25 Say yes here to build support for the Freescale MAG3110 3-Axis
24 magnetometer. 26 magnetometer.
diff --git a/drivers/iio/magnetometer/hid-sensor-magn-3d.c b/drivers/iio/magnetometer/hid-sensor-magn-3d.c
index 67fce1916d21..6d162b7e7af5 100644
--- a/drivers/iio/magnetometer/hid-sensor-magn-3d.c
+++ b/drivers/iio/magnetometer/hid-sensor-magn-3d.c
@@ -363,7 +363,7 @@ static int hid_magn_3d_probe(struct platform_device *pdev)
363error_iio_unreg: 363error_iio_unreg:
364 iio_device_unregister(indio_dev); 364 iio_device_unregister(indio_dev);
365error_remove_trigger: 365error_remove_trigger:
366 hid_sensor_remove_trigger(indio_dev); 366 hid_sensor_remove_trigger(&magn_state->common_attributes);
367error_unreg_buffer_funcs: 367error_unreg_buffer_funcs:
368 iio_triggered_buffer_cleanup(indio_dev); 368 iio_triggered_buffer_cleanup(indio_dev);
369error_free_dev_mem: 369error_free_dev_mem:
@@ -376,10 +376,11 @@ static int hid_magn_3d_remove(struct platform_device *pdev)
376{ 376{
377 struct hid_sensor_hub_device *hsdev = pdev->dev.platform_data; 377 struct hid_sensor_hub_device *hsdev = pdev->dev.platform_data;
378 struct iio_dev *indio_dev = platform_get_drvdata(pdev); 378 struct iio_dev *indio_dev = platform_get_drvdata(pdev);
379 struct magn_3d_state *magn_state = iio_priv(indio_dev);
379 380
380 sensor_hub_remove_callback(hsdev, HID_USAGE_SENSOR_COMPASS_3D); 381 sensor_hub_remove_callback(hsdev, HID_USAGE_SENSOR_COMPASS_3D);
381 iio_device_unregister(indio_dev); 382 iio_device_unregister(indio_dev);
382 hid_sensor_remove_trigger(indio_dev); 383 hid_sensor_remove_trigger(&magn_state->common_attributes);
383 iio_triggered_buffer_cleanup(indio_dev); 384 iio_triggered_buffer_cleanup(indio_dev);
384 kfree(indio_dev->channels); 385 kfree(indio_dev->channels);
385 386
diff --git a/drivers/iio/magnetometer/mag3110.c b/drivers/iio/magnetometer/mag3110.c
index 783c5b417356..becf54496967 100644
--- a/drivers/iio/magnetometer/mag3110.c
+++ b/drivers/iio/magnetometer/mag3110.c
@@ -250,7 +250,12 @@ done:
250 .info_mask_shared_by_type = BIT(IIO_CHAN_INFO_SAMP_FREQ) | \ 250 .info_mask_shared_by_type = BIT(IIO_CHAN_INFO_SAMP_FREQ) | \
251 BIT(IIO_CHAN_INFO_SCALE), \ 251 BIT(IIO_CHAN_INFO_SCALE), \
252 .scan_index = idx, \ 252 .scan_index = idx, \
253 .scan_type = IIO_ST('s', 16, 16, IIO_BE), \ 253 .scan_type = { \
254 .sign = 's', \
255 .realbits = 16, \
256 .storagebits = 16, \
257 .endianness = IIO_BE, \
258 }, \
254} 259}
255 260
256static const struct iio_chan_spec mag3110_channels[] = { 261static const struct iio_chan_spec mag3110_channels[] = {