1. 23 Mar, 2017 1 commit
    • simran singhal's avatar
      staging: iio: adis16060: Remove iio_dev mlock and refactor code · 9dde479e
      simran singhal authored
      The IIO subsystem is redefining iio_dev->mlock to be used by
      the IIO core only for protecting device operating mode changes.
      ie. Changes between INDIO_DIRECT_MODE, INDIO_BUFFER_* modes.
      
      In this driver, mlock was being used to protect hardware state changes.
      
      In the driver, buf_lock protects both the adis16060_spi_write() and
      adis16060_spi_read() functions and both are always called in
      pair. First write, then read. Refactor the code to have
      one single function adis16060_spi_write_than_read() protected by
      the buf_lock.  This removes the need for additional locking via
      mlock, so this locking is removed.
      Signed-off-by: default avatarsimran singhal <singhalsimran0@gmail.com>
      Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
      9dde479e
  2. 22 Mar, 2017 1 commit
    • Greg Kroah-Hartman's avatar
      Merge tag 'iio-for-4.12b' of... · c831c583
      Greg Kroah-Hartman authored
      Merge tag 'iio-for-4.12b' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-next
      
      Jonathan writes:
      
      2nd set of new device support, features and cleanups for IIO in the 4.12 cycle
      
      A good collection of outreachy related patches in here - mostly staging
      driver cleanup. Also a fair number of patches added explicit OF device ID
      tables for i2c drivers - a precursor to dropping (eventually) the implicit
      probing.
      
      New Device Support
      * Allwinner SoC ADC.
        - So far covers the sun4i-a10, sun5i-a13 and sun6i-a31 general purpose ADCs,
        including thermal side of things.
        This missed the last cycle due to my incompetence, so good to get in now,
        particularly as various patches dependent on it are appearing.
      * ltc2632
        - new driver supporting ltc2632-l12, ltc2632-l10, ltc2632-l8, ltc2632-h12,
          ltc-2632-h10, ltc-2632-h8 dacs
      
      Cleanups
      * Documentation
        - drop a broken reference to i2c/trivial-devices
      * ad2s1200
        - drop & from function pointers for consistency.
      * ad2s1210
        - formatting fixes.
      * ad7152
        - octal permissions instead of symbolic.
        - drop & from function pointers for consistent usage.
      * ad7192
        - drop & from function pointers for consistent usage.
      * ad7280
        - replace core mlock usage with a local lock as mlock is intended only to
        protect the current device state (direct reads, or triggered and buffered)
      * ad7746
        - drop & from function pointers for consistent usage.
        - replace core mlock usage with a local lock as mlock is intended only to
        protect the current device state (direct reads, or triggered and buffered)
      * ad7754
        - move contents of header file into source file as not used anywhere else.
      * ad7759
        - move contents of header file into source file as not used anywhere else.
      * ad7780
        - drop & from function pointers for consistent usage.
      * ad7832
        - replace core mlock usage with a local lock as mlock is intended only to
        protect the current device state (direct reads, or triggered and buffered)
      * ad9834
        - replace core mlock usage with a local lock as mlock is intended only to
        protect the current device state (direct reads, or triggered and buffered)
        - drop an unnecessary goto in favour of direct return.
      * adis16060
        - drop & from function pointers as inconsistent.
      * adis16201
        - drop a local mutex as the adis core already protects everything necessary.
        - drop & from function pointers for consistent usage.
      * adis16203
        - drop & from function pointers for consistent usage.
      * adis16209
        - drop a local mutex as the adis core already protects everything necessary.
        - use an enum for scan index giving slightly nicer code.
        - drop & from function pointers for consistent usage.
      * adis16240
        - drop a local mutex as the adis core already protects everything necessary.
        - use an enum for scan index giving slightly nicer code.
        - drop & from function pointers for consistent usage.
      * apds9960
        - add OF device ID table.
      * bma180
        - add OF device ID table.
        - prefer unsigned int to bare use of unsigned.
      * bmc150_magn
        - add OF device ID table.
      * hmp03
        - add OF device ID table.
      * ina2xx
        - add OF device ID table.
      * itg3200
        - add OF device ID table.
      * mag3110
        - add OF device ID table.
      * max11100
        - remove .owner field as it is set by the spi core.
      * max5821
        - add .of_match_table set to the ID table which was present but not used.
      * mcp4725
        - add OF device ID table.
      * mlx96014
        - add OF device ID table.
      * mma7455
        - add OF device ID table.
      * mma7660
        - add OF device ID table.
      * mpl3115
        - add OF device ID table.
      * mpu6050
        - add OF device ID table.
      * pc104
        - mask pc104 drivers behind a global pc104 config option.
      * ti-ads1015
        - add OF device ID table.
      * tsl2563
        - add OF device ID table.
      * us5182d
        - add OF device ID table.
      c831c583
  3. 21 Mar, 2017 38 commits