162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 262306a36Sopenharmony_ci%YAML 1.2 362306a36Sopenharmony_ci--- 462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/iio/adc/nxp,imx93-adc.yaml# 562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 662306a36Sopenharmony_ci 762306a36Sopenharmony_cititle: NXP iMX93 ADC 862306a36Sopenharmony_ci 962306a36Sopenharmony_cimaintainers: 1062306a36Sopenharmony_ci - Haibo Chen <haibo.chen@nxp.com> 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_cidescription: 1362306a36Sopenharmony_ci The ADC on iMX93 is a 8-channel 12-bit 1MS/s ADC with 4 channels 1462306a36Sopenharmony_ci connected to pins. it support normal and inject mode, include 1562306a36Sopenharmony_ci One-Shot and Scan (continuous) conversions. Programmable DMA 1662306a36Sopenharmony_ci enables for each channel Also this ADC contain alternate analog 1762306a36Sopenharmony_ci watchdog thresholds, select threshold through input ports. And 1862306a36Sopenharmony_ci also has Self-test logic and Software-initiated calibration. 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ciproperties: 2162306a36Sopenharmony_ci compatible: 2262306a36Sopenharmony_ci const: nxp,imx93-adc 2362306a36Sopenharmony_ci 2462306a36Sopenharmony_ci reg: 2562306a36Sopenharmony_ci maxItems: 1 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ci interrupts: 2862306a36Sopenharmony_ci items: 2962306a36Sopenharmony_ci - description: WDGnL, watchdog threshold interrupt requests. 3062306a36Sopenharmony_ci - description: WDGnH, watchdog threshold interrupt requests. 3162306a36Sopenharmony_ci - description: normal conversion, include EOC (End of Conversion), 3262306a36Sopenharmony_ci ECH (End of Chain), JEOC (End of Injected Conversion) and 3362306a36Sopenharmony_ci JECH (End of injected Chain). 3462306a36Sopenharmony_ci - description: Self-testing Interrupts. 3562306a36Sopenharmony_ci 3662306a36Sopenharmony_ci clocks: 3762306a36Sopenharmony_ci maxItems: 1 3862306a36Sopenharmony_ci 3962306a36Sopenharmony_ci clock-names: 4062306a36Sopenharmony_ci const: ipg 4162306a36Sopenharmony_ci 4262306a36Sopenharmony_ci vref-supply: 4362306a36Sopenharmony_ci description: 4462306a36Sopenharmony_ci The reference voltage which used to establish channel scaling. 4562306a36Sopenharmony_ci 4662306a36Sopenharmony_ci "#io-channel-cells": 4762306a36Sopenharmony_ci const: 1 4862306a36Sopenharmony_ci 4962306a36Sopenharmony_cirequired: 5062306a36Sopenharmony_ci - compatible 5162306a36Sopenharmony_ci - reg 5262306a36Sopenharmony_ci - interrupts 5362306a36Sopenharmony_ci - clocks 5462306a36Sopenharmony_ci - clock-names 5562306a36Sopenharmony_ci - vref-supply 5662306a36Sopenharmony_ci - "#io-channel-cells" 5762306a36Sopenharmony_ci 5862306a36Sopenharmony_ciadditionalProperties: false 5962306a36Sopenharmony_ci 6062306a36Sopenharmony_ciexamples: 6162306a36Sopenharmony_ci - | 6262306a36Sopenharmony_ci #include <dt-bindings/interrupt-controller/irq.h> 6362306a36Sopenharmony_ci #include <dt-bindings/clock/imx93-clock.h> 6462306a36Sopenharmony_ci #include <dt-bindings/interrupt-controller/arm-gic.h> 6562306a36Sopenharmony_ci soc { 6662306a36Sopenharmony_ci #address-cells = <1>; 6762306a36Sopenharmony_ci #size-cells = <1>; 6862306a36Sopenharmony_ci adc@44530000 { 6962306a36Sopenharmony_ci compatible = "nxp,imx93-adc"; 7062306a36Sopenharmony_ci reg = <0x44530000 0x10000>; 7162306a36Sopenharmony_ci interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>, 7262306a36Sopenharmony_ci <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>, 7362306a36Sopenharmony_ci <GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH>, 7462306a36Sopenharmony_ci <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>; 7562306a36Sopenharmony_ci clocks = <&clk IMX93_CLK_ADC1_GATE>; 7662306a36Sopenharmony_ci clock-names = "ipg"; 7762306a36Sopenharmony_ci vref-supply = <®_vref_1v8>; 7862306a36Sopenharmony_ci #io-channel-cells = <1>; 7962306a36Sopenharmony_ci }; 8062306a36Sopenharmony_ci }; 8162306a36Sopenharmony_ci... 82