lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250501100043.325423-6-sayyad.abid16@gmail.com>
Date: Thu,  1 May 2025 15:30:43 +0530
From: Sayyad Abid <sayyad.abid16@...il.com>
To: linux-iio@...r.kernel.org
Cc: sayyad.abid16@...il.com,
	jic23@...nel.org,
	lars@...afoo.de,
	robh@...nel.org,
	krzk+dt@...nel.org,
	conor+dt@...nel.org,
	dlechner@...libre.com,
	nuno.sa@...log.com,
	javier.carrasco.cruz@...il.com,
	olivier.moysan@...s.st.com,
	gstols@...libre.com,
	tgamblin@...libre.com,
	alisadariana@...il.com,
	eblanc@...libre.com,
	antoniu.miclaus@...log.com,
	andriy.shevchenko@...ux.intel.com,
	stefan.popa@...log.com,
	ramona.gradinariu@...log.com,
	herve.codina@...tlin.com,
	tobias.sperling@...ting.com,
	devicetree@...r.kernel.org,
	linux-kernel@...r.kernel.org
Subject: [RFC PATCH 5/5] dt-bindings: iio: adc: add bindings for TI ADS1262

Add the Device Tree binding documentation for the Texas Instruments ADS1262 ADC.

Signed-off-by: Sayyad Abid <sayyad.abid16@...il.com>
---
 .../bindings/iio/adc/ti,ads1262.yaml          | 189 ++++++++++++++++++
 1 file changed, 189 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/iio/adc/ti,ads1262.yaml

diff --git a/Documentation/devicetree/bindings/iio/adc/ti,ads1262.yaml b/Documentation/devicetree/bindings/iio/adc/ti,ads1262.yaml
new file mode 100644
index 000000000000..8c4cc2cf6467
--- /dev/null
+++ b/Documentation/devicetree/bindings/iio/adc/ti,ads1262.yaml
@@ -0,0 +1,189 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/iio/adc/ti,ads1262.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Texas Instruments' ADS1262 32-Bit Analog to Digital Converter
+
+maintainers:
+  - Sayyad Abid <sayyad.abid16@...il.com>
+
+description: |
+  Texas Instruments ADS1262 32-Bit Analog to Digital Converter with,
+  internal temperature sensor, GPIOs and PGAs
+
+  The ADS1262 is a 32-bit, 38-kSPS, precision ADC with a programmable gain
+  amplifier (PGA) and internal voltage reference. It features:
+  - 11 single-ended or 5 differential input channels
+  - Internal temperature sensor
+  - Programmable gain amplifier (PGA) with gains from 1 to 32
+  - Internal voltage reference
+  - GPIO pins for control and monitoring
+  - SPI interface
+
+  Specifications about the part can be found at:
+  https://www.ti.com/product/ADS1262
+
+properties:
+  compatible:
+    enum:
+      - ti,ads1262
+
+  reg:
+    maxItems: 1
+    description: SPI chip select number
+
+  spi-max-frequency:
+    maximum: 7372800
+    description: Maximum SPI clock frequency in Hz (7.3728 MHz)
+
+  spi-cpha:
+    type: boolean
+    description: Required for SPI mode 1 operation
+
+  reset-gpios:
+    maxItems: 1
+    description: GPIO specifier for the reset pin (active low)
+
+  vref-supply:
+    description: |
+      The regulator supply for ADC reference voltage. If not specified,
+      the internal 2.5V reference will be used.
+
+  '#address-cells':
+    const: 1
+
+  '#size-cells':
+    const: 0
+
+  '#io-channel-cells':
+    const: 1
+
+  ti,pga-bypass:
+    type: boolean
+    description: |
+      If true, bypass the PGA. If false or not specified, PGA is enabled.
+
+  ti,data-rate:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    minimum: 0
+    maximum: 15
+    description: |
+      Data acquisition rate in samples per second
+      0: 2.5
+      1: 5
+      2: 10
+      3: 16.6
+      4: 20
+      5: 50
+      6: 60
+      7: 100
+      8: 400
+      9: 1200
+      10: 2400
+      11: 4800
+      12: 7200
+      13: 14400
+      14: 19200
+      15: 38400
+
+required:
+  - compatible
+  - reg
+  - spi-cpha
+  - '#address-cells'
+  - '#size-cells'
+  - '#io-channel-cells'
+
+additionalProperties: false
+
+patternProperties:
+  "^channel@([0-9]|1[0-1])$":
+    type: object
+    additionalProperties: false
+    description: |
+      Represents the external channels which are connected to the ADC.
+      Channels 0-9 are available for external signals, channel 10 is AINCOM,
+      and channel 11 is the internal temperature sensor.
+
+    properties:
+      reg:
+        description: |
+          Channel number. It can have up to 10 channels numbered from 0 to 9,
+          channel 10 is AINCOM, and channel 11 is the internal temperature sensor.
+        items:
+          - minimum: 0
+            maximum: 11
+
+      diff-channels:
+        description: |
+          List of two channel numbers for differential measurement.
+          First number is positive input, second is negative input.
+          Not applicable for temperature sensor (channel 11).
+        items:
+          - minimum: 0
+            maximum: 9
+          - minimum: 0
+            maximum: 9
+
+      ti,gain:
+        $ref: /schemas/types.yaml#/definitions/uint32
+        minimum: 0
+        maximum: 5
+        description: |
+          PGA gain setting. Not applicable for temperature sensor (channel 11).
+          0: 1 (default)
+          1: 2
+          2: 4
+          3: 8
+          4: 16
+          5: 32
+
+    required:
+      - reg
+
+allOf:
+  - $ref: /schemas/spi/spi-peripheral-props.yaml#
+
+examples:
+  - |
+    #include <dt-bindings/gpio/gpio.h>
+
+    spi {
+      #address-cells = <1>;
+      #size-cells = <0>;
+
+      ads1262: adc@0 {
+        compatible = "ti,ads1262";
+        reg = <0>;
+        spi-max-frequency = <7372800>;
+        vref-supply = <&adc_vref>;
+        spi-cpha;
+        reset-gpios = <&gpio1 16 GPIO_ACTIVE_LOW>;
+        ti,pga-bypass;
+        ti,data-rate = <15>; /* 38400 SPS */
+
+        #address-cells = <1>;
+        #size-cells = <0>;
+        #io-channel-cells = <1>;
+
+        /* Single-ended channel */
+        channel@0 {
+          reg = <0>;
+        };
+
+        /* Differential channel */
+        channel@1 {
+          reg = <1>;
+          diff-channels = <1 2>;
+          ti,gain = <2>; /* Gain of 4 */
+        };
+
+        /* Temperature sensor */
+        channel@11 {
+          reg = <11>;
+        };
+      };
+    };
+...
-- 
2.39.5


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ