1*4d8d5898SCosmin Tanislav# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*4d8d5898SCosmin Tanislav%YAML 1.2 3*4d8d5898SCosmin Tanislav--- 4*4d8d5898SCosmin Tanislav$id: http://devicetree.org/schemas/iio/adc/renesas,r9a09g077-adc.yaml# 5*4d8d5898SCosmin Tanislav$schema: http://devicetree.org/meta-schemas/core.yaml# 6*4d8d5898SCosmin Tanislav 7*4d8d5898SCosmin Tanislavtitle: Renesas RZ/T2H / RZ/N2H ADC12 8*4d8d5898SCosmin Tanislav 9*4d8d5898SCosmin Tanislavmaintainers: 10*4d8d5898SCosmin Tanislav - Cosmin Tanislav <cosmin-gabriel.tanislav.xa@renesas.com> 11*4d8d5898SCosmin Tanislav 12*4d8d5898SCosmin Tanislavdescription: | 13*4d8d5898SCosmin Tanislav A/D Converter block is a successive approximation analog-to-digital converter 14*4d8d5898SCosmin Tanislav with a 12-bit accuracy. Up to 16 analog input channels can be selected. 15*4d8d5898SCosmin Tanislav Conversions can be performed in single or continuous mode. Result of the ADC 16*4d8d5898SCosmin Tanislav is stored in a 16-bit data register corresponding to each channel. 17*4d8d5898SCosmin Tanislav 18*4d8d5898SCosmin Tanislavproperties: 19*4d8d5898SCosmin Tanislav compatible: 20*4d8d5898SCosmin Tanislav oneOf: 21*4d8d5898SCosmin Tanislav - items: 22*4d8d5898SCosmin Tanislav - const: renesas,r9a09g087-adc # RZ/N2H 23*4d8d5898SCosmin Tanislav - const: renesas,r9a09g077-adc # RZ/T2H 24*4d8d5898SCosmin Tanislav - items: 25*4d8d5898SCosmin Tanislav - const: renesas,r9a09g077-adc # RZ/T2H 26*4d8d5898SCosmin Tanislav 27*4d8d5898SCosmin Tanislav reg: 28*4d8d5898SCosmin Tanislav maxItems: 1 29*4d8d5898SCosmin Tanislav 30*4d8d5898SCosmin Tanislav interrupts: 31*4d8d5898SCosmin Tanislav items: 32*4d8d5898SCosmin Tanislav - description: A/D scan end interrupt 33*4d8d5898SCosmin Tanislav - description: A/D scan end interrupt for Group B 34*4d8d5898SCosmin Tanislav - description: A/D scan end interrupt for Group C 35*4d8d5898SCosmin Tanislav - description: Window A compare match 36*4d8d5898SCosmin Tanislav - description: Window B compare match 37*4d8d5898SCosmin Tanislav - description: Compare match 38*4d8d5898SCosmin Tanislav - description: Compare mismatch 39*4d8d5898SCosmin Tanislav 40*4d8d5898SCosmin Tanislav interrupt-names: 41*4d8d5898SCosmin Tanislav items: 42*4d8d5898SCosmin Tanislav - const: adi 43*4d8d5898SCosmin Tanislav - const: gbadi 44*4d8d5898SCosmin Tanislav - const: gcadi 45*4d8d5898SCosmin Tanislav - const: cmpai 46*4d8d5898SCosmin Tanislav - const: cmpbi 47*4d8d5898SCosmin Tanislav - const: wcmpm 48*4d8d5898SCosmin Tanislav - const: wcmpum 49*4d8d5898SCosmin Tanislav 50*4d8d5898SCosmin Tanislav clocks: 51*4d8d5898SCosmin Tanislav items: 52*4d8d5898SCosmin Tanislav - description: Converter clock 53*4d8d5898SCosmin Tanislav - description: Peripheral clock 54*4d8d5898SCosmin Tanislav 55*4d8d5898SCosmin Tanislav clock-names: 56*4d8d5898SCosmin Tanislav items: 57*4d8d5898SCosmin Tanislav - const: adclk 58*4d8d5898SCosmin Tanislav - const: pclk 59*4d8d5898SCosmin Tanislav 60*4d8d5898SCosmin Tanislav power-domains: 61*4d8d5898SCosmin Tanislav maxItems: 1 62*4d8d5898SCosmin Tanislav 63*4d8d5898SCosmin Tanislav '#address-cells': 64*4d8d5898SCosmin Tanislav const: 1 65*4d8d5898SCosmin Tanislav 66*4d8d5898SCosmin Tanislav '#size-cells': 67*4d8d5898SCosmin Tanislav const: 0 68*4d8d5898SCosmin Tanislav 69*4d8d5898SCosmin Tanislav "#io-channel-cells": 70*4d8d5898SCosmin Tanislav const: 1 71*4d8d5898SCosmin Tanislav 72*4d8d5898SCosmin TanislavpatternProperties: 73*4d8d5898SCosmin Tanislav "^channel@[0-9a-f]$": 74*4d8d5898SCosmin Tanislav $ref: adc.yaml 75*4d8d5898SCosmin Tanislav type: object 76*4d8d5898SCosmin Tanislav description: The external channels which are connected to the ADC. 77*4d8d5898SCosmin Tanislav 78*4d8d5898SCosmin Tanislav properties: 79*4d8d5898SCosmin Tanislav reg: 80*4d8d5898SCosmin Tanislav description: The channel number. 81*4d8d5898SCosmin Tanislav maximum: 15 82*4d8d5898SCosmin Tanislav 83*4d8d5898SCosmin Tanislav required: 84*4d8d5898SCosmin Tanislav - reg 85*4d8d5898SCosmin Tanislav 86*4d8d5898SCosmin Tanislav additionalProperties: false 87*4d8d5898SCosmin Tanislav 88*4d8d5898SCosmin Tanislavrequired: 89*4d8d5898SCosmin Tanislav - compatible 90*4d8d5898SCosmin Tanislav - reg 91*4d8d5898SCosmin Tanislav - interrupts 92*4d8d5898SCosmin Tanislav - clocks 93*4d8d5898SCosmin Tanislav - clock-names 94*4d8d5898SCosmin Tanislav - power-domains 95*4d8d5898SCosmin Tanislav 96*4d8d5898SCosmin TanislavadditionalProperties: false 97*4d8d5898SCosmin Tanislav 98*4d8d5898SCosmin Tanislavexamples: 99*4d8d5898SCosmin Tanislav - | 100*4d8d5898SCosmin Tanislav #include <dt-bindings/clock/renesas,r9a09g077-cpg-mssr.h> 101*4d8d5898SCosmin Tanislav #include <dt-bindings/interrupt-controller/arm-gic.h> 102*4d8d5898SCosmin Tanislav 103*4d8d5898SCosmin Tanislav adc@80008000 { 104*4d8d5898SCosmin Tanislav compatible = "renesas,r9a09g077-adc"; 105*4d8d5898SCosmin Tanislav reg = <0x80008000 0x400>; 106*4d8d5898SCosmin Tanislav interrupts = <GIC_SPI 708 IRQ_TYPE_EDGE_RISING>, 107*4d8d5898SCosmin Tanislav <GIC_SPI 709 IRQ_TYPE_EDGE_RISING>, 108*4d8d5898SCosmin Tanislav <GIC_SPI 710 IRQ_TYPE_EDGE_RISING>, 109*4d8d5898SCosmin Tanislav <GIC_SPI 711 IRQ_TYPE_LEVEL_HIGH>, 110*4d8d5898SCosmin Tanislav <GIC_SPI 712 IRQ_TYPE_LEVEL_HIGH>, 111*4d8d5898SCosmin Tanislav <GIC_SPI 855 IRQ_TYPE_EDGE_RISING>, 112*4d8d5898SCosmin Tanislav <GIC_SPI 856 IRQ_TYPE_EDGE_RISING>; 113*4d8d5898SCosmin Tanislav interrupt-names = "adi", "gbadi", "gcadi", 114*4d8d5898SCosmin Tanislav "cmpai", "cmpbi", "wcmpm", "wcmpum"; 115*4d8d5898SCosmin Tanislav clocks = <&cpg CPG_CORE R9A09G077_CLK_PCLKL>, 116*4d8d5898SCosmin Tanislav <&cpg CPG_MOD 225>; 117*4d8d5898SCosmin Tanislav clock-names = "adclk", "pclk"; 118*4d8d5898SCosmin Tanislav power-domains = <&cpg>; 119*4d8d5898SCosmin Tanislav #address-cells = <1>; 120*4d8d5898SCosmin Tanislav #size-cells = <0>; 121*4d8d5898SCosmin Tanislav #io-channel-cells = <1>; 122*4d8d5898SCosmin Tanislav 123*4d8d5898SCosmin Tanislav channel@0 { 124*4d8d5898SCosmin Tanislav reg = <0x0>; 125*4d8d5898SCosmin Tanislav }; 126*4d8d5898SCosmin Tanislav channel@1 { 127*4d8d5898SCosmin Tanislav reg = <0x1>; 128*4d8d5898SCosmin Tanislav }; 129*4d8d5898SCosmin Tanislav channel@2 { 130*4d8d5898SCosmin Tanislav reg = <0x2>; 131*4d8d5898SCosmin Tanislav }; 132*4d8d5898SCosmin Tanislav channel@3 { 133*4d8d5898SCosmin Tanislav reg = <0x3>; 134*4d8d5898SCosmin Tanislav }; 135*4d8d5898SCosmin Tanislav }; 136