1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0 2*4882a593Smuzhiyun%YAML 1.2 3*4882a593Smuzhiyun--- 4*4882a593Smuzhiyun$id: http://devicetree.org/schemas/iio/adc/samsung,exynos-adc.yaml# 5*4882a593Smuzhiyun$schema: http://devicetree.org/meta-schemas/core.yaml# 6*4882a593Smuzhiyun 7*4882a593Smuzhiyuntitle: Samsung Exynos Analog to Digital Converter (ADC) 8*4882a593Smuzhiyun 9*4882a593Smuzhiyunmaintainers: 10*4882a593Smuzhiyun - Krzysztof Kozlowski <krzk@kernel.org> 11*4882a593Smuzhiyun 12*4882a593Smuzhiyunproperties: 13*4882a593Smuzhiyun compatible: 14*4882a593Smuzhiyun enum: 15*4882a593Smuzhiyun - samsung,exynos-adc-v1 # Exynos5250 16*4882a593Smuzhiyun - samsung,exynos-adc-v2 17*4882a593Smuzhiyun - samsung,exynos3250-adc 18*4882a593Smuzhiyun - samsung,exynos4212-adc # Exynos4212 and Exynos4412 19*4882a593Smuzhiyun - samsung,exynos7-adc 20*4882a593Smuzhiyun - samsung,s3c2410-adc 21*4882a593Smuzhiyun - samsung,s3c2416-adc 22*4882a593Smuzhiyun - samsung,s3c2440-adc 23*4882a593Smuzhiyun - samsung,s3c2443-adc 24*4882a593Smuzhiyun - samsung,s3c6410-adc 25*4882a593Smuzhiyun - samsung,s5pv210-adc 26*4882a593Smuzhiyun 27*4882a593Smuzhiyun reg: 28*4882a593Smuzhiyun maxItems: 1 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun clocks: 31*4882a593Smuzhiyun description: 32*4882a593Smuzhiyun Phandle to ADC bus clock. For Exynos3250 additional clock is needed. 33*4882a593Smuzhiyun minItems: 1 34*4882a593Smuzhiyun maxItems: 2 35*4882a593Smuzhiyun 36*4882a593Smuzhiyun clock-names: 37*4882a593Smuzhiyun description: 38*4882a593Smuzhiyun Must contain clock names (adc, sclk) matching phandles in clocks 39*4882a593Smuzhiyun property. 40*4882a593Smuzhiyun minItems: 1 41*4882a593Smuzhiyun maxItems: 2 42*4882a593Smuzhiyun 43*4882a593Smuzhiyun interrupts: 44*4882a593Smuzhiyun description: 45*4882a593Smuzhiyun ADC interrupt followed by optional touchscreen interrupt. 46*4882a593Smuzhiyun minItems: 1 47*4882a593Smuzhiyun maxItems: 2 48*4882a593Smuzhiyun 49*4882a593Smuzhiyun "#io-channel-cells": 50*4882a593Smuzhiyun const: 1 51*4882a593Smuzhiyun 52*4882a593Smuzhiyun io-channel-ranges: true 53*4882a593Smuzhiyun 54*4882a593Smuzhiyun vdd-supply: true 55*4882a593Smuzhiyun 56*4882a593Smuzhiyun samsung,syscon-phandle: 57*4882a593Smuzhiyun $ref: '/schemas/types.yaml#/definitions/phandle' 58*4882a593Smuzhiyun description: 59*4882a593Smuzhiyun Phandle to the PMU system controller node (to access the ADC_PHY 60*4882a593Smuzhiyun register on Exynos3250/4x12/5250/5420/5800). 61*4882a593Smuzhiyun 62*4882a593Smuzhiyun has-touchscreen: 63*4882a593Smuzhiyun description: 64*4882a593Smuzhiyun If present, indicates that a touchscreen is connected and usable. 65*4882a593Smuzhiyun type: boolean 66*4882a593Smuzhiyun 67*4882a593Smuzhiyunrequired: 68*4882a593Smuzhiyun - compatible 69*4882a593Smuzhiyun - reg 70*4882a593Smuzhiyun - clocks 71*4882a593Smuzhiyun - clock-names 72*4882a593Smuzhiyun - interrupts 73*4882a593Smuzhiyun - "#io-channel-cells" 74*4882a593Smuzhiyun - vdd-supply 75*4882a593Smuzhiyun 76*4882a593SmuzhiyunadditionalProperties: 77*4882a593Smuzhiyun type: object 78*4882a593Smuzhiyun 79*4882a593SmuzhiyunallOf: 80*4882a593Smuzhiyun - if: 81*4882a593Smuzhiyun properties: 82*4882a593Smuzhiyun compatible: 83*4882a593Smuzhiyun contains: 84*4882a593Smuzhiyun enum: 85*4882a593Smuzhiyun - samsung,exynos-adc-v1 86*4882a593Smuzhiyun - samsung,exynos-adc-v2 87*4882a593Smuzhiyun - samsung,exynos3250-adc 88*4882a593Smuzhiyun - samsung,exynos4212-adc 89*4882a593Smuzhiyun then: 90*4882a593Smuzhiyun required: 91*4882a593Smuzhiyun - samsung,syscon-phandle 92*4882a593Smuzhiyun 93*4882a593Smuzhiyun - if: 94*4882a593Smuzhiyun properties: 95*4882a593Smuzhiyun compatible: 96*4882a593Smuzhiyun contains: 97*4882a593Smuzhiyun enum: 98*4882a593Smuzhiyun - samsung,exynos3250-adc 99*4882a593Smuzhiyun then: 100*4882a593Smuzhiyun properties: 101*4882a593Smuzhiyun clocks: 102*4882a593Smuzhiyun minItems: 2 103*4882a593Smuzhiyun maxItems: 2 104*4882a593Smuzhiyun clock-names: 105*4882a593Smuzhiyun items: 106*4882a593Smuzhiyun - const: adc 107*4882a593Smuzhiyun - const: sclk 108*4882a593Smuzhiyun else: 109*4882a593Smuzhiyun properties: 110*4882a593Smuzhiyun clocks: 111*4882a593Smuzhiyun minItems: 1 112*4882a593Smuzhiyun maxItems: 1 113*4882a593Smuzhiyun clock-names: 114*4882a593Smuzhiyun items: 115*4882a593Smuzhiyun - const: adc 116*4882a593Smuzhiyun 117*4882a593Smuzhiyun - if: 118*4882a593Smuzhiyun required: 119*4882a593Smuzhiyun - has-touchscreen 120*4882a593Smuzhiyun then: 121*4882a593Smuzhiyun properties: 122*4882a593Smuzhiyun interrupts: 123*4882a593Smuzhiyun minItems: 2 124*4882a593Smuzhiyun maxItems: 2 125*4882a593Smuzhiyun 126*4882a593Smuzhiyunexamples: 127*4882a593Smuzhiyun - | 128*4882a593Smuzhiyun adc: adc@12d10000 { 129*4882a593Smuzhiyun compatible = "samsung,exynos-adc-v1"; 130*4882a593Smuzhiyun reg = <0x12d10000 0x100>; 131*4882a593Smuzhiyun interrupts = <0 106 0>; 132*4882a593Smuzhiyun #io-channel-cells = <1>; 133*4882a593Smuzhiyun io-channel-ranges; 134*4882a593Smuzhiyun 135*4882a593Smuzhiyun clocks = <&clock 303>; 136*4882a593Smuzhiyun clock-names = "adc"; 137*4882a593Smuzhiyun 138*4882a593Smuzhiyun vdd-supply = <&buck5_reg>; 139*4882a593Smuzhiyun samsung,syscon-phandle = <&pmu_system_controller>; 140*4882a593Smuzhiyun 141*4882a593Smuzhiyun /* NTC thermistor is a hwmon device */ 142*4882a593Smuzhiyun ncp15wb473 { 143*4882a593Smuzhiyun compatible = "murata,ncp15wb473"; 144*4882a593Smuzhiyun pullup-uv = <1800000>; 145*4882a593Smuzhiyun pullup-ohm = <47000>; 146*4882a593Smuzhiyun pulldown-ohm = <0>; 147*4882a593Smuzhiyun io-channels = <&adc 4>; 148*4882a593Smuzhiyun }; 149*4882a593Smuzhiyun }; 150*4882a593Smuzhiyun 151*4882a593Smuzhiyun - | 152*4882a593Smuzhiyun #include <dt-bindings/clock/exynos3250.h> 153*4882a593Smuzhiyun 154*4882a593Smuzhiyun adc@126c0000 { 155*4882a593Smuzhiyun compatible = "samsung,exynos3250-adc"; 156*4882a593Smuzhiyun reg = <0x126C0000 0x100>; 157*4882a593Smuzhiyun interrupts = <0 137 0>; 158*4882a593Smuzhiyun #io-channel-cells = <1>; 159*4882a593Smuzhiyun io-channel-ranges; 160*4882a593Smuzhiyun 161*4882a593Smuzhiyun clocks = <&cmu CLK_TSADC>, 162*4882a593Smuzhiyun <&cmu CLK_SCLK_TSADC>; 163*4882a593Smuzhiyun clock-names = "adc", "sclk"; 164*4882a593Smuzhiyun 165*4882a593Smuzhiyun vdd-supply = <&buck5_reg>; 166*4882a593Smuzhiyun samsung,syscon-phandle = <&pmu_system_controller>; 167*4882a593Smuzhiyun }; 168