-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
dt-bindings: thermal: qcom: add adc-thermal monitor bindings
Add bindings for thermal monitor, part of Qualcomm PMIC5 chips. It is a close counterpart of VADC part of those PMICs. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> Link: https://lore.kernel.org/r/20210205000118.493610-2-dmitry.baryshkov@linaro.org
- Loading branch information
Dmitry Baryshkov
authored and
Daniel Lezcano
committed
Feb 15, 2021
1 parent
20cc0dd
commit e8ffd6c
Showing
1 changed file
with
153 additions
and
0 deletions.
There are no files selected for viewing
153 changes: 153 additions & 0 deletions
153
Documentation/devicetree/bindings/thermal/qcom-spmi-adc-tm5.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,153 @@ | ||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/thermal/qcom-spmi-adc-tm5.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Qualcomm's SPMI PMIC ADC Thermal Monitoring | ||
maintainers: | ||
- Dmitry Baryshkov <dmitry.baryshkov@linaro.org> | ||
|
||
properties: | ||
compatible: | ||
const: qcom,spmi-adc-tm5 | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
interrupts: | ||
maxItems: 1 | ||
|
||
"#thermal-sensor-cells": | ||
const: 1 | ||
description: | ||
Number of cells required to uniquely identify the thermal sensors. Since | ||
we have multiple sensors this is set to 1 | ||
|
||
"#address-cells": | ||
const: 1 | ||
|
||
"#size-cells": | ||
const: 0 | ||
|
||
qcom,avg-samples: | ||
$ref: /schemas/types.yaml#/definitions/uint32 | ||
description: Number of samples to be used for measurement. | ||
enum: | ||
- 1 | ||
- 2 | ||
- 4 | ||
- 8 | ||
- 16 | ||
default: 1 | ||
|
||
qcom,decimation: | ||
$ref: /schemas/types.yaml#/definitions/uint32 | ||
description: This parameter is used to decrease ADC sampling rate. | ||
Quicker measurements can be made by reducing decimation ratio. | ||
enum: | ||
- 250 | ||
- 420 | ||
- 840 | ||
default: 840 | ||
|
||
patternProperties: | ||
"^([-a-z0-9]*)@[0-7]$": | ||
type: object | ||
description: | ||
Represent one thermal sensor. | ||
|
||
properties: | ||
reg: | ||
$ref: /schemas/types.yaml#/definitions/uint32 | ||
description: Specify the sensor channel. There are 8 channels in PMIC5's ADC TM | ||
minimum: 0 | ||
maximum: 7 | ||
|
||
io-channels: | ||
description: | ||
From common IIO binding. Used to pipe PMIC ADC channel to thermal monitor | ||
|
||
qcom,ratiometric: | ||
$ref: /schemas/types.yaml#/definitions/flag | ||
description: | ||
Channel calibration type. | ||
If this property is specified VADC will use the VDD reference | ||
(1.875V) and GND for channel calibration. If property is not found, | ||
channel will be calibrated with 0V and 1.25V reference channels, | ||
also known as absolute calibration. | ||
|
||
qcom,hw-settle-time-us: | ||
$ref: /schemas/types.yaml#/definitions/uint32 | ||
description: Time between AMUX getting configured and the ADC starting conversion. | ||
enum: [15, 100, 200, 300, 400, 500, 600, 700, 1000, 2000, 4000, 8000, 16000, 32000, 64000, 128000] | ||
|
||
qcom,pre-scaling: | ||
$ref: /schemas/types.yaml#/definitions/uint32-array | ||
description: Used for scaling the channel input signal before the | ||
signal is fed to VADC. The configuration for this node is to know the | ||
pre-determined ratio and use it for post scaling. It is a pair of | ||
integers, denoting the numerator and denominator of the fraction by | ||
which input signal is multiplied. For example, <1 3> indicates the | ||
signal is scaled down to 1/3 of its value before ADC measurement. If | ||
property is not found default value depending on chip will be used. | ||
items: | ||
- const: 1 | ||
- enum: [ 1, 3, 4, 6, 20, 8, 10 ] | ||
|
||
required: | ||
- reg | ||
- io-channels | ||
|
||
additionalProperties: | ||
false | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- interrupts | ||
- "#address-cells" | ||
- "#size-cells" | ||
- "#thermal-sensor-cells" | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
#include <dt-bindings/iio/qcom,spmi-vadc.h> | ||
#include <dt-bindings/interrupt-controller/irq.h> | ||
spmi_bus { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
pm8150b_adc: adc@3100 { | ||
reg = <0x3100>; | ||
compatible = "qcom,spmi-adc5"; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
#io-channel-cells = <1>; | ||
/* Other propreties are omitted */ | ||
conn-therm@4f { | ||
reg = <ADC5_AMUX_THM3_100K_PU>; | ||
qcom,ratiometric; | ||
qcom,hw-settle-time = <200>; | ||
}; | ||
}; | ||
pm8150b_adc_tm: adc-tm@3500 { | ||
compatible = "qcom,spmi-adc-tm5"; | ||
reg = <0x3500>; | ||
interrupts = <0x2 0x35 0x0 IRQ_TYPE_EDGE_RISING>; | ||
#thermal-sensor-cells = <1>; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
conn-therm@0 { | ||
reg = <0>; | ||
io-channels = <&pm8150b_adc ADC5_AMUX_THM3_100K_PU>; | ||
qcom,ratiometric; | ||
qcom,hw-settle-time-us = <200>; | ||
}; | ||
}; | ||
}; | ||
... |