Commit a86319f4 authored by Jonathan Cameron's avatar Jonathan Cameron
Browse files

dt-bindings:iio:potentiometer: give microchip,mcp4531 its own binding



We use this part in an example for the envelope detector. That showed
that we need to allow for the #io-channel-cells property which
trivial-devices.yaml does not.

It doesn't make sense to add that property to trivial-devices as
it only applies for those devices that can provide some sort of
DAC or ADC service to another device driver.  Hence solution will
be to pull some IIO devices out to have their own file on a case
by case basis.

Signed-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Cc: Peter Rosin <peda@axentia.se>
Link: https://lore.kernel.org/r/20201031181242.742301-4-jic23@kernel.org
parent 06d2ff6f
Loading
Loading
Loading
Loading
+116 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/potentiometer/microchip,mcp4531.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Microchip mcp4531 and similar potentiometers.

maintainers:
  - Peter Rosin <peda@axentia.se>

description: |
  Family of I2C digital potentiometer
  Datasheets at:
  * volatile https://ww1.microchip.com/downloads/en/DeviceDoc/22096b.pdf
  * non-volatile https://ww1.microchip.com/downloads/en/DeviceDoc/22107B.pdf
  Part numbers as follows: mcp4ABC-XXX where
  A =   5 (1 wiper), 6 (2 wipers)
  B =   3 (7-bit, volatile), 4 (7-bit, non-volatile),
        5 (8-bit, volatile), 6 (8-bit, non-volatile),
  C:    1 (potentiometer), 2 (rheostat)
  XXX = 502 (5 kOhms), 103 (10 kOhms), 503 (50 kOhms), 104 (100 kOhms)

properties:
  compatible:
    enum:
        # Ordering reflects part number + range, so 502 < 103 etc
      - microchip,mcp4531-502
      - microchip,mcp4531-103
      - microchip,mcp4531-503
      - microchip,mcp4531-104
      - microchip,mcp4532-502
      - microchip,mcp4532-103
      - microchip,mcp4532-503
      - microchip,mcp4532-104
      - microchip,mcp4541-502
      - microchip,mcp4541-103
      - microchip,mcp4541-503
      - microchip,mcp4541-104
      - microchip,mcp4542-502
      - microchip,mcp4542-103
      - microchip,mcp4542-503
      - microchip,mcp4542-104
      - microchip,mcp4551-502
      - microchip,mcp4551-103
      - microchip,mcp4551-503
      - microchip,mcp4551-104
      - microchip,mcp4552-502
      - microchip,mcp4552-103
      - microchip,mcp4552-503
      - microchip,mcp4552-104
      - microchip,mcp4561-502
      - microchip,mcp4561-103
      - microchip,mcp4561-503
      - microchip,mcp4561-104
      - microchip,mcp4562-502
      - microchip,mcp4562-103
      - microchip,mcp4562-503
      - microchip,mcp4562-104
      - microchip,mcp4631-502
      - microchip,mcp4631-103
      - microchip,mcp4631-503
      - microchip,mcp4631-104
      - microchip,mcp4632-502
      - microchip,mcp4632-103
      - microchip,mcp4632-503
      - microchip,mcp4632-104
      - microchip,mcp4641-502
      - microchip,mcp4641-103
      - microchip,mcp4641-503
      - microchip,mcp4641-104
      - microchip,mcp4642-502
      - microchip,mcp4642-103
      - microchip,mcp4642-503
      - microchip,mcp4642-104
      - microchip,mcp4651-502
      - microchip,mcp4651-103
      - microchip,mcp4651-503
      - microchip,mcp4651-104
      - microchip,mcp4652-502
      - microchip,mcp4652-103
      - microchip,mcp4652-503
      - microchip,mcp4652-104
      - microchip,mcp4661-502
      - microchip,mcp4661-103
      - microchip,mcp4661-503
      - microchip,mcp4661-104
      - microchip,mcp4662-502
      - microchip,mcp4662-103
      - microchip,mcp4662-503
      - microchip,mcp4662-104

  reg:
    maxItems: 1

  "#io-channel-cells":
    const: 1

required:
  - compatible
  - reg

additionalProperties: false

examples:
  - |
    i2c {
        #address-cells = <1>;
        #size-cells = <0>;
        dpot: dpot@28 {
            compatible = "microchip,mcp4651-104";
            reg = <0x28>;
            #io-channel-cells = <1>;
        };
    };
...
+0 −128
Original line number Diff line number Diff line
@@ -210,134 +210,6 @@ properties:
          - microchip,mcp4019-503
            # Microchip 7-bit Single I2C Digital POT (100k)
          - microchip,mcp4019-104
            # Microchip 7-bit Single I2C Digital Potentiometer (5k)
          - microchip,mcp4531-502
            # Microchip 7-bit Single I2C Digital Potentiometer (10k)
          - microchip,mcp4531-103
            # Microchip 7-bit Single I2C Digital Potentiometer (50k)
          - microchip,mcp4531-503
            # Microchip 7-bit Single I2C Digital Potentiometer (100k)
          - microchip,mcp4531-104
            # Microchip 7-bit Single I2C Digital Potentiometer (5k)
          - microchip,mcp4532-502
            # Microchip 7-bit Single I2C Digital Potentiometer (10k)
          - microchip,mcp4532-103
            # Microchip 7-bit Single I2C Digital Potentiometer (50k)
          - microchip,mcp4532-503
            # Microchip 7-bit Single I2C Digital Potentiometer (100k)
          - microchip,mcp4532-104
            # Microchip 7-bit Single I2C Digital Potentiometer with NV Memory (5k)
          - microchip,mcp4541-502
            # Microchip 7-bit Single I2C Digital Potentiometer with NV Memory (10k)
          - microchip,mcp4541-103
            # Microchip 7-bit Single I2C Digital Potentiometer with NV Memory (50k)
          - microchip,mcp4541-503
            # Microchip 7-bit Single I2C Digital Potentiometer with NV Memory (100k)
          - microchip,mcp4541-104
            # Microchip 7-bit Single I2C Digital Potentiometer with NV Memory (5k)
          - microchip,mcp4542-502
            # Microchip 7-bit Single I2C Digital Potentiometer with NV Memory (10k)
          - microchip,mcp4542-103
            # Microchip 7-bit Single I2C Digital Potentiometer with NV Memory (50k)
          - microchip,mcp4542-503
            # Microchip 7-bit Single I2C Digital Potentiometer with NV Memory (100k)
          - microchip,mcp4542-104
            # Microchip 8-bit Single I2C Digital Potentiometer (5k)
          - microchip,mcp4551-502
            # Microchip 8-bit Single I2C Digital Potentiometer (10k)
          - microchip,mcp4551-103
            # Microchip 8-bit Single I2C Digital Potentiometer (50k)
          - microchip,mcp4551-503
            # Microchip 8-bit Single I2C Digital Potentiometer (100k)
          - microchip,mcp4551-104
            # Microchip 8-bit Single I2C Digital Potentiometer (5k)
          - microchip,mcp4552-502
            # Microchip 8-bit Single I2C Digital Potentiometer (10k)
          - microchip,mcp4552-103
            # Microchip 8-bit Single I2C Digital Potentiometer (50k)
          - microchip,mcp4552-503
            # Microchip 8-bit Single I2C Digital Potentiometer (100k)
          - microchip,mcp4552-104
            # Microchip 8-bit Single I2C Digital Potentiometer with NV Memory (5k)
          - microchip,mcp4561-502
            # Microchip 8-bit Single I2C Digital Potentiometer with NV Memory (10k)
          - microchip,mcp4561-103
            # Microchip 8-bit Single I2C Digital Potentiometer with NV Memory (50k)
          - microchip,mcp4561-503
            # Microchip 8-bit Single I2C Digital Potentiometer with NV Memory (100k)
          - microchip,mcp4561-104
            # Microchip 8-bit Single I2C Digital Potentiometer with NV Memory (5k)
          - microchip,mcp4562-502
            # Microchip 8-bit Single I2C Digital Potentiometer with NV Memory (10k)
          - microchip,mcp4562-103
            # Microchip 8-bit Single I2C Digital Potentiometer with NV Memory (50k)
          - microchip,mcp4562-503
            # Microchip 8-bit Single I2C Digital Potentiometer with NV Memory (100k)
          - microchip,mcp4562-104
            # Microchip 7-bit Dual I2C Digital Potentiometer (5k)
          - microchip,mcp4631-502
            # Microchip 7-bit Dual I2C Digital Potentiometer (10k)
          - microchip,mcp4631-103
            # Microchip 7-bit Dual I2C Digital Potentiometer (50k)
          - microchip,mcp4631-503
            # Microchip 7-bit Dual I2C Digital Potentiometer (100k)
          - microchip,mcp4631-104
            # Microchip 7-bit Dual I2C Digital Potentiometer (5k)
          - microchip,mcp4632-502
            # Microchip 7-bit Dual I2C Digital Potentiometer (10k)
          - microchip,mcp4632-103
            # Microchip 7-bit Dual I2C Digital Potentiometer (50k)
          - microchip,mcp4632-503
            # Microchip 7-bit Dual I2C Digital Potentiometer (100k)
          - microchip,mcp4632-104
            # Microchip 7-bit Dual I2C Digital Potentiometer with NV Memory (5k)
          - microchip,mcp4641-502
            # Microchip 7-bit Dual I2C Digital Potentiometer with NV Memory (10k)
          - microchip,mcp4641-103
            # Microchip 7-bit Dual I2C Digital Potentiometer with NV Memory (50k)
          - microchip,mcp4641-503
            # Microchip 7-bit Dual I2C Digital Potentiometer with NV Memory (100k)
          - microchip,mcp4641-104
            # Microchip 7-bit Dual I2C Digital Potentiometer with NV Memory (5k)
          - microchip,mcp4642-502
            # Microchip 7-bit Dual I2C Digital Potentiometer with NV Memory (10k)
          - microchip,mcp4642-103
            # Microchip 7-bit Dual I2C Digital Potentiometer with NV Memory (50k)
          - microchip,mcp4642-503
            # Microchip 7-bit Dual I2C Digital Potentiometer with NV Memory (100k)
          - microchip,mcp4642-104
            # Microchip 8-bit Dual I2C Digital Potentiometer (5k)
          - microchip,mcp4651-502
            # Microchip 8-bit Dual I2C Digital Potentiometer (10k)
          - microchip,mcp4651-103
            # Microchip 8-bit Dual I2C Digital Potentiometer (50k)
          - microchip,mcp4651-503
            # Microchip 8-bit Dual I2C Digital Potentiometer (100k)
          - microchip,mcp4651-104
            # Microchip 8-bit Dual I2C Digital Potentiometer (5k)
          - microchip,mcp4652-502
            # Microchip 8-bit Dual I2C Digital Potentiometer (10k)
          - microchip,mcp4652-103
            # Microchip 8-bit Dual I2C Digital Potentiometer (50k)
          - microchip,mcp4652-503
            # Microchip 8-bit Dual I2C Digital Potentiometer (100k)
          - microchip,mcp4652-104
            # Microchip 8-bit Dual I2C Digital Potentiometer with NV Memory (5k)
          - microchip,mcp4661-502
            # Microchip 8-bit Dual I2C Digital Potentiometer with NV Memory (10k)
          - microchip,mcp4661-103
            # Microchip 8-bit Dual I2C Digital Potentiometer with NV Memory (50k)
          - microchip,mcp4661-503
            # Microchip 8-bit Dual I2C Digital Potentiometer with NV Memory (100k)
          - microchip,mcp4661-104
            # Microchip 8-bit Dual I2C Digital Potentiometer with NV Memory (5k)
          - microchip,mcp4662-502
            # Microchip 8-bit Dual I2C Digital Potentiometer with NV Memory (10k)
          - microchip,mcp4662-103
            # Microchip 8-bit Dual I2C Digital Potentiometer with NV Memory (50k)
          - microchip,mcp4662-503
            # Microchip 8-bit Dual I2C Digital Potentiometer with NV Memory (100k)
          - microchip,mcp4662-104
            # PWM Fan Speed Controller With Fan Fault Detection
          - microchip,tc654
            # PWM Fan Speed Controller With Fan Fault Detection