From: Abhisit Sangjan <s.abhisit@xxxxxxxxx> TI LMP92001 Analog System Monitor and Controller 8-bit GPIOs. 12 DACs with 12-bit resolution. The GPIOs and DACs are shared port function with Cy function pin to take control the pin suddenly from external hardware. DAC's referance voltage selectable for Internal/External. 16 + 1 ADCs with 12-bit resolution. Built-in internal Temperature Sensor on channel 17. Window Comparator Function is supported on channel 1-3 and 9-11 for monitoring with interrupt signal (pending to implement for interrupt). ADC's referance voltage selectable for Internal/External. Signed-off-by: Abhisit Sangjan <s.abhisit@xxxxxxxxx> --- Documentation/ABI/testing/sysfs-bus-iio-lmp920001 | 65 ++++++++++++++++++++++ .../devicetree/bindings/gpio/gpio-lmp92001.txt | 22 ++++++++ .../bindings/iio/adc/ti-lmp92001-adc.txt | 20 +++++++ .../bindings/iio/dac/ti-lmp92001-dac.txt | 35 ++++++++++++ 4 files changed, 142 insertions(+) create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-lmp920001 create mode 100644 Documentation/devicetree/bindings/gpio/gpio-lmp92001.txt create mode 100644 Documentation/devicetree/bindings/iio/adc/ti-lmp92001-adc.txt create mode 100644 Documentation/devicetree/bindings/iio/dac/ti-lmp92001-dac.txt diff --git a/Documentation/ABI/testing/sysfs-bus-iio-lmp920001 b/Documentation/ABI/testing/sysfs-bus-iio-lmp920001 new file mode 100644 index 000000000000..f0965e7d823f --- /dev/null +++ b/Documentation/ABI/testing/sysfs-bus-iio-lmp920001 @@ -0,0 +1,65 @@ +What: /sys/bus/iio/devices/iio:deviceX/gang +Date: August 2016 +KernelVersion: 4.12 +Contact: Abhisit Sangjan <s.abhisit@xxxxxxxxx> +Description: + Controls the association of analog output channels OUTx with + asynchronous control inputs Cy for DAC. + Can be either: + - "0" + - "1" + + Cy to OUTx Assignment + ---------------------------------- + | Cy | CDAC:GANG=0 | CDAC:GANG=1 | + ---------------------------------- + | C1 | OUT[1:4] | OUT[1:3] | + ---------------------------------- + | C2 | OUT[5:6] | OUT[4:6] | + ---------------------------------- + | C3 | OUT[7:8] | OUT[7:9] | + ---------------------------------- + | C4 | OUT[9:12] | OUT[10:12] | + ---------------------------------- + +What: /sys/bus/iio/devices/iio:deviceX/outx +Date: August 2016 +KernelVersion: 4.12 +Contact: Abhisit Sangjan <s.abhisit@xxxxxxxxx> +Description: + The pin output mode for DAC. + Can be either: + - "hiz" = High impedance state. + - "dac" = DAC output. + - "0" = Drive it to low. + - "1" = Drive it to high. + +What: /sys/bus/iio/devices/iio:deviceX/vref +Date: August 2016 +KernelVersion: 4.12 +Contact: Abhisit Sangjan <s.abhisit@xxxxxxxxx> +Description: + This is voltage reference source for DACs. + Can be either: + - "external" + - "internal" + +What: /sys/devices/.../iio:deviceX/en +Date: August 2016 +KernelVersion: 4.12 +Contact: Abhisit Sangjan <s.abhisit@xxxxxxxxx> +Description: + This is ADC Conversion Enable for each channel. + Can be either: + - "enable" + - "disable" + +What: /sys/devices/.../iio:deviceX/vref +Date: August 2016 +KernelVersion: 4.12 +Contact: Abhisit Sangjan <s.abhisit@xxxxxxxxx> +Description: + This is voltage reference source for ADCs. + Can be either: + - "external" + - "internal" diff --git a/Documentation/devicetree/bindings/gpio/gpio-lmp92001.txt b/Documentation/devicetree/bindings/gpio/gpio-lmp92001.txt new file mode 100644 index 000000000000..f9a18c492145 --- /dev/null +++ b/Documentation/devicetree/bindings/gpio/gpio-lmp92001.txt @@ -0,0 +1,22 @@ +* Texas Instruments' LMP92001 GPIOs + +Required properties: + - compatible: Must be set to "ti,lmp92001-gpio". + - reg: i2c chip address for the device. + - gpio-controller: Marks the device node as a gpio controller. + - #gpio-cells : Should be two. The first cell is the pin number and the + second cell is used to specify the gpio polarity: + 0 = Active high + 1 = Active low + +Example: +lmp92001@20 { + compatible = "ti,lmp92001"; + reg = <0x20>; + + gpio-controller { + compatible = "ti,lmp92001-gpio"; + gpio-controller; + #gpio-cells = <2>; + }; +}; diff --git a/Documentation/devicetree/bindings/iio/adc/ti-lmp92001-adc.txt b/Documentation/devicetree/bindings/iio/adc/ti-lmp92001-adc.txt new file mode 100644 index 000000000000..4565961bf511 --- /dev/null +++ b/Documentation/devicetree/bindings/iio/adc/ti-lmp92001-adc.txt @@ -0,0 +1,20 @@ +* Texas Instruments' LMP92001 ADCs + +Required properties: + - compatible: Must be set to "ti,lmp92001-adc". + - reg: i2c chip address for the device. + - ti,lmp92001-adc-mask: bit mask for which channel is enable. + 0 = Off + 1 = On + +Example: +lmp92001@20 { + compatible = "ti,lmp92001"; + reg = <0x20>; + + lmp92001-adc { + compatible = "ti,lmp92001-adc"; + ti,lmp92001-adc-mode = "continuous"; + ti,lmp92001-adc-mask = <0x00000079>; + }; +}; diff --git a/Documentation/devicetree/bindings/iio/dac/ti-lmp92001-dac.txt b/Documentation/devicetree/bindings/iio/dac/ti-lmp92001-dac.txt new file mode 100644 index 000000000000..882db9ca92f5 --- /dev/null +++ b/Documentation/devicetree/bindings/iio/dac/ti-lmp92001-dac.txt @@ -0,0 +1,35 @@ +* Texas Instruments' LMP92001 DACs + +Required properties: + - compatible: Must be set to "ti,lmp92001-dac". + - reg: i2c chip address for the device. + - ti,lmp92001-dac-hiz: hi-impedance control, + 1 = Forces all OUT[1:12] outputs to hi-z, 0 = normal + - ti,lmp92001-dac-outx: + Cy = 0, 1 = will force associated OUTx outputs to VDD + Cy = 0, 0 = will force associated OUTx outputs to GND + - ti,lmp92001-dac-gang: What group of Cy is governed to. + ----------------------------------------- + | Cy | CDAC:GANG = 0 | CDAC:GANG = 1 | + ----------------------------------------- + | C1 | OUT[1:4] | OUT[1:3] | + ----------------------------------------- + | C2 | OUT[5:6] | OUT[4:6] | + ----------------------------------------- + | C3 | OUT[7:8] | OUT[7:9] | + ----------------------------------------- + | C4 | OUT[9:12] | OUT[10:12] | + ----------------------------------------- + +Example: +lmp92001@20 { + compatible = "ti,lmp92001"; + reg = <0x20>; + + lmp92001-dac { + compatible = "ti,lmp92001-dac"; + ti,lmp92001-dac-hiz = /bits/ 8 <0>; + ti,lmp92001-dac-outx = /bits/ 8 <0>; + ti,lmp92001-dac-gang = /bits/ 8 <0>; + }; +}; -- 2.13.0 -- To unsubscribe from this list: send the line "unsubscribe linux-iio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html