[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240228122617.185814-4-alisa.roman@analog.com>
Date: Wed, 28 Feb 2024 14:26:16 +0200
From: Alisa-Dariana Roman <alisadariana@...il.com>
To: michael.hennerich@...log.com,
linux-iio@...r.kernel.org,
devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org
Cc: lars@...afoo.de,
Michael.Hennerich@...log.com,
jic23@...nel.org,
robh+dt@...nel.org,
krzysztof.kozlowski+dt@...aro.org,
conor+dt@...nel.org,
andriy.shevchenko@...ux.intel.com,
nuno.sa@...log.com,
alisa.roman@...log.com,
dlechner@...libre.com
Subject: [PATCH v4 3/4] 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>
Signed-off-by: romandariana <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..c62862760311 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-9]+)$":
+ type: object
+ $ref: adc.yaml
+ unevaluatedProperties: false
+
+ properties:
+ reg:
+ description: The channel index.
+ minimum: 1
+ maximum: 16
+
+ diff-channels:
+ description: |
+ Both inputs can be connected to pins AIN1 to AIN16 by choosing the
+ appropriate value from 1 to 16. The negative input can also be
+ connected to AINCOM by choosing 0.
+ items:
+ minimum: 0
+ 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-9]+)$": 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@1 {
+ reg = <1>;
+ diff-channels = <1 6>;
+ };
+
+ channel@16 {
+ reg = <16>;
+ diff-channels = <16 5>;
+ };
+ };
+ };
--
2.34.1
Powered by blists - more mailing lists