# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/potentiostat/ti,lmp91000.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Texas Instruments LMP91000 series of potentiostats with I2C control

maintainers:
  - Matt Ranostay <matt.ranostay@konsulko.com>

description: |
  Typically used as a signal conditioner for chemical sensors.
  LMP91000: https://www.ti.com/lit/ds/symlink/lmp91000.pdf
  LMP91002: https://www.ti.com/lit/ds/symlink/lmp91002.pdf

properties:
  compatible:
    enum:
      - ti,lmp91000
      - ti,lmp91002

  reg:
    maxItems: 1

  io-channels:
    maxItems: 1

  ti,external-tia-resistor:
    $ref: /schemas/types.yaml#/definitions/flag
    description:
      If the property ti,tia-gain-ohm is not defined this needs to be set to
      signal that an external resistor value is being used.

  ti,tia-gain-ohm:
    $ref: /schemas/types.yaml#/definitions/uint32
    enum: [2750, 3500, 7000, 14000, 35000, 120000, 350000]
    description:
      Internal resistor for the transimpedance amplifier.

  ti,rload-ohm:
    $ref: /schemas/types.yaml#/definitions/uint32
    enum: [10, 33, 50, 100]
    description:
      Internal resistor load applied to the gas sensor.
      Default 100 Ohms.

required:
  - compatible
  - reg
  - io-channels

additionalProperties: false

examples:
  - |
    i2c {
        #address-cells = <1>;
        #size-cells = <0>;
        lmp91000@48 {
            compatible = "ti,lmp91000";
            reg = <0x48>;
            ti,tia-gain-ohm = <7000>;
            ti,rload-ohm = <100>;
            io-channels = <&adc>;
        };
    };
...