Merge tag 'iio-fixes-for-3.16a' of git://git.kernel.org/pub/scm/linux/kernel/git...
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 18 Jun 2014 17:41:08 +0000 (10:41 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 18 Jun 2014 17:41:08 +0000 (10:41 -0700)
Jonathan writes:

First set of IIO fixes for the 3.16 cycle.

A mixed bag of fixes, many of which feel just to late for 3.15.

* hid sensors - some devices need a feature report request in order to
  change power state.  This isn't part of the spec, but has been observed
  on several devices and does no harm to others.
* mpl3115 has had two errors in the buffer description fixed. The presure is
  signed, not unsigned and the temperature has 12 bits rather than 16.
  These could lead to incorrect interpretation of the data in userspace.
* tsl2x7x - the high byte of the proximity thresholds should be written along
  with the low byte (which was). This could lead to interesting results
  with large thresholds.
* twl4030 - a flag to specify processed values were required was not set
  when initializing a reading.  As such values returned were in an unknown
  state. Fixed by simply initializing it appropriately.
* IIO_SIMPLE_DUMMY_BUFFER did not select IIO_BUFFER leading to randconfig
  build errors.
* ak8975 was applying an unwanted le16_to_cpu conversion as the i2c framework
  already performs one.  As such for big endian systems, the bytes would be
  in the wrong order in the magnetic field measurements reported.
* mxs-lradc - the controllable voltage dividers were not enabled / disabled for
  later channels than the first one during conversion.
* at91_adc error handling returned -ENOMEM in a u8. Return value of
  at91_adc_get_trigger_value_by_name changed to int thus allowing -ENOMEM and
  also original values to be returned.
* mcb - mcb_request_mem returns and ERR_PTR but the caller was checking for
  NULL to detect an error.

1  2 
drivers/iio/adc/at91_adc.c
drivers/iio/common/hid-sensors/hid-sensor-trigger.c
drivers/iio/magnetometer/ak8975.c

Simple merge
index 73282cee0c81f1c025c31e2e060ae83d5aecd3ac,f26f52d7c46f6bae38c3b267d1b6f17879b13824..a3109a6f4d86569a86d445f8a967fe4b3a4d8cab
@@@ -75,15 -73,11 +75,18 @@@ int hid_sensor_power_state(struct hid_s
                                        (s32)report_val);
        }
  
+       sensor_hub_get_feature(st->hsdev, st->power_state.report_id,
+                                       st->power_state.index,
+                                       &state_val);
        return 0;
  }
 +EXPORT_SYMBOL(hid_sensor_power_state);
 +
 +static int hid_sensor_data_rdy_trigger_set_state(struct iio_trigger *trig,
 +                                              bool state)
 +{
 +      return hid_sensor_power_state(iio_trigger_get_drvdata(trig), state);
 +}
  
  void hid_sensor_remove_trigger(struct hid_sensor_common *attrb)
  {
Simple merge