Commit e46e003a authored by Jishnu Prakash's avatar Jishnu Prakash Committed by Daniel Lezcano

dt-bindings: thermal: qcom: add PMIC5 Gen2 ADC_TM bindings

Add documentation for PMIC5 Gen2 ADC_TM peripheral.
It is used for monitoring ADC channel thresholds for PMIC7-type
PMICs. It is present on PMK8350, like PMIC7 ADC and can be used
to monitor up to 8 ADC channels, from any of the PMIC7 PMICs
on a target, through PBS(Programmable Boot Sequence).
Signed-off-by: default avatarJishnu Prakash <quic_jprakash@quicinc.com>
Reviewed-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/1648991869-20899-2-git-send-email-quic_jprakash@quicinc.comSigned-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
parent 3277e022
...@@ -10,7 +10,9 @@ maintainers: ...@@ -10,7 +10,9 @@ maintainers:
properties: properties:
compatible: compatible:
const: qcom,spmi-adc-tm5 enum:
- qcom,spmi-adc-tm5
- qcom,spmi-adc-tm5-gen2
reg: reg:
maxItems: 1 maxItems: 1
...@@ -33,6 +35,7 @@ properties: ...@@ -33,6 +35,7 @@ properties:
qcom,avg-samples: qcom,avg-samples:
$ref: /schemas/types.yaml#/definitions/uint32 $ref: /schemas/types.yaml#/definitions/uint32
description: Number of samples to be used for measurement. description: Number of samples to be used for measurement.
Not applicable for Gen2 ADC_TM peripheral.
enum: enum:
- 1 - 1
- 2 - 2
...@@ -45,6 +48,7 @@ properties: ...@@ -45,6 +48,7 @@ properties:
$ref: /schemas/types.yaml#/definitions/uint32 $ref: /schemas/types.yaml#/definitions/uint32
description: This parameter is used to decrease ADC sampling rate. description: This parameter is used to decrease ADC sampling rate.
Quicker measurements can be made by reducing decimation ratio. Quicker measurements can be made by reducing decimation ratio.
Not applicable for Gen2 ADC_TM peripheral.
enum: enum:
- 250 - 250
- 420 - 420
...@@ -93,6 +97,29 @@ patternProperties: ...@@ -93,6 +97,29 @@ patternProperties:
- const: 1 - const: 1
- enum: [ 1, 3, 4, 6, 20, 8, 10 ] - enum: [ 1, 3, 4, 6, 20, 8, 10 ]
qcom,avg-samples:
$ref: /schemas/types.yaml#/definitions/uint32
description: Number of samples to be used for measurement.
This property in child node is applicable only for Gen2 ADC_TM peripheral.
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.
This property in child node is applicable only for Gen2 ADC_TM peripheral.
enum:
- 85
- 340
- 1360
default: 1360
required: required:
- reg - reg
- io-channels - io-channels
...@@ -100,6 +127,31 @@ patternProperties: ...@@ -100,6 +127,31 @@ patternProperties:
additionalProperties: additionalProperties:
false false
allOf:
- if:
properties:
compatible:
contains:
const: qcom,spmi-adc-tm5
then:
patternProperties:
"^([-a-z0-9]*)@[0-7]$":
properties:
qcom,decimation: false
qcom,avg-samples: false
- if:
properties:
compatible:
contains:
const: qcom,spmi-adc-tm5-gen2
then:
properties:
qcom,avg-samples: false
qcom,decimation: false
required: required:
- compatible - compatible
- reg - reg
...@@ -124,7 +176,7 @@ examples: ...@@ -124,7 +176,7 @@ examples:
#size-cells = <0>; #size-cells = <0>;
#io-channel-cells = <1>; #io-channel-cells = <1>;
/* Other propreties are omitted */ /* Other properties are omitted */
conn-therm@4f { conn-therm@4f {
reg = <ADC5_AMUX_THM3_100K_PU>; reg = <ADC5_AMUX_THM3_100K_PU>;
qcom,ratiometric; qcom,ratiometric;
...@@ -148,4 +200,58 @@ examples: ...@@ -148,4 +200,58 @@ examples:
}; };
}; };
}; };
- |
#include <dt-bindings/iio/qcom,spmi-adc7-pmk8350.h>
#include <dt-bindings/iio/qcom,spmi-adc7-pm8350.h>
#include <dt-bindings/interrupt-controller/irq.h>
spmi_bus {
#address-cells = <1>;
#size-cells = <0>;
pmk8350_vadc: adc@3100 {
reg = <0x3100>;
compatible = "qcom,spmi-adc7";
#address-cells = <1>;
#size-cells = <0>;
#io-channel-cells = <1>;
/* Other properties are omitted */
xo-therm@44 {
reg = <PMK8350_ADC7_AMUX_THM1_100K_PU>;
qcom,ratiometric;
qcom,hw-settle-time = <200>;
};
conn-therm@47 {
reg = <PM8350_ADC7_AMUX_THM4_100K_PU>;
qcom,ratiometric;
qcom,hw-settle-time = <200>;
};
};
pmk8350_adc_tm: adc-tm@3400 {
compatible = "qcom,spmi-adc-tm5-gen2";
reg = <0x3400>;
interrupts = <0x0 0x34 0x0 IRQ_TYPE_EDGE_RISING>;
#thermal-sensor-cells = <1>;
#address-cells = <1>;
#size-cells = <0>;
pmk8350-xo-therm@0 {
reg = <0>;
io-channels = <&pmk8350_vadc PMK8350_ADC7_AMUX_THM1_100K_PU>;
qcom,decimation = <340>;
qcom,ratiometric;
qcom,hw-settle-time-us = <200>;
};
conn-therm@1 {
reg = <1>;
io-channels = <&pmk8350_vadc PM8350_ADC7_AMUX_THM4_100K_PU>;
qcom,avg-samples = <2>;
qcom,ratiometric;
qcom,hw-settle-time-us = <200>;
};
};
};
... ...
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment