• Greg Kroah-Hartman's avatar
    Merge tag 'iio-for-3.14b' of... · a6e8e3a4
    Greg Kroah-Hartman authored
    Merge tag 'iio-for-3.14b' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-next
    
    Jonathan writes:
    
    2nd round of new IIO drivers, features and cleanups for the 3.14 cycle.
    
    New drivers
    
    * HID inclinometer driver.
    
    * DHT11 humidity driver.  Note that previous humidity drivers have been in
      hwmon, but no one was ever entirely happy with that, and they should find
      a more comfortable home in IIO (their original placement in hwmon was my
      fault - oops).  As this is our first humidity driver, core support is also
      added.
    
    New features
    
    * Two of mxs-lradc channels are internally wired to a temperature sensor,
      make this explicit in the driver by providing the relevant temperature
      channel.
    
    * Add support for blocking IO on buffers.
    
    * Add a data_available call back to the interface between buffer implementations
      and the core.  This is much cleaner than the old, 'stufftoread' flag.
      Implemented in the kfifo buffer.
    
    Cleanups
    
    * Last user of the old event configuration interface is converted and the
      old interface dropped.  Nice to be rid of this thanks to Lars-Peter's hard
      work!
    
    * Replace all remaining instances of the IIO_ST macro with explicit filling
      of the scan_type structure within struct iio_chan_spec.  This macro was a
      bad idea, that rapidly ceased to cover all elements of the structure.
      Miss reading of the macro arguements has led to a number of bugs so lets
      just get rid of it. The final removal patch is awaiting for some fixes
      to make their way into mainline.
      In a couple of drivers, no elements of scan_type were even being used so
      in those case, it has been dropped entirely.
    
    * Drop a couple of of_match_ptr helper uses in drivers where devicetree is
      not optional and hence the structures being protected by this always exist.
    
    * Fix up some cases where data was read from a device in a particular
      byte order, but he code placed it into a s16 or similar.  These were
      highlighted by Sparse.
    
    * Use the new ATTRIBUTE_GROUPS macro to drop some boiler plate in the triggers
      core code.
    
    * ad7746 and ad7280a - stop storing buffers on the stack, giving cleaner code
      and possibly avoiding issues with i2c bus drivers that assume they can dma
      directly into the buffer.  Note that this cannot currently happen as the the
      i2c_smbus_read_i2c_block_data function has a memcpy from the buffer actually
      passed to the bus driver.  I missed this element of the commit message
      and don't think it is major enough to rebase the iio tree.
    
    * ad5791 and ad5504 stop storing buffers on the stack for an SPI driver.
      Unlike the i2c drivers, this is a real issue for SPI drivers which can dma
      directly into the buffer supplied.
    a6e8e3a4
cm36651.c 18.8 KB