| # Copyright (c) 2017, NXP |
| # Copyright (c) 2022, Nordic Semiconductor ASA |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| # Common fields for ADC controllers |
| |
| include: base.yaml |
| |
| properties: |
| "#io-channel-cells": |
| type: int |
| required: true |
| |
| "#address-cells": |
| const: 1 |
| |
| "#size-cells": |
| const: 0 |
| |
| child-binding: |
| description: | |
| Channel configuration. |
| |
| All nodes using this binding must be named "channel", otherwise their |
| data will not be accessible for the ADC API macros. |
| |
| This is based on Linux, documentation: |
| https://www.kernel.org/doc/Documentation/devicetree/bindings/iio/adc/adc.yaml |
| |
| properties: |
| reg: |
| type: array |
| required: true |
| description: Channel identifier. |
| |
| zephyr,gain: |
| type: string |
| required: true |
| description: | |
| Gain selection: |
| - ADC_GAIN_1_6: x 1/6 |
| - ADC_GAIN_1_5: x 1/5 |
| - ADC_GAIN_1_4: x 1/4 |
| - ADC_GAIN_1_3: x 1/3 |
| - ADC_GAIN_2_5: x 2/5 |
| - ADC_GAIN_1_2: x 1/2 |
| - ADC_GAIN_2_3: x 2/3 |
| - ADC_GAIN_4_5: x 4/5 |
| - ADC_GAIN_1: x 1 |
| - ADC_GAIN_2: x 2 |
| - ADC_GAIN_3: x 3 |
| - ADC_GAIN_4: x 4 |
| - ADC_GAIN_6: x 6 |
| - ADC_GAIN_8: x 8 |
| - ADC_GAIN_12: x 12 |
| - ADC_GAIN_16: x 16 |
| - ADC_GAIN_24: x 24 |
| - ADC_GAIN_32: x 32 |
| - ADC_GAIN_64: x 64 |
| - ADC_GAIN_128: x 128 |
| enum: |
| - "ADC_GAIN_1_6" |
| - "ADC_GAIN_1_5" |
| - "ADC_GAIN_1_4" |
| - "ADC_GAIN_1_3" |
| - "ADC_GAIN_2_5" |
| - "ADC_GAIN_1_2" |
| - "ADC_GAIN_2_3" |
| - "ADC_GAIN_4_5" |
| - "ADC_GAIN_1" |
| - "ADC_GAIN_2" |
| - "ADC_GAIN_3" |
| - "ADC_GAIN_4" |
| - "ADC_GAIN_6" |
| - "ADC_GAIN_8" |
| - "ADC_GAIN_12" |
| - "ADC_GAIN_16" |
| - "ADC_GAIN_24" |
| - "ADC_GAIN_32" |
| - "ADC_GAIN_64" |
| - "ADC_GAIN_128" |
| |
| zephyr,reference: |
| type: string |
| required: true |
| description: | |
| Reference selection: |
| - ADC_REF_VDD_1: VDD |
| - ADC_REF_VDD_1_2: VDD/2 |
| - ADC_REF_VDD_1_3: VDD/3 |
| - ADC_REF_VDD_1_4: VDD/4 |
| - ADC_REF_INTERNAL: Internal |
| - ADC_REF_EXTERNAL0: External, input 0 |
| - ADC_REF_EXTERNAL1: External, input 1 |
| enum: |
| - "ADC_REF_VDD_1" |
| - "ADC_REF_VDD_1_2" |
| - "ADC_REF_VDD_1_3" |
| - "ADC_REF_VDD_1_4" |
| - "ADC_REF_INTERNAL" |
| - "ADC_REF_EXTERNAL0" |
| - "ADC_REF_EXTERNAL1" |
| |
| zephyr,vref-mv: |
| type: int |
| description: | |
| This property can be used to specify the voltage (in millivolts) |
| of the reference selected for this channel, so that applications |
| can get that value if needed for some calculations. |
| For the internal reference, the voltage can be usually obtained with |
| a dedicated ADC API call, so there is no need to use this property |
| in that case, but for other references this property can be useful. |
| |
| zephyr,acquisition-time: |
| type: int |
| required: true |
| description: | |
| Acquisition time. |
| Use the ADC_ACQ_TIME macro to compose the value for this property |
| or pass ADC_ACQ_TIME_DEFAULT to use the default setting for a given |
| hardware (e.g. when the hardware does not allow to configure the |
| acquisition time). |
| |
| zephyr,differential: |
| type: boolean |
| description: | |
| When set, selects differential input mode for the channel. Otherwise, |
| single-ended mode is used unless the zephyr,input-negative property is |
| specified, in which case the differential mode is selected implicitly. |
| |
| zephyr,input-positive: |
| type: int |
| description: | |
| Positive ADC input. Used only for drivers that select |
| the ADC_CONFIGURABLE_INPUTS Kconfig option. |
| |
| zephyr,input-negative: |
| type: int |
| description: | |
| Negative ADC input. Used only for drivers that select |
| the ADC_CONFIGURABLE_INPUTS Kconfig option. |
| When specified, implies the differential input mode for the channel. |
| |
| zephyr,resolution: |
| type: int |
| description: | |
| ADC resolution to be used for the channel. |
| |
| zephyr,oversampling: |
| type: int |
| description: | |
| Oversampling setting to be used for the channel. |
| When specified, each sample is averaged from 2^N conversion results |
| (where N is the provided value). |
| |
| zephyr,current-source-pin: |
| type: uint8-array |
| description: | |
| Output pin selection for the current sources. The actual |
| interpretation depends on the driver. This is used only for drivers |
| which select the ADC_CONFIGURABLE_EXCITATION_CURRENT_SOURCE_PIN |
| Kconfig option. |
| |
| zephyr,vbias-pins: |
| type: int |
| description: | |
| Output pin selection for the bias voltage. The actual interpretation |
| depends on the driver. This is used only for drivers which select |
| the ADC_CONFIGURABLE_VBIAS_PIN Kconfig option. |