renesas,ra-adc-b

Description

Renesas RA ADC_B converter unit node.

Represents one ADC converter (ADC0 or ADC1) of the ADC_B controller.
This is the Zephyr ADC device that applications reference through
io-channels.

Each channel child node is one virtual channel. It maps a physical
analog input (zephyr,input-positive) to a scan-group via the
renesas,scan-group phandle. The scan-group, in turn, selects the
converter that runs it (see renesas,ra-adc-b-scan-group). A channel
must therefore be placed under the adc-unit whose unit-id matches the
scan-group's renesas,converter-unit-id.

Example:
  zephyr,user {
      io-channels = <&adc0 0>, <&adc0 1>;
  };

  &adc0 {
      channel@0 {
          reg = <0>;
          zephyr,gain = "ADC_GAIN_1";
          zephyr,reference = "ADC_REF_INTERNAL";
          zephyr,resolution = <16>;
          zephyr,acquisition-time = <ADC_ACQ_TIME_DEFAULT>;
          zephyr,input-positive = <0>;
          zephyr,oversampling = <2>;
          renesas,scan-group = <&scan_group0>;
      };
  };

Properties

Top level properties

These property descriptions apply to “renesas,ra-adc-b” nodes themselves. This page also describes child node properties in the following sections.

Properties not inherited from the base binding file.

Name

Type

Details

unit-id

int

ADC converter ID (0 for ADC0, 1 for ADC1).

This property is required.

Legal values: 0, 1

channel-available-mask

int

Bitmask of physical analog channels this converter can sample.
The driver uses it to validate zephyr,input-positive of each
channel.

vref-mv

int

ADC reference voltage in millivolts.

#io-channel-cells

int

This property is required.

Constant value: 1

renesas,adc-method

string

Conversion method for this converter. Determines how each virtual
channel under this unit is converted:

  - "sar": every channel uses Successive Approximation, one
    conversion per trigger, up to 12-bit. Digital filter disabled.
    zephyr,oversampling on a channel is ignored.

  - "oversample": every channel is oversampled, multiple conversions
    per trigger averaged in hardware, up to 16-bit. Digital filter
    enabled. zephyr,oversampling on each channel selects the average
    count (2^N samples); if omitted it defaults to no averaging.

  - "hybrid": channels may mix SAR and oversampling within the same
    converter. Each channel decides individually via
    zephyr,oversampling: 0 (or omitted) runs SAR (<=12-bit),
    >=1 runs oversampling with 2^N averaging (<=16-bit). Use this
    when some channels need speed (SAR) and others need precision
    (oversample) on the same converter.

Default value: oversample

Legal values: sar, oversample, hybrid

pinctrl-0

phandles

Pin configuration/s for the first state. Content is specific to the
selected pin controller driver implementation.

pinctrl-1

phandles

Pin configuration/s for the second state. See pinctrl-0.

pinctrl-2

phandles

Pin configuration/s for the third state. See pinctrl-0.

pinctrl-3

phandles

Pin configuration/s for the fourth state. See pinctrl-0.

pinctrl-4

phandles

Pin configuration/s for the fifth state. See pinctrl-0.

pinctrl-names

string-array

Names for the provided states. The number of names needs to match the
number of states.

Child node properties

Name

Type

Details

renesas,scan-group

phandle

Selects the scan-group this virtual channel belongs to. The
scan-group's renesas,converter-unit-id MUST equal this
adc-unit's unit-id (the driver enforces this with BUILD_ASSERT
so a mismatch fails the build).

zephyr,input-positive of the channel must also be within the
channel-available-mask of this adc-unit.

This property is required.

reg

array

Channel identifier.

This property is required.

See Important properties for more information.

zephyr,gain

string

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_2_7: x 2/7
- 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

This property is required.

Legal values: ADC_GAIN_1_6, ADC_GAIN_1_5, ADC_GAIN_1_4, ADC_GAIN_2_7, 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

string

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

This property is required.

Legal values: 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

int

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

int

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).

This property is required.

zephyr,differential

boolean

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

int

Positive ADC input. Used only for drivers that select
the ADC_CONFIGURABLE_INPUTS Kconfig option.

zephyr,input-negative

int

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

int

ADC resolution to be used for the channel.

zephyr,oversampling

int

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

uint8-array

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

int

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.

Specifier cell names

  • io-channel cells: input