[PATCH v3 1/2] dt-bindings: iio: adc: Add Nuvoton MA35D1 EADC
Krzysztof Kozlowski
krzk at kernel.org
Mon Nov 2 02:03:15 PST 2026
On Fri, Oct 30, 2026 at 11:15:00AM +0800, Chi-Wen Weng wrote:
> From: Chi-Wen Weng <cwweng at nuvoton.com>
>
> Add a devicetree binding for the Enhanced Analog-to-Digital Converter
> (EADC) found on Nuvoton MA35D1 SoCs.
>
> The controller provides eight external analog inputs which can be used
> as single-ended channels or as four fixed differential pairs: 0-4,
> 1-5, 2-6 and 3-7.
>
> Describe the four hardware interrupt outputs, ADINT0 through ADINT3.
> ADINT0 through ADINT2 are associated with the corresponding conversion
> interrupt flags, while ADINT3 is shared by the ADIF3 conversion
> interrupt and the ADCMPF0 through ADCMPF3 result-compare interrupt
> sources.
>
> Also describe the functional clock, optional reset, optional external
> reference supply and optional DMA request.
Don't repeat the patch contents.
>
> Expose the controller as an IIO channel provider through the
> DT #io-channel-cells property. The cell identifies the logical EADC
> channel selected by the reg value of the corresponding channel child
> node.
>
> Restrict the channel binding to features supported by the MA35D1 EADC
> hardware and use the common single-channel representation for
> single-ended inputs.
And here even more.
>
> Signed-off-by: Chi-Wen Weng <cwweng at nuvoton.com>
> ---
> .../bindings/iio/adc/nuvoton,ma35d1-eadc.yaml | 175 ++++++++++++++++++
> 1 file changed, 175 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/iio/adc/nuvoton,ma35d1-eadc.yaml
>
> diff --git a/Documentation/devicetree/bindings/iio/adc/nuvoton,ma35d1-eadc.yaml b/Documentation/devicetree/bindings/iio/adc/nuvoton,ma35d1-eadc.yaml
> new file mode 100644
> index 000000000000..97144a8eeb5c
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/iio/adc/nuvoton,ma35d1-eadc.yaml
> @@ -0,0 +1,175 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/iio/adc/nuvoton,ma35d1-eadc.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Nuvoton MA35D1 Enhanced Analog-to-Digital Converter
> +
> +maintainers:
> + - Chi-Wen Weng <cwweng at nuvoton.com>
> +
> +description: |
> + The Nuvoton MA35D1 Enhanced Analog-to-Digital Converter (EADC) is a
> + 12-bit successive approximation converter with eight external analog
> + inputs and one internally connected VBAT input.
> +
> + The external inputs can be used as eight single-ended channels or as
> + four fixed differential pairs: 0-4, 1-5, 2-6 and 3-7. The internally
> + connected VBAT input is not described by a channel child node.
> +
> + The controller provides four interrupt outputs, ADINT0 through ADINT3.
> + ADINT0, ADINT1 and ADINT2 are generated by the corresponding ADIF0,
> + ADIF1 and ADIF2 conversion interrupt flags. ADINT3 is shared by the
> + ADIF3 conversion interrupt flag and the ADCMPF0 through ADCMPF3 result
> + compare flags.
> +
> +properties:
> + compatible:
> + const: nuvoton,ma35d1-eadc
> +
> + reg:
> + maxItems: 1
> +
> + interrupts:
> + items:
> + - description: ADINT0 conversion interrupt output generated by ADIF0
> + - description: ADINT1 conversion interrupt output generated by ADIF1
> + - description: ADINT2 conversion interrupt output generated by ADIF2
> + - description: >
Drop >
> + ADINT3 shared interrupt output generated by ADIF3 or by the
> + ADCMPF0 through ADCMPF3 result compare flags
> +
> + interrupt-names:
> + items:
> + - const: adint0
> + - const: adint1
> + - const: adint2
> + - const: adint3
"int" is redundant, so honestly names should rather go away completely.
> +
> + clocks:
> + maxItems: 1
> +
> + resets:
> + maxItems: 1
Best regards,
Krzysztof
More information about the linux-arm-kernel
mailing list