1*db03874bSBjorn Andersson# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2*db03874bSBjorn Andersson%YAML 1.2 3*db03874bSBjorn Andersson--- 4*db03874bSBjorn Andersson$id: http://devicetree.org/schemas/thermal/qcom-spmi-adc-tm-hc.yaml# 5*db03874bSBjorn Andersson$schema: http://devicetree.org/meta-schemas/core.yaml# 6*db03874bSBjorn Andersson 7*db03874bSBjorn Anderssontitle: Qualcomm's SPMI PMIC ADC HC Thermal Monitoring 8*db03874bSBjorn Anderssonmaintainers: 9*db03874bSBjorn Andersson - Dmitry Baryshkov <dmitry.baryshkov@linaro.org> 10*db03874bSBjorn Andersson 11*db03874bSBjorn Anderssonproperties: 12*db03874bSBjorn Andersson compatible: 13*db03874bSBjorn Andersson const: qcom,spmi-adc-tm-hc 14*db03874bSBjorn Andersson 15*db03874bSBjorn Andersson reg: 16*db03874bSBjorn Andersson maxItems: 1 17*db03874bSBjorn Andersson 18*db03874bSBjorn Andersson interrupts: 19*db03874bSBjorn Andersson maxItems: 1 20*db03874bSBjorn Andersson 21*db03874bSBjorn Andersson "#thermal-sensor-cells": 22*db03874bSBjorn Andersson const: 1 23*db03874bSBjorn Andersson description: 24*db03874bSBjorn Andersson Number of cells required to uniquely identify the thermal sensors. Since 25*db03874bSBjorn Andersson we have multiple sensors this is set to 1 26*db03874bSBjorn Andersson 27*db03874bSBjorn Andersson "#address-cells": 28*db03874bSBjorn Andersson const: 1 29*db03874bSBjorn Andersson 30*db03874bSBjorn Andersson "#size-cells": 31*db03874bSBjorn Andersson const: 0 32*db03874bSBjorn Andersson 33*db03874bSBjorn Andersson qcom,avg-samples: 34*db03874bSBjorn Andersson $ref: /schemas/types.yaml#/definitions/uint32 35*db03874bSBjorn Andersson description: Number of samples to be used for measurement. 36*db03874bSBjorn Andersson enum: 37*db03874bSBjorn Andersson - 1 38*db03874bSBjorn Andersson - 2 39*db03874bSBjorn Andersson - 4 40*db03874bSBjorn Andersson - 8 41*db03874bSBjorn Andersson - 16 42*db03874bSBjorn Andersson default: 1 43*db03874bSBjorn Andersson 44*db03874bSBjorn Andersson qcom,decimation: 45*db03874bSBjorn Andersson $ref: /schemas/types.yaml#/definitions/uint32 46*db03874bSBjorn Andersson description: This parameter is used to decrease ADC sampling rate. 47*db03874bSBjorn Andersson Quicker measurements can be made by reducing decimation ratio. 48*db03874bSBjorn Andersson enum: 49*db03874bSBjorn Andersson - 256 50*db03874bSBjorn Andersson - 512 51*db03874bSBjorn Andersson - 1024 52*db03874bSBjorn Andersson default: 1024 53*db03874bSBjorn Andersson 54*db03874bSBjorn AnderssonpatternProperties: 55*db03874bSBjorn Andersson "^([-a-z0-9]*)@[0-7]$": 56*db03874bSBjorn Andersson type: object 57*db03874bSBjorn Andersson description: 58*db03874bSBjorn Andersson Represent one thermal sensor. 59*db03874bSBjorn Andersson 60*db03874bSBjorn Andersson properties: 61*db03874bSBjorn Andersson reg: 62*db03874bSBjorn Andersson description: Specify the sensor channel. There are 8 channels in PMIC5's ADC TM 63*db03874bSBjorn Andersson minimum: 0 64*db03874bSBjorn Andersson maximum: 7 65*db03874bSBjorn Andersson 66*db03874bSBjorn Andersson io-channels: 67*db03874bSBjorn Andersson description: 68*db03874bSBjorn Andersson From common IIO binding. Used to pipe PMIC ADC channel to thermal monitor 69*db03874bSBjorn Andersson 70*db03874bSBjorn Andersson qcom,ratiometric: 71*db03874bSBjorn Andersson $ref: /schemas/types.yaml#/definitions/flag 72*db03874bSBjorn Andersson description: 73*db03874bSBjorn Andersson Channel calibration type. 74*db03874bSBjorn Andersson If this property is specified VADC will use the VDD reference 75*db03874bSBjorn Andersson (1.875V) and GND for channel calibration. If property is not found, 76*db03874bSBjorn Andersson channel will be calibrated with 0V and 1.25V reference channels, 77*db03874bSBjorn Andersson also known as absolute calibration. 78*db03874bSBjorn Andersson 79*db03874bSBjorn Andersson qcom,hw-settle-time-us: 80*db03874bSBjorn Andersson description: Time between AMUX getting configured and the ADC starting conversion. 81*db03874bSBjorn Andersson enum: [0, 100, 200, 300, 400, 500, 600, 700, 1000, 2000, 4000, 6000, 8000, 10000] 82*db03874bSBjorn Andersson 83*db03874bSBjorn Andersson qcom,pre-scaling: 84*db03874bSBjorn Andersson $ref: /schemas/types.yaml#/definitions/uint32-array 85*db03874bSBjorn Andersson description: Used for scaling the channel input signal before the 86*db03874bSBjorn Andersson signal is fed to VADC. The configuration for this node is to know the 87*db03874bSBjorn Andersson pre-determined ratio and use it for post scaling. It is a pair of 88*db03874bSBjorn Andersson integers, denoting the numerator and denominator of the fraction by 89*db03874bSBjorn Andersson which input signal is multiplied. For example, <1 3> indicates the 90*db03874bSBjorn Andersson signal is scaled down to 1/3 of its value before ADC measurement. If 91*db03874bSBjorn Andersson property is not found default value depending on chip will be used. 92*db03874bSBjorn Andersson items: 93*db03874bSBjorn Andersson - const: 1 94*db03874bSBjorn Andersson - enum: [ 1, 3, 4, 6, 20, 8, 10 ] 95*db03874bSBjorn Andersson 96*db03874bSBjorn Andersson required: 97*db03874bSBjorn Andersson - reg 98*db03874bSBjorn Andersson - io-channels 99*db03874bSBjorn Andersson 100*db03874bSBjorn Andersson additionalProperties: 101*db03874bSBjorn Andersson false 102*db03874bSBjorn Andersson 103*db03874bSBjorn Anderssonrequired: 104*db03874bSBjorn Andersson - compatible 105*db03874bSBjorn Andersson - reg 106*db03874bSBjorn Andersson - interrupts 107*db03874bSBjorn Andersson - "#address-cells" 108*db03874bSBjorn Andersson - "#size-cells" 109*db03874bSBjorn Andersson - "#thermal-sensor-cells" 110*db03874bSBjorn Andersson 111*db03874bSBjorn AnderssonadditionalProperties: false 112*db03874bSBjorn Andersson 113*db03874bSBjorn Anderssonexamples: 114*db03874bSBjorn Andersson - | 115*db03874bSBjorn Andersson #include <dt-bindings/iio/qcom,spmi-vadc.h> 116*db03874bSBjorn Andersson #include <dt-bindings/interrupt-controller/irq.h> 117*db03874bSBjorn Andersson spmi_bus { 118*db03874bSBjorn Andersson #address-cells = <1>; 119*db03874bSBjorn Andersson #size-cells = <0>; 120*db03874bSBjorn Andersson pm8998_adc: adc@3100 { 121*db03874bSBjorn Andersson reg = <0x3100>; 122*db03874bSBjorn Andersson compatible = "qcom,spmi-adc-rev2"; 123*db03874bSBjorn Andersson #address-cells = <1>; 124*db03874bSBjorn Andersson #size-cells = <0>; 125*db03874bSBjorn Andersson #io-channel-cells = <1>; 126*db03874bSBjorn Andersson 127*db03874bSBjorn Andersson /* Other propreties are omitted */ 128*db03874bSBjorn Andersson adc-chan@4c { 129*db03874bSBjorn Andersson reg = <ADC5_XO_THERM_100K_PU>; 130*db03874bSBjorn Andersson }; 131*db03874bSBjorn Andersson }; 132*db03874bSBjorn Andersson 133*db03874bSBjorn Andersson pm8998_adc_tm: adc-tm@3400 { 134*db03874bSBjorn Andersson compatible = "qcom,spmi-adc-tm-hc"; 135*db03874bSBjorn Andersson reg = <0x3400>; 136*db03874bSBjorn Andersson interrupts = <0x2 0x34 0x0 IRQ_TYPE_EDGE_RISING>; 137*db03874bSBjorn Andersson #thermal-sensor-cells = <1>; 138*db03874bSBjorn Andersson #address-cells = <1>; 139*db03874bSBjorn Andersson #size-cells = <0>; 140*db03874bSBjorn Andersson 141*db03874bSBjorn Andersson thermistor@1 { 142*db03874bSBjorn Andersson reg = <1>; 143*db03874bSBjorn Andersson io-channels = <&pm8998_adc ADC5_XO_THERM_100K_PU>; 144*db03874bSBjorn Andersson qcom,ratiometric; 145*db03874bSBjorn Andersson qcom,hw-settle-time-us = <200>; 146*db03874bSBjorn Andersson }; 147*db03874bSBjorn Andersson }; 148*db03874bSBjorn Andersson }; 149*db03874bSBjorn Andersson... 150