OSDN Git Service

Convert AD7124 bindings documentation to YAML format.
authorMircea Caprioru <mircea.caprioru@analog.com>
Wed, 26 Jun 2019 19:31:05 +0000 (20:31 +0100)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Wed, 26 Jun 2019 20:24:21 +0000 (21:24 +0100)
Signed-off-by: Mircea Caprioru <mircea.caprioru@analog.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Documentation/devicetree/bindings/iio/adc/adi,ad7124.txt [deleted file]
Documentation/devicetree/bindings/iio/adc/adi,ad7124.yaml [new file with mode: 0644]

diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad7124.txt b/Documentation/devicetree/bindings/iio/adc/adi,ad7124.txt
deleted file mode 100644 (file)
index 416273d..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-Analog Devices AD7124 ADC device driver
-
-Required properties for the AD7124:
-       - compatible: Must be one of "adi,ad7124-4" or "adi,ad7124-8"
-       - reg: SPI chip select number for the device
-       - spi-max-frequency: Max SPI frequency to use
-               see: Documentation/devicetree/bindings/spi/spi-bus.txt
-       - clocks: phandle to the master clock (mclk)
-               see: Documentation/devicetree/bindings/clock/clock-bindings.txt
-       - clock-names: Must be "mclk".
-       - interrupts: IRQ line for the ADC
-               see: Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
-
-         Required properties:
-               * #address-cells: Must be 1.
-               * #size-cells: Must be 0.
-
-         Subnode(s) represent the external channels which are connected to the ADC.
-         Each subnode represents one channel and has the following properties:
-               Required properties:
-                       * reg: The channel number. It can have up to 4 channels on ad7124-4
-                         and 8 channels on ad7124-8, numbered from 0 to 15.
-                       * diff-channels: see: Documentation/devicetree/bindings/iio/adc/adc.txt
-
-               Optional properties:
-                       * bipolar: see: Documentation/devicetree/bindings/iio/adc/adc.txt
-                       * adi,reference-select: Select the reference source to use when
-                         converting on the the specific channel. Valid values are:
-                         0: REFIN1(+)/REFIN1(−).
-                         1: REFIN2(+)/REFIN2(−).
-                         3: AVDD
-                         If this field is left empty, internal reference is selected.
-
-Optional properties:
-       - refin1-supply: refin1 supply can be used as reference for conversion.
-       - refin2-supply: refin2 supply can be used as reference for conversion.
-       - avdd-supply: avdd supply can be used as reference for conversion.
-
-Example:
-       adc@0 {
-               compatible = "adi,ad7124-4";
-               reg = <0>;
-               spi-max-frequency = <5000000>;
-               interrupts = <25 2>;
-               interrupt-parent = <&gpio>;
-               refin1-supply = <&adc_vref>;
-               clocks = <&ad7124_mclk>;
-               clock-names = "mclk";
-
-               #address-cells = <1>;
-               #size-cells = <0>;
-
-               channel@0 {
-                       reg = <0>;
-                       diff-channels = <0 1>;
-                       adi,reference-select = <0>;
-               };
-
-               channel@1 {
-                       reg = <1>;
-                       bipolar;
-                       diff-channels = <2 3>;
-                       adi,reference-select = <0>;
-               };
-
-               channel@2 {
-                       reg = <2>;
-                       diff-channels = <4 5>;
-               };
-
-               channel@3 {
-                       reg = <3>;
-                       diff-channels = <6 7>;
-               };
-       };
diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad7124.yaml b/Documentation/devicetree/bindings/iio/adc/adi,ad7124.yaml
new file mode 100644 (file)
index 0000000..1b3d84d
--- /dev/null
@@ -0,0 +1,144 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+# Copyright 2019 Analog Devices Inc.
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/bindings/iio/adc/adi,ad7124.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Analog Devices AD7124 ADC device driver
+
+maintainers:
+  - Stefan Popa <stefan.popa@analog.com>
+
+description: |
+  Bindings for the Analog Devices AD7124 ADC device. Datasheet can be
+  found here:
+    https://www.analog.com/media/en/technical-documentation/data-sheets/AD7124-8.pdf
+
+properties:
+  compatible:
+    enum:
+      - adi,ad7124-4
+      - adi,ad7124-8
+
+  reg:
+    description: SPI chip select number for the device
+    maxItems: 1
+
+  clocks:
+    maxItems: 1
+    description: phandle to the master clock (mclk)
+
+  clock-names:
+    items:
+      - const: mclk
+
+  interrupts:
+    description: IRQ line for the ADC
+    maxItems: 1
+
+  '#address-cells':
+    const: 1
+
+  '#size-cells':
+    const: 0
+
+  refin1-supply:
+    description: refin1 supply can be used as reference for conversion.
+    maxItems: 1
+
+  refin2-supply:
+    description: refin2 supply can be used as reference for conversion.
+    maxItems: 1
+
+  avdd-supply:
+    description: avdd supply can be used as reference for conversion.
+    maxItems: 1
+
+required:
+  - compatible
+  - reg
+  - clocks
+  - clock-names
+  - interrupts
+
+patternProperties:
+  "^channel@([0-9]|1[0-5])$":
+    type: object
+    description: |
+      Represents the external channels which are connected to the ADC.
+      See Documentation/devicetree/bindings/iio/adc/adc.txt.
+
+    properties:
+      reg:
+        description: |
+          The channel number. It can have up to 8 channels on ad7124-4
+          and 16 channels on ad7124-8, numbered from 0 to 15.
+        items:
+         minimum: 0
+         maximum: 15
+
+      adi,reference-select:
+        description: |
+          Select the reference source to use when converting on
+          the specific channel. Valid values are:
+          0: REFIN1(+)/REFIN1(−).
+          1: REFIN2(+)/REFIN2(−).
+          3: AVDD
+          If this field is left empty, internal reference is selected.
+        allOf:
+          - $ref: /schemas/types.yaml#/definitions/uint32
+          - enum: [0, 1, 3]
+
+      diff-channels:
+        description: see Documentation/devicetree/bindings/iio/adc/adc.txt
+        items:
+          minimum: 0
+          maximum: 15
+
+      bipolar:
+        description: see Documentation/devicetree/bindings/iio/adc/adc.txt
+        type: boolean
+
+    required:
+      - reg
+      - diff-channels
+
+examples:
+  - |
+    adc@0 {
+      compatible = "adi,ad7124-4";
+      reg = <0>;
+      spi-max-frequency = <5000000>;
+      interrupts = <25 2>;
+      interrupt-parent = <&gpio>;
+      refin1-supply = <&adc_vref>;
+      clocks = <&ad7124_mclk>;
+      clock-names = "mclk";
+
+      #address-cells = <1>;
+      #size-cells = <0>;
+
+      channel@0 {
+        reg = <0>;
+        diff-channels = <0 1>;
+        adi,reference-select = <0>;
+      };
+
+      channel@1 {
+        reg = <1>;
+        bipolar;
+        diff-channels = <2 3>;
+        adi,reference-select = <0>;
+      };
+
+      channel@2 {
+        reg = <2>;
+        diff-channels = <4 5>;
+      };
+
+      channel@3 {
+        reg = <3>;
+        diff-channels = <6 7>;
+      };
+    };