[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240208172459.280189-5-alisa.roman@analog.com>
Date: Thu, 8 Feb 2024 19:24:58 +0200
From: Alisa-Dariana Roman <alisadariana@...il.com>
To:
Cc: alexandru.tachici@...log.com,
alisa.roman@...log.com,
alisadariana@...il.com,
conor+dt@...nel.org,
devicetree@...r.kernel.org,
dlechner@...libre.com,
jic23@...nel.org,
krzysztof.kozlowski+dt@...aro.org,
krzysztof.kozlowski@...aro.org,
lars@...afoo.de,
linux-iio@...r.kernel.org,
linux-kernel@...r.kernel.org,
michael.hennerich@...log.com,
robh+dt@...nel.org
Subject: [PATCH v3 4/5] dt-bindings: iio: adc: ad7192: Add AD7194 support
Unlike the other AD719Xs, AD7194 has configurable differential
channels. The default configuration for these channels can be changed
from the devicetree.
Also add an example for AD7194 devicetree.
Signed-off-by: Alisa-Dariana Roman <alisa.roman@...log.com>
---
.../bindings/iio/adc/adi,ad7192.yaml | 75 +++++++++++++++++++
1 file changed, 75 insertions(+)
diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad7192.yaml b/Documentation/devicetree/bindings/iio/adc/adi,ad7192.yaml
index 16def2985ab4..169bdd1dd0e1 100644
--- a/Documentation/devicetree/bindings/iio/adc/adi,ad7192.yaml
+++ b/Documentation/devicetree/bindings/iio/adc/adi,ad7192.yaml
@@ -21,8 +21,15 @@ properties:
- adi,ad7190
- adi,ad7192
- adi,ad7193
+ - adi,ad7194
- adi,ad7195
+ "#address-cells":
+ const: 1
+
+ "#size-cells":
+ const: 0
+
reg:
maxItems: 1
@@ -96,8 +103,44 @@ required:
- spi-cpol
- spi-cpha
+patternProperties:
+ "^channel@([0-7a-f])$":
+ type: object
+ $ref: adc.yaml
+ unevaluatedProperties: false
+
+ properties:
+ reg:
+ description: The channel index.
+ minimum: 0
+ maximum: 7
+
+ diff-channels:
+ description: |
+ The differential channel pair for Ad7194 configurable channels. The
+ first channel is the positive input, the second channel is the
+ negative input.
+ items:
+ minimum: 1
+ maximum: 16
+
+ required:
+ - reg
+ - diff-channels
+
allOf:
- $ref: /schemas/spi/spi-peripheral-props.yaml#
+ - if:
+ properties:
+ compatible:
+ enum:
+ - adi,ad7190
+ - adi,ad7192
+ - adi,ad7193
+ - adi,ad7195
+ then:
+ patternProperties:
+ "^channel@([0-7a-f])$": false
unevaluatedProperties: false
@@ -127,3 +170,35 @@ examples:
adi,burnout-currents-enable;
};
};
+ - |
+ spi {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ adc@0 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ compatible = "adi,ad7194";
+ reg = <0>;
+ spi-max-frequency = <1000000>;
+ spi-cpol;
+ spi-cpha;
+ clocks = <&ad7192_mclk>;
+ clock-names = "mclk";
+ interrupts = <25 0x2>;
+ interrupt-parent = <&gpio>;
+ dvdd-supply = <&dvdd>;
+ avdd-supply = <&avdd>;
+ vref-supply = <&vref>;
+
+ channel@0 {
+ reg = <0>;
+ diff-channels = <1 6>;
+ };
+
+ channel@1 {
+ reg = <1>;
+ diff-channels = <2 5>;
+ };
+ };
+ };
--
2.34.1
Powered by blists - more mailing lists