linux/include
Greg Kroah-Hartman a3476ac678 Second set of IIO new drivers, cleanups and functionality for the 3.16 cycle.
This set contains a change to the ABI for the hid-sensors drivers to bring them
 in line with the long published documentation.  Unfortunately, rather than
 reporting true scale and offset values via sysfs they were reporting
 some magic numbers that could only be converted to anything useful using
 the HID sensors specification. I missed this entirely through the introduction
 of a number of drivers, only picking up on it recently.  Srinivas has had
 user feedback about this as well. The patch set is too large to go as a fix
 at this stage in the cycle and is not a regression fix as this was never
 right and so will have to wait for the next merge window. Srinivas assures
 me that there are relatively few pieces of hardware out there and he has
 had a number of people contact him to point out that the drivers did not
 obey the ABI.  Hence hopefully the fallout of this, if any will be minor.
 If we don't fix it now, it will only get worse going forward. There is no
 sensible way of maintaining the incorrect ABI as it is simply returning
 the wrong values through the standard interfaces.
 
 Non IIO elements
 * Introduce devm_kmemdup.  Does what it says on the tin.
 
 New drivers:
 * hid-sensors rotation devices (output as quaternion)
 * Freescale MPL115A2 presure and temperature sensor.
 * Melexis mlx90614 contactless infrared sensor.
 * Freescale MMA8452Q 3-axis accelerometer.
 
 New functionality:
 * Addition of multiple element callback to allow for sysfs interfaces to access
   elements such as quaternions which have no useful meaning if all 4 elements
   are not presented together.  Other future usecases for this include
   rotation matrices.
 * Support for multiple element buffer entries for exactly the same uses as
   the sysfs related elements described above.
 * Quaternion support via the quaternion IIO modifier.
 * TEMP_AMBIENT and TEMP_OBJECT modifiers to distinguish cases with thermopile
   devices.
 * hid-sensors gain sysfs access to the sensor readings. Previously these
   drivers used the buffered interface only.  This change involves some
   additional hid-sensors core support to read poll values back from the devices
   to allow the drivers to know roughly how long to wait for a result when
   polling the sensor.  There is also an associated hid-sensors abi to allow
   the devices to be turned off between reads and powered up on demand.
 
 Cleanups and fixes
 * Hid sensors fix as described above. Result is to make the _scale and _offset
   attributes applicable in the same way as for all other IIO drivers.
 * Some additional documentation - mostly covering stuff that graduated from
   staging without managing to take it's ABI docs with it.
 * A series of little tidy ups to the exynos_adc driver that make the code
   nicer to read and improve handling of some corner cases.
 * A tidy up to mag3110 (logical fix rather than a real one ;). Also enable
   user offset calibration for this device.
 * Drop some left over IS_ERR() checks from ad799x that snuck through during
   the cleanup in the last IIO patch set.
 * Fix a naming issue from clashing patches in ak8975 - note the clash only
   occured in the last IIO patch set, hence the fix needs to go through this
   tree.
 * A format string missmatch fix in ad7280.c. Unlikely to have ever had an
   impact so not worth rushing through.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJTZ4D6AAoJEFSFNJnE9BaI48QP/AwIAmbImfIHH+992SbL0yU4
 O/O5DnectH11fH0aJftISelBmXdzySigMX/7cEGzGKpFyRm3u8zBXRh2f4bS2JZW
 V5//sBe7bNTTeNm6RDdgABos6boeLZFW0f+UNY1jCsIq3WvdRlVtMGLrOCPRoKEL
 jyjo5kpt14Rhz5Sitk91aEfHk9IFv2HGeUkKFQ+y8tdQmpza7O1o9PLw6HWeVelv
 yLfqO/1hIqBCnJKal39n+gqGSVmyXNlog7D6hZCx+Qb/u0uJU6Iw57BVo3vbYuiV
 IcV0dgweEaQFxS32ueRfj5FuxAw3DS2pMF/y1j1fhW3UNJl5JBxfAeRSUDzsKjIT
 H602WTl6C/20sii/EZmbX5AfffYW1HRSvXEnjQIOfcYcbasn+zx4hlzXKS1vJyxF
 T4OyKVQIZ1gnwDkbcYnIgcuY+p6vJNj3kE0884WqJA4xYATzQ5BqFvTLlxZ2wp73
 RyhqbYlmvckl4376vJacqkLkSQqpSfqWRV8035hXZaY/1QMnuUBqFpjXdcvr1VJ8
 +4KzDGzzvLrOlJMsI3JZS2MXh72t+Rwl7/m4kocRApG0waEj6ykFRUJjJTdTfxmC
 jSfivW7rdctlPFnFQdTchOyg95RzRD5+Ynj/FFHxz6l4SPJzY6RrzuOSHJ4d4yl9
 /QHkdJV4UpR/YN2ECpe/
 =ghZG
 -----END PGP SIGNATURE-----

Merge tag 'iio-for-3.16b' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-next

Jonathan writes:

Second set of IIO new drivers, cleanups and functionality for the 3.16 cycle.

This set contains a change to the ABI for the hid-sensors drivers to bring them
in line with the long published documentation.  Unfortunately, rather than
reporting true scale and offset values via sysfs they were reporting
some magic numbers that could only be converted to anything useful using
the HID sensors specification. I missed this entirely through the introduction
of a number of drivers, only picking up on it recently.  Srinivas has had
user feedback about this as well. The patch set is too large to go as a fix
at this stage in the cycle and is not a regression fix as this was never
right and so will have to wait for the next merge window. Srinivas assures
me that there are relatively few pieces of hardware out there and he has
had a number of people contact him to point out that the drivers did not
obey the ABI.  Hence hopefully the fallout of this, if any will be minor.
If we don't fix it now, it will only get worse going forward. There is no
sensible way of maintaining the incorrect ABI as it is simply returning
the wrong values through the standard interfaces.

Non IIO elements
* Introduce devm_kmemdup.  Does what it says on the tin.

New drivers:
* hid-sensors rotation devices (output as quaternion)
* Freescale MPL115A2 presure and temperature sensor.
* Melexis mlx90614 contactless infrared sensor.
* Freescale MMA8452Q 3-axis accelerometer.

New functionality:
* Addition of multiple element callback to allow for sysfs interfaces to access
  elements such as quaternions which have no useful meaning if all 4 elements
  are not presented together.  Other future usecases for this include
  rotation matrices.
* Support for multiple element buffer entries for exactly the same uses as
  the sysfs related elements described above.
* Quaternion support via the quaternion IIO modifier.
* TEMP_AMBIENT and TEMP_OBJECT modifiers to distinguish cases with thermopile
  devices.
* hid-sensors gain sysfs access to the sensor readings. Previously these
  drivers used the buffered interface only.  This change involves some
  additional hid-sensors core support to read poll values back from the devices
  to allow the drivers to know roughly how long to wait for a result when
  polling the sensor.  There is also an associated hid-sensors abi to allow
  the devices to be turned off between reads and powered up on demand.

Cleanups and fixes
* Hid sensors fix as described above. Result is to make the _scale and _offset
  attributes applicable in the same way as for all other IIO drivers.
* Some additional documentation - mostly covering stuff that graduated from
  staging without managing to take it's ABI docs with it.
* A series of little tidy ups to the exynos_adc driver that make the code
  nicer to read and improve handling of some corner cases.
* A tidy up to mag3110 (logical fix rather than a real one ;). Also enable
  user offset calibration for this device.
* Drop some left over IS_ERR() checks from ad799x that snuck through during
  the cleanup in the last IIO patch set.
* Fix a naming issue from clashing patches in ak8975 - note the clash only
  occured in the last IIO patch set, hence the fix needs to go through this
  tree.
* A format string missmatch fix in ad7280.c. Unlikely to have ever had an
  impact so not worth rushing through.
2014-05-05 16:40:54 -07:00
..
acpi IOMMU Upates for Linux v3.15 2014-04-05 18:46:26 -07:00
asm-generic word-at-a-time: avoid undefined behaviour in zero_bytemask macro 2014-04-27 15:20:05 -07:00
clocksource
crypto crypto: export NULL algorithms defines 2014-03-21 21:54:26 +08:00
drm Merge branch 'drm-next-3.15-wip' of git://people.freedesktop.org/~deathsimple/linux into drm-next 2014-04-19 11:16:02 +10:00
dt-bindings dt: tegra: remove non-existent clock IDs 2014-04-24 15:37:08 +02:00
keys
kvm
linux Second set of IIO new drivers, cleanups and functionality for the 3.16 cycle. 2014-05-05 16:40:54 -07:00
math-emu
media [media] rc-core: remove generic scancode filter 2014-04-06 11:30:29 -03:00
memory
misc
net net: sctp: cache auth_enable per endpoint 2014-04-18 18:32:00 -04:00
pcmcia
ras
rdma Merge branches 'core', 'cxgb4', 'ip-roce', 'iser', 'misc', 'mlx4', 'nes', 'ocrdma', 'qib', 'sgwrapper', 'srp' and 'usnic' into for-next 2014-04-03 08:30:17 -07:00
rxrpc
scsi scsi: Make sure cmd_flags are 64-bit 2014-04-09 20:26:20 -06:00
sound ALSA: cs8427: separate HW initialization 2014-04-03 14:59:48 +02:00
target target/sbc: Add sbc_dif_read_strip software emulation 2014-04-07 01:48:57 -07:00
trace These are regression and bug fixes for ext4. 2014-04-20 20:43:47 -07:00
uapi File locking related bugfixes for v3.15 (pile #2) 2014-04-25 12:40:32 -07:00
video fbdev changes for 3.15 (OMAP) 2014-04-07 10:47:51 -07:00
xen xen/acpi-processor: fix enabling interrupts on syscore_resume 2014-03-18 14:40:20 +00:00
Kbuild