Re: [PATCH 1/2] dt-bindings: iio: adc: ti-ads1298: Add driver

From: Jonathan Cameron
Date: Thu Dec 14 2023 - 06:11:15 EST


On Wed, 13 Dec 2023 10:47:21 +0100
Mike Looijmans <mike.looijmans@xxxxxxxx> wrote:

> Skeleton driver for the TI ADS1298 medical ADC. This device is
> typically used for ECG and similar measurements. Supports data
> acquisition at configurable scale and sampling frequency.
>
> Signed-off-by: Mike Looijmans <mike.looijmans@xxxxxxxx>
>
> ---
>
> .../bindings/iio/adc/ti,ads1298.yaml | 80 +++++++++++++++++++
> 1 file changed, 80 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/iio/adc/ti,ads1298.yaml
>
> diff --git a/Documentation/devicetree/bindings/iio/adc/ti,ads1298.yaml b/Documentation/devicetree/bindings/iio/adc/ti,ads1298.yaml
> new file mode 100644
> index 000000000000..7a160ba721eb
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/iio/adc/ti,ads1298.yaml
> @@ -0,0 +1,80 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/iio/adc/ti,ads1298.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Texas Instruments' ads1298 medical ADC chips
> +
> +maintainers:
> + - Mike Looijmans <mike.looijmans@xxxxxxxx>
> +
> +properties:
> + compatible:
> + enum:
> + - ti,ads1298
> +
> + reg:
> + maxItems: 1
> +
> + spi-cpha: true
> +
> + reset-gpios:
> + maxItems: 1
> +
> + avdd-supply:
> + description:
> + Analog power supply, voltage between AVDD and AVSS. When providing a
> + symmetric +/- 2.5V, the regulator should report 5V.
Commented on in other thread.
> +
> + vref-supply:
> + description:
> + Optional reference voltage. If omitted, internal reference is used,
> + depending on analog supply this is 2.4 or 4V.
> +
There is a dvdd-supply as well. Might be others. Makes sure to document them all.

Should probably also document the gpios as the binding should attempt to be as complete
as possible independent of what the driver currently supports.

Lots of complex options for this device and the use of those pins, so maybe something
that can be left for now - but the patch description should then mention that is intentional.

Jonathan

> + clocks:
> + description: Optional 2.048 MHz external source clock on CLK pin
> + maxItems: 1
> +
> + clock-names:
> + const: clk
> +
> + interrupts:
> + description: Interrupt on DRDY pin, triggers on falling edge
> + maxItems: 1
> +
> + label: true
> +
> +required:
> + - compatible
> + - reg
> + - avdd-supply
> + - interrupts
> +
> +allOf:
> + - $ref: /schemas/spi/spi-peripheral-props.yaml#
> +
> +unevaluatedProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/gpio/gpio.h>
> + #include <dt-bindings/interrupt-controller/irq.h>
> + spi {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + adc@1 {
> + reg = <1>;
> + compatible = "ti,ads1298";
> + label = "ads1298-1-ecg";
> + avdd-supply = <&reg_iso_5v_a>;
> + clock-names = "clk";
> + clocks = <&clk_ads1298>;
> + interrupt-parent = <&gpio0>;
> + interrupts = <78 IRQ_TYPE_EDGE_FALLING>;
> + spi-max-frequency = <20000000>;
> + spi-cpha;
> + };
> + };
> +...