126ae15e6SMircea Caprioru# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 226ae15e6SMircea Caprioru# Copyright 2019 Analog Devices Inc. 326ae15e6SMircea Caprioru%YAML 1.2 426ae15e6SMircea Caprioru--- 504dbd865SRob Herring$id: http://devicetree.org/schemas/iio/adc/adi,ad7124.yaml# 626ae15e6SMircea Caprioru$schema: http://devicetree.org/meta-schemas/core.yaml# 726ae15e6SMircea Caprioru 826ae15e6SMircea Capriorutitle: Analog Devices AD7124 ADC device driver 926ae15e6SMircea Caprioru 1026ae15e6SMircea Capriorumaintainers: 1126ae15e6SMircea Caprioru - Stefan Popa <stefan.popa@analog.com> 1226ae15e6SMircea Caprioru 1326ae15e6SMircea Capriorudescription: | 1426ae15e6SMircea Caprioru Bindings for the Analog Devices AD7124 ADC device. Datasheet can be 1526ae15e6SMircea Caprioru found here: 1626ae15e6SMircea Caprioru https://www.analog.com/media/en/technical-documentation/data-sheets/AD7124-8.pdf 1726ae15e6SMircea Caprioru 1826ae15e6SMircea Caprioruproperties: 1926ae15e6SMircea Caprioru compatible: 2026ae15e6SMircea Caprioru enum: 2126ae15e6SMircea Caprioru - adi,ad7124-4 2226ae15e6SMircea Caprioru - adi,ad7124-8 2326ae15e6SMircea Caprioru 2426ae15e6SMircea Caprioru reg: 2526ae15e6SMircea Caprioru description: SPI chip select number for the device 2626ae15e6SMircea Caprioru maxItems: 1 2726ae15e6SMircea Caprioru 2826ae15e6SMircea Caprioru clocks: 2926ae15e6SMircea Caprioru maxItems: 1 3026ae15e6SMircea Caprioru description: phandle to the master clock (mclk) 3126ae15e6SMircea Caprioru 3226ae15e6SMircea Caprioru clock-names: 3326ae15e6SMircea Caprioru items: 3426ae15e6SMircea Caprioru - const: mclk 3526ae15e6SMircea Caprioru 3626ae15e6SMircea Caprioru interrupts: 3726ae15e6SMircea Caprioru description: IRQ line for the ADC 3826ae15e6SMircea Caprioru maxItems: 1 3926ae15e6SMircea Caprioru 4026ae15e6SMircea Caprioru '#address-cells': 4126ae15e6SMircea Caprioru const: 1 4226ae15e6SMircea Caprioru 4326ae15e6SMircea Caprioru '#size-cells': 4426ae15e6SMircea Caprioru const: 0 4526ae15e6SMircea Caprioru 4626ae15e6SMircea Caprioru refin1-supply: 4726ae15e6SMircea Caprioru description: refin1 supply can be used as reference for conversion. 4826ae15e6SMircea Caprioru 4926ae15e6SMircea Caprioru refin2-supply: 5026ae15e6SMircea Caprioru description: refin2 supply can be used as reference for conversion. 5126ae15e6SMircea Caprioru 5226ae15e6SMircea Caprioru avdd-supply: 5326ae15e6SMircea Caprioru description: avdd supply can be used as reference for conversion. 5426ae15e6SMircea Caprioru 5526ae15e6SMircea Capriorurequired: 5626ae15e6SMircea Caprioru - compatible 5726ae15e6SMircea Caprioru - reg 5826ae15e6SMircea Caprioru - clocks 5926ae15e6SMircea Caprioru - clock-names 6026ae15e6SMircea Caprioru - interrupts 6126ae15e6SMircea Caprioru 6226ae15e6SMircea CapriorupatternProperties: 6326ae15e6SMircea Caprioru "^channel@([0-9]|1[0-5])$": 64*34d1e754SKrzysztof Kozlowski $ref: adc.yaml 6526ae15e6SMircea Caprioru type: object 6626ae15e6SMircea Caprioru description: | 6726ae15e6SMircea Caprioru Represents the external channels which are connected to the ADC. 6826ae15e6SMircea Caprioru 6926ae15e6SMircea Caprioru properties: 7026ae15e6SMircea Caprioru reg: 7126ae15e6SMircea Caprioru description: | 7226ae15e6SMircea Caprioru The channel number. It can have up to 8 channels on ad7124-4 7326ae15e6SMircea Caprioru and 16 channels on ad7124-8, numbered from 0 to 15. 7426ae15e6SMircea Caprioru items: 7526ae15e6SMircea Caprioru minimum: 0 7626ae15e6SMircea Caprioru maximum: 15 7726ae15e6SMircea Caprioru 7826ae15e6SMircea Caprioru adi,reference-select: 7926ae15e6SMircea Caprioru description: | 8026ae15e6SMircea Caprioru Select the reference source to use when converting on 8126ae15e6SMircea Caprioru the specific channel. Valid values are: 8226ae15e6SMircea Caprioru 0: REFIN1(+)/REFIN1(−). 8326ae15e6SMircea Caprioru 1: REFIN2(+)/REFIN2(−). 8426ae15e6SMircea Caprioru 3: AVDD 8526ae15e6SMircea Caprioru If this field is left empty, internal reference is selected. 863d21a460SRob Herring $ref: /schemas/types.yaml#/definitions/uint32 873d21a460SRob Herring enum: [0, 1, 3] 8826ae15e6SMircea Caprioru 8926d146e2SJonathan Cameron diff-channels: true 9026ae15e6SMircea Caprioru 9126d146e2SJonathan Cameron bipolar: true 9226ae15e6SMircea Caprioru 93c444e956SMircea Caprioru adi,buffered-positive: 94c444e956SMircea Caprioru description: Enable buffered mode for positive input. 95c444e956SMircea Caprioru type: boolean 96c444e956SMircea Caprioru 97c444e956SMircea Caprioru adi,buffered-negative: 98c444e956SMircea Caprioru description: Enable buffered mode for negative input. 99c444e956SMircea Caprioru type: boolean 100c444e956SMircea Caprioru 10126ae15e6SMircea Caprioru required: 10226ae15e6SMircea Caprioru - reg 10326ae15e6SMircea Caprioru - diff-channels 10426ae15e6SMircea Caprioru 1054828556dSRob Herring additionalProperties: false 1066fdc6e23SRob Herring 10780137388SKrzysztof KozlowskiallOf: 10880137388SKrzysztof Kozlowski - $ref: /schemas/spi/spi-peripheral-props.yaml# 10980137388SKrzysztof Kozlowski 11080137388SKrzysztof KozlowskiunevaluatedProperties: false 11126d146e2SJonathan Cameron 11226ae15e6SMircea Caprioruexamples: 11326ae15e6SMircea Caprioru - | 11420051f5fSRob Herring spi { 11520051f5fSRob Herring #address-cells = <1>; 11620051f5fSRob Herring #size-cells = <0>; 11720051f5fSRob Herring 11826ae15e6SMircea Caprioru adc@0 { 11926ae15e6SMircea Caprioru compatible = "adi,ad7124-4"; 12026ae15e6SMircea Caprioru reg = <0>; 12126ae15e6SMircea Caprioru spi-max-frequency = <5000000>; 12226ae15e6SMircea Caprioru interrupts = <25 2>; 12326ae15e6SMircea Caprioru interrupt-parent = <&gpio>; 12426ae15e6SMircea Caprioru refin1-supply = <&adc_vref>; 12526ae15e6SMircea Caprioru clocks = <&ad7124_mclk>; 12626ae15e6SMircea Caprioru clock-names = "mclk"; 12726ae15e6SMircea Caprioru 12826ae15e6SMircea Caprioru #address-cells = <1>; 12926ae15e6SMircea Caprioru #size-cells = <0>; 13026ae15e6SMircea Caprioru 13126ae15e6SMircea Caprioru channel@0 { 13226ae15e6SMircea Caprioru reg = <0>; 13326ae15e6SMircea Caprioru diff-channels = <0 1>; 13426ae15e6SMircea Caprioru adi,reference-select = <0>; 135c444e956SMircea Caprioru adi,buffered-positive; 13626ae15e6SMircea Caprioru }; 13726ae15e6SMircea Caprioru 13826ae15e6SMircea Caprioru channel@1 { 13926ae15e6SMircea Caprioru reg = <1>; 14026ae15e6SMircea Caprioru bipolar; 14126ae15e6SMircea Caprioru diff-channels = <2 3>; 14226ae15e6SMircea Caprioru adi,reference-select = <0>; 143c444e956SMircea Caprioru adi,buffered-positive; 144c444e956SMircea Caprioru adi,buffered-negative; 14526ae15e6SMircea Caprioru }; 14626ae15e6SMircea Caprioru 14726ae15e6SMircea Caprioru channel@2 { 14826ae15e6SMircea Caprioru reg = <2>; 14926ae15e6SMircea Caprioru diff-channels = <4 5>; 15026ae15e6SMircea Caprioru }; 15126ae15e6SMircea Caprioru 15226ae15e6SMircea Caprioru channel@3 { 15326ae15e6SMircea Caprioru reg = <3>; 15426ae15e6SMircea Caprioru diff-channels = <6 7>; 15526ae15e6SMircea Caprioru }; 15626ae15e6SMircea Caprioru }; 15720051f5fSRob Herring }; 158