1*e85f4643SMaksim Kiselev# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*e85f4643SMaksim Kiselev%YAML 1.2 3*e85f4643SMaksim Kiselev--- 4*e85f4643SMaksim Kiselev$id: http://devicetree.org/schemas/iio/adc/allwinner,sun20i-d1-gpadc.yaml# 5*e85f4643SMaksim Kiselev$schema: http://devicetree.org/meta-schemas/core.yaml# 6*e85f4643SMaksim Kiselev 7*e85f4643SMaksim Kiselevtitle: Allwinner D1 General Purpose ADC 8*e85f4643SMaksim Kiselev 9*e85f4643SMaksim Kiselevmaintainers: 10*e85f4643SMaksim Kiselev - Maksim Kiselev <bigunclemax@gmail.com> 11*e85f4643SMaksim Kiselev 12*e85f4643SMaksim Kiselevproperties: 13*e85f4643SMaksim Kiselev compatible: 14*e85f4643SMaksim Kiselev enum: 15*e85f4643SMaksim Kiselev - allwinner,sun20i-d1-gpadc 16*e85f4643SMaksim Kiselev 17*e85f4643SMaksim Kiselev "#io-channel-cells": 18*e85f4643SMaksim Kiselev const: 1 19*e85f4643SMaksim Kiselev 20*e85f4643SMaksim Kiselev "#address-cells": 21*e85f4643SMaksim Kiselev const: 1 22*e85f4643SMaksim Kiselev 23*e85f4643SMaksim Kiselev "#size-cells": 24*e85f4643SMaksim Kiselev const: 0 25*e85f4643SMaksim Kiselev 26*e85f4643SMaksim Kiselev clocks: 27*e85f4643SMaksim Kiselev maxItems: 1 28*e85f4643SMaksim Kiselev 29*e85f4643SMaksim Kiselev interrupts: 30*e85f4643SMaksim Kiselev maxItems: 1 31*e85f4643SMaksim Kiselev 32*e85f4643SMaksim Kiselev reg: 33*e85f4643SMaksim Kiselev maxItems: 1 34*e85f4643SMaksim Kiselev 35*e85f4643SMaksim Kiselev resets: 36*e85f4643SMaksim Kiselev maxItems: 1 37*e85f4643SMaksim Kiselev 38*e85f4643SMaksim KiselevpatternProperties: 39*e85f4643SMaksim Kiselev "^channel@[0-9a-f]+$": 40*e85f4643SMaksim Kiselev $ref: adc.yaml 41*e85f4643SMaksim Kiselev type: object 42*e85f4643SMaksim Kiselev description: 43*e85f4643SMaksim Kiselev Represents the internal channels of the ADC. 44*e85f4643SMaksim Kiselev 45*e85f4643SMaksim Kiselev properties: 46*e85f4643SMaksim Kiselev reg: 47*e85f4643SMaksim Kiselev items: 48*e85f4643SMaksim Kiselev minimum: 0 49*e85f4643SMaksim Kiselev maximum: 15 50*e85f4643SMaksim Kiselev 51*e85f4643SMaksim Kiselev required: 52*e85f4643SMaksim Kiselev - reg 53*e85f4643SMaksim Kiselev 54*e85f4643SMaksim Kiselev unevaluatedProperties: false 55*e85f4643SMaksim Kiselev 56*e85f4643SMaksim Kiselevrequired: 57*e85f4643SMaksim Kiselev - "#io-channel-cells" 58*e85f4643SMaksim Kiselev - clocks 59*e85f4643SMaksim Kiselev - compatible 60*e85f4643SMaksim Kiselev - interrupts 61*e85f4643SMaksim Kiselev - reg 62*e85f4643SMaksim Kiselev - resets 63*e85f4643SMaksim Kiselev 64*e85f4643SMaksim KiselevadditionalProperties: false 65*e85f4643SMaksim Kiselev 66*e85f4643SMaksim Kiselevexamples: 67*e85f4643SMaksim Kiselev - | 68*e85f4643SMaksim Kiselev #include <dt-bindings/clock/sun20i-d1-ccu.h> 69*e85f4643SMaksim Kiselev #include <dt-bindings/reset/sun20i-d1-ccu.h> 70*e85f4643SMaksim Kiselev #include <dt-bindings/interrupt-controller/irq.h> 71*e85f4643SMaksim Kiselev 72*e85f4643SMaksim Kiselev gpadc: adc@2009000 { 73*e85f4643SMaksim Kiselev compatible = "allwinner,sun20i-d1-gpadc"; 74*e85f4643SMaksim Kiselev reg = <0x2009000 0x400>; 75*e85f4643SMaksim Kiselev clocks = <&ccu CLK_BUS_GPADC>; 76*e85f4643SMaksim Kiselev resets = <&ccu RST_BUS_GPADC>; 77*e85f4643SMaksim Kiselev interrupts = <73 IRQ_TYPE_LEVEL_HIGH>; 78*e85f4643SMaksim Kiselev #io-channel-cells = <1>; 79*e85f4643SMaksim Kiselev 80*e85f4643SMaksim Kiselev #address-cells = <1>; 81*e85f4643SMaksim Kiselev #size-cells = <0>; 82*e85f4643SMaksim Kiselev 83*e85f4643SMaksim Kiselev channel@0 { 84*e85f4643SMaksim Kiselev reg = <0>; 85*e85f4643SMaksim Kiselev }; 86*e85f4643SMaksim Kiselev 87*e85f4643SMaksim Kiselev channel@1 { 88*e85f4643SMaksim Kiselev reg = <1>; 89*e85f4643SMaksim Kiselev }; 90*e85f4643SMaksim Kiselev }; 91*e85f4643SMaksim Kiselev... 92