Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 08cad739 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

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

Jonathan writes:

Second round of IIO new device support, cleanups and features for the 4.11 cycle

New device support:
* lsm6dsx imu
  - new driver and bindings.
* max11100 adc
  - new driver and bindings.
* tlc4541
  - new driver
* tmp007 thermopile
  - new driver.

Core
* in kernel interfaces
  - pass through raw values if no scaling provided and a processed value is
    requested.
* trigger
  - close a race condition in acquiring trigger reference.
  - constify device_type structures.
  - rework the viio_trigger_alloc function to be much neater and easier to
  read.
  - free trigger resources correctly on some error paths. Avoids putting a
  module we don't have.

Documentation
* ABI
  - specify a unit for proximity measurements.

Cleanups and features
* ads1015
  - constify iio_info structure.
* ads7950 cleanups following merge in previous pull
  - Add device tree bindings
  - Drop the ti prefix from the module name in common with other drivers.
  - Change regulator name to vref to match datasheet and other drivers.
* ak8974
  - remove a redundant zero timeout check.
* bmi160
  - use variable names for sizeof instead of types.
* cm3605
  - mark PM functions as __maybe_unused to avoid a build warning.
* isl29028 (on it's way towards moving out of staging).
  - alignment fixes and newline improvements.
  - combine proxim_get and read_proxim for simpler code.
  - drop unused ISL29028_DEV_ATTR macro
  - move some error logging into functions to cut out repitition.
  - make error messages more consistent.
  - tidy up some brackets.
  - drop the enable flag that nothing uses.
  - only set proximity rate and ALS scale when relevant channel type is enabled.
  - runtime pm support.
* lsm6dsx
  - fix wrong values for gyro sensitivitiy.
* mag3110
  - claim direct mode during sysfs reads to avoid a race condition.
* max1363
  - export OF device table IDs as module aliases.
* max30100
  - use msleep for long uncritical delays.
* mcp4531
  - export OF device table as module aliases.
* ms5611
  - claim direct mode during sysfs reads to avoid a race condition.
* opt3001
  - export OF device table as module aliases.
* sx9500
  - claim direct mode during oversampling changes to avoid a race condition.
parents 994261dc 10e840df
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -1255,7 +1255,8 @@ Description:
		reflectivity of infrared or ultrasound emitted.
		Often these sensors are unit less and as such conversion
		to SI units is not possible. Higher proximity measurements
		indicate closer objects, and vice versa.
		indicate closer objects, and vice versa. Units after
		application of scale and offset are meters.

What:		/sys/.../iio:deviceX/in_illuminance_input
What:		/sys/.../iio:deviceX/in_illuminance_raw
+18 −0
Original line number Diff line number Diff line
* Maxim max11100 Analog to Digital Converter (ADC)

Required properties:
  - compatible: Should be "maxim,max11100"
  - reg: the adc unit address
  - vref-supply: phandle to the regulator that provides reference voltage

Optional properties:
  - spi-max-frequency: SPI maximum frequency

Example:

max11100: adc@0 {
        compatible = "maxim,max11100";
        reg = <0>;
        vref-supply = <&adc0_vref>;
        spi-max-frequency = <240000>;
};
+23 −0
Original line number Diff line number Diff line
* Texas Instruments ADS7950 family of A/DC chips

Required properties:
 - compatible: Must be one of "ti,ads7950", "ti,ads7951", "ti,ads7952",
   "ti,ads7953", "ti,ads7954", "ti,ads7955", "ti,ads7956", "ti,ads7957",
   "ti,ads7958", "ti,ads7959", "ti,ads7960", or "ti,ads7961"
 - reg: SPI chip select number for the device
 - #io-channel-cells: Must be 1 as per ../iio-bindings.txt
 - vref-supply: phandle to a regulator node that supplies the 2.5V or 5V
   reference voltage

Recommended properties:
 - spi-max-frequency: Definition as per
		Documentation/devicetree/bindings/spi/spi-bus.txt

Example:
adc@0 {
	compatible = "ti,ads7957";
	reg = <0>;
	#io-channel-cells = <1>;
	vref-supply = <&refin_supply>;
	spi-max-frequency = <10000000>;
};
+24 −0
Original line number Diff line number Diff line
* ST_LSM6DSx driver for STM 6-axis (acc + gyro) imu Mems sensors

Required properties:
- compatible: must be one of:
  "st,lsm6ds3"
  "st,lsm6dsm"
- reg: i2c address of the sensor / spi cs line

Optional properties:
- interrupt-parent: should be the phandle for the interrupt controller
- interrupts: interrupt mapping for IRQ. It should be configured with
  flags IRQ_TYPE_LEVEL_HIGH or IRQ_TYPE_EDGE_RISING.

  Refer to interrupt-controller/interrupts.txt for generic interrupt
  client node bindings.

Example:

lsm6dsm@6b {
	compatible = "st,lsm6dsm";
	reg = <0x6b>;
	interrupt-parent = <&gpio0>;
	interrupts = <0 IRQ_TYPE_EDGE_RISING>;
};
+27 −0
Original line number Diff line number Diff line
* TI TMP007 - IR thermopile sensor with integrated math engine

Link to datasheet: http://www.ti.com/lit/ds/symlink/tmp007.pdf

Required properties:

  - compatible: should be "ti,tmp007"
  - reg: the I2C address of the sensor (changeable via ADR pins)
		------------------------------
		|ADR1 | ADR0 | Device Address|
		------------------------------
		   0      0        0x40
		   0	  1	   0x41
		   0	 SDA       0x42
		   0     SCL       0x43
		   1      0        0x44
		   1      1        0x45
		   1	 SDA	   0x46
		   1     SCL       0x47

Example:

tmp007@40 {
        compatible = "ti,tmp007";
        reg = <0x40>;
};
Loading