1*32eb9d41SJonathan Cameron# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2*32eb9d41SJonathan Cameron%YAML 1.2 3*32eb9d41SJonathan Cameron--- 4*32eb9d41SJonathan Cameron$id: http://devicetree.org/schemas/iio/adc/amlogic,meson-saradc.yaml# 5*32eb9d41SJonathan Cameron$schema: http://devicetree.org/meta-schemas/core.yaml# 6*32eb9d41SJonathan Cameron 7*32eb9d41SJonathan Camerontitle: Amlogic Meson SAR (Successive Approximation Register) A/D converter 8*32eb9d41SJonathan Cameron 9*32eb9d41SJonathan Cameronmaintainers: 10*32eb9d41SJonathan Cameron - Martin Blumenstingl <martin.blumenstingl@googlemail.com> 11*32eb9d41SJonathan Cameron 12*32eb9d41SJonathan Camerondescription: 13*32eb9d41SJonathan Cameron Binding covers a range of ADCs found on Amlogic Meson SoCs. 14*32eb9d41SJonathan Cameron 15*32eb9d41SJonathan Cameronproperties: 16*32eb9d41SJonathan Cameron compatible: 17*32eb9d41SJonathan Cameron oneOf: 18*32eb9d41SJonathan Cameron - const: amlogic,meson-saradc 19*32eb9d41SJonathan Cameron - items: 20*32eb9d41SJonathan Cameron - enum: 21*32eb9d41SJonathan Cameron - amlogic,meson8-saradc 22*32eb9d41SJonathan Cameron - amlogic,meson8b-saradc 23*32eb9d41SJonathan Cameron - amlogic,meson8m2-saradc 24*32eb9d41SJonathan Cameron - amlogic,meson-gxbb-saradc 25*32eb9d41SJonathan Cameron - amlogic,meson-gxl-saradc 26*32eb9d41SJonathan Cameron - amlogic,meson-gxm-saradc 27*32eb9d41SJonathan Cameron - amlogic,meson-axg-saradc 28*32eb9d41SJonathan Cameron - amlogic,meson-g12a-saradc 29*32eb9d41SJonathan Cameron - const: amlogic,meson-saradc 30*32eb9d41SJonathan Cameron 31*32eb9d41SJonathan Cameron reg: 32*32eb9d41SJonathan Cameron maxItems: 1 33*32eb9d41SJonathan Cameron 34*32eb9d41SJonathan Cameron interrupts: 35*32eb9d41SJonathan Cameron description: Interrupt indicates end of sampling. 36*32eb9d41SJonathan Cameron maxItems: 1 37*32eb9d41SJonathan Cameron 38*32eb9d41SJonathan Cameron clocks: 39*32eb9d41SJonathan Cameron minItems: 2 40*32eb9d41SJonathan Cameron maxItems: 4 41*32eb9d41SJonathan Cameron 42*32eb9d41SJonathan Cameron clock-names: 43*32eb9d41SJonathan Cameron minItems: 2 44*32eb9d41SJonathan Cameron items: 45*32eb9d41SJonathan Cameron - const: clkin 46*32eb9d41SJonathan Cameron - const: core 47*32eb9d41SJonathan Cameron - const: adc_clk 48*32eb9d41SJonathan Cameron - const: adc_sel 49*32eb9d41SJonathan Cameron 50*32eb9d41SJonathan Cameron vref-supply: true 51*32eb9d41SJonathan Cameron 52*32eb9d41SJonathan Cameron "#io-channel-cells": 53*32eb9d41SJonathan Cameron const: 1 54*32eb9d41SJonathan Cameron 55*32eb9d41SJonathan Cameron amlogic,hhi-sysctrl: 56*32eb9d41SJonathan Cameron $ref: /schemas/types.yaml#/definitions/phandle 57*32eb9d41SJonathan Cameron description: 58*32eb9d41SJonathan Cameron Syscon which contains the 5th bit of the TSC (temperature sensor 59*32eb9d41SJonathan Cameron coefficient) on Meson8b and Meson8m2 (which used to calibrate the 60*32eb9d41SJonathan Cameron temperature sensor) 61*32eb9d41SJonathan Cameron 62*32eb9d41SJonathan Cameron nvmem-cells: 63*32eb9d41SJonathan Cameron description: phandle to the temperature_calib eFuse cells 64*32eb9d41SJonathan Cameron maxItems: 1 65*32eb9d41SJonathan Cameron 66*32eb9d41SJonathan Cameron nvmem-cell-names: 67*32eb9d41SJonathan Cameron const: temperature_calib 68*32eb9d41SJonathan Cameron 69*32eb9d41SJonathan CameronallOf: 70*32eb9d41SJonathan Cameron - if: 71*32eb9d41SJonathan Cameron properties: 72*32eb9d41SJonathan Cameron compatible: 73*32eb9d41SJonathan Cameron contains: 74*32eb9d41SJonathan Cameron enum: 75*32eb9d41SJonathan Cameron - amlogic,meson8-saradc 76*32eb9d41SJonathan Cameron - amlogic,meson8b-saradc 77*32eb9d41SJonathan Cameron - amlogic,meson8m2-saradc 78*32eb9d41SJonathan Cameron then: 79*32eb9d41SJonathan Cameron properties: 80*32eb9d41SJonathan Cameron clocks: 81*32eb9d41SJonathan Cameron maxItems: 2 82*32eb9d41SJonathan Cameron clock-names: 83*32eb9d41SJonathan Cameron maxItems: 2 84*32eb9d41SJonathan Cameron else: 85*32eb9d41SJonathan Cameron properties: 86*32eb9d41SJonathan Cameron nvmem-cells: false 87*32eb9d41SJonathan Cameron mvmem-cel-names: false 88*32eb9d41SJonathan Cameron clocks: 89*32eb9d41SJonathan Cameron minItems: 4 90*32eb9d41SJonathan Cameron clock-names: 91*32eb9d41SJonathan Cameron minItems: 4 92*32eb9d41SJonathan Cameron 93*32eb9d41SJonathan Cameron - if: 94*32eb9d41SJonathan Cameron properties: 95*32eb9d41SJonathan Cameron compatible: 96*32eb9d41SJonathan Cameron contains: 97*32eb9d41SJonathan Cameron enum: 98*32eb9d41SJonathan Cameron - amlogic,meson8b-saradc 99*32eb9d41SJonathan Cameron - amlogic,meson8m2-saradc 100*32eb9d41SJonathan Cameron then: 101*32eb9d41SJonathan Cameron properties: 102*32eb9d41SJonathan Cameron amlogic,hhi-sysctrl: true 103*32eb9d41SJonathan Cameron else: 104*32eb9d41SJonathan Cameron properties: 105*32eb9d41SJonathan Cameron amlogic,hhi-sysctrl: false 106*32eb9d41SJonathan Cameron 107*32eb9d41SJonathan Cameronrequired: 108*32eb9d41SJonathan Cameron - compatible 109*32eb9d41SJonathan Cameron - reg 110*32eb9d41SJonathan Cameron - interrupts 111*32eb9d41SJonathan Cameron - clocks 112*32eb9d41SJonathan Cameron - clock-names 113*32eb9d41SJonathan Cameron - "#io-channel-cells" 114*32eb9d41SJonathan Cameron 115*32eb9d41SJonathan CameronadditionalProperties: false 116*32eb9d41SJonathan Cameron 117*32eb9d41SJonathan Cameronexamples: 118*32eb9d41SJonathan Cameron - | 119*32eb9d41SJonathan Cameron #include <dt-bindings/interrupt-controller/irq.h> 120*32eb9d41SJonathan Cameron #include <dt-bindings/clock/gxbb-clkc.h> 121*32eb9d41SJonathan Cameron #include <dt-bindings/interrupt-controller/arm-gic.h> 122*32eb9d41SJonathan Cameron soc { 123*32eb9d41SJonathan Cameron #address-cells = <2>; 124*32eb9d41SJonathan Cameron #size-cells = <2>; 125*32eb9d41SJonathan Cameron adc@8680 { 126*32eb9d41SJonathan Cameron compatible = "amlogic,meson-gxl-saradc", "amlogic,meson-saradc"; 127*32eb9d41SJonathan Cameron #io-channel-cells = <1>; 128*32eb9d41SJonathan Cameron reg = <0x0 0x8680 0x0 0x34>; 129*32eb9d41SJonathan Cameron interrupts = <GIC_SPI 73 IRQ_TYPE_EDGE_RISING>; 130*32eb9d41SJonathan Cameron clocks = <&xtal>, 131*32eb9d41SJonathan Cameron <&clkc CLKID_SAR_ADC>, 132*32eb9d41SJonathan Cameron <&clkc CLKID_SAR_ADC_CLK>, 133*32eb9d41SJonathan Cameron <&clkc CLKID_SAR_ADC_SEL>; 134*32eb9d41SJonathan Cameron clock-names = "clkin", "core", "adc_clk", "adc_sel"; 135*32eb9d41SJonathan Cameron }; 136*32eb9d41SJonathan Cameron adc@9680 { 137*32eb9d41SJonathan Cameron compatible = "amlogic,meson8b-saradc", "amlogic,meson-saradc"; 138*32eb9d41SJonathan Cameron #io-channel-cells = <1>; 139*32eb9d41SJonathan Cameron reg = <0x0 0x9680 0x0 0x34>; 140*32eb9d41SJonathan Cameron interrupts = <GIC_SPI 73 IRQ_TYPE_EDGE_RISING>; 141*32eb9d41SJonathan Cameron clocks = <&xtal>, <&clkc CLKID_SAR_ADC>; 142*32eb9d41SJonathan Cameron clock-names = "clkin", "core"; 143*32eb9d41SJonathan Cameron nvmem-cells = <&tsens_caldata>; 144*32eb9d41SJonathan Cameron nvmem-cell-names = "temperature_calib"; 145*32eb9d41SJonathan Cameron amlogic,hhi-sysctrl = <&hhi>; 146*32eb9d41SJonathan Cameron }; 147*32eb9d41SJonathan Cameron }; 148*32eb9d41SJonathan Cameron... 149