xref: /linux/Documentation/devicetree/bindings/thermal/qcom,pm8775-mbg-tm.yaml (revision b81e34131907d2c243c51117a4aff8dbe22ccc9c)
1*5d901d7dSSatya Priya Kakitapalli# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*5d901d7dSSatya Priya Kakitapalli%YAML 1.2
3*5d901d7dSSatya Priya Kakitapalli---
4*5d901d7dSSatya Priya Kakitapalli$id: http://devicetree.org/schemas/thermal/qcom,pm8775-mbg-tm.yaml#
5*5d901d7dSSatya Priya Kakitapalli$schema: http://devicetree.org/meta-schemas/core.yaml#
6*5d901d7dSSatya Priya Kakitapalli
7*5d901d7dSSatya Priya Kakitapallititle: Qualcomm's SPMI PMIC MBG Thermal Monitoring
8*5d901d7dSSatya Priya Kakitapalli
9*5d901d7dSSatya Priya Kakitapallimaintainers:
10*5d901d7dSSatya Priya Kakitapalli  - Jishnu Prakash <jishnu.prakash@oss.qualcomm.com>
11*5d901d7dSSatya Priya Kakitapalli  - Kamal Wadhwa <kamal.wadhwa@oss.qualcomm.com>
12*5d901d7dSSatya Priya Kakitapalli
13*5d901d7dSSatya Priya Kakitapallidescription:
14*5d901d7dSSatya Priya Kakitapalli  Qualcomm's MBG(Master Bandgap) temperature alarm monitors the die
15*5d901d7dSSatya Priya Kakitapalli  temperature and generates an interrupt if the PMIC die temperature is
16*5d901d7dSSatya Priya Kakitapalli  over a set of programmable temperature thresholds. It allows monitoring
17*5d901d7dSSatya Priya Kakitapalli  for both hot and cold, LVL1 and LVL2 thresholds, which makes it different
18*5d901d7dSSatya Priya Kakitapalli  from the existing temp alarm peripheral. The interrupt comes over SPMI
19*5d901d7dSSatya Priya Kakitapalli  and the MBG's fault status register gives details to understand whether
20*5d901d7dSSatya Priya Kakitapalli  it is a hot/cold and LVL1/LVL2 violation.
21*5d901d7dSSatya Priya Kakitapalli
22*5d901d7dSSatya Priya Kakitapalliproperties:
23*5d901d7dSSatya Priya Kakitapalli  compatible:
24*5d901d7dSSatya Priya Kakitapalli    const: qcom,pm8775-mbg-tm
25*5d901d7dSSatya Priya Kakitapalli
26*5d901d7dSSatya Priya Kakitapalli  reg:
27*5d901d7dSSatya Priya Kakitapalli    maxItems: 1
28*5d901d7dSSatya Priya Kakitapalli
29*5d901d7dSSatya Priya Kakitapalli  interrupts:
30*5d901d7dSSatya Priya Kakitapalli    maxItems: 1
31*5d901d7dSSatya Priya Kakitapalli
32*5d901d7dSSatya Priya Kakitapalli  io-channels:
33*5d901d7dSSatya Priya Kakitapalli    items:
34*5d901d7dSSatya Priya Kakitapalli      - description: ADC channel, which reports chip die temperature.
35*5d901d7dSSatya Priya Kakitapalli
36*5d901d7dSSatya Priya Kakitapalli  io-channel-names:
37*5d901d7dSSatya Priya Kakitapalli    items:
38*5d901d7dSSatya Priya Kakitapalli      - const: thermal
39*5d901d7dSSatya Priya Kakitapalli
40*5d901d7dSSatya Priya Kakitapalli  '#thermal-sensor-cells':
41*5d901d7dSSatya Priya Kakitapalli    const: 0
42*5d901d7dSSatya Priya Kakitapalli
43*5d901d7dSSatya Priya Kakitapallirequired:
44*5d901d7dSSatya Priya Kakitapalli  - compatible
45*5d901d7dSSatya Priya Kakitapalli  - reg
46*5d901d7dSSatya Priya Kakitapalli  - interrupts
47*5d901d7dSSatya Priya Kakitapalli  - io-channels
48*5d901d7dSSatya Priya Kakitapalli  - io-channel-names
49*5d901d7dSSatya Priya Kakitapalli
50*5d901d7dSSatya Priya KakitapalliallOf:
51*5d901d7dSSatya Priya Kakitapalli  - $ref: thermal-sensor.yaml#
52*5d901d7dSSatya Priya Kakitapalli
53*5d901d7dSSatya Priya KakitapalliunevaluatedProperties: false
54*5d901d7dSSatya Priya Kakitapalli
55*5d901d7dSSatya Priya Kakitapalliexamples:
56*5d901d7dSSatya Priya Kakitapalli  - |
57*5d901d7dSSatya Priya Kakitapalli    #include <dt-bindings/interrupt-controller/irq.h>
58*5d901d7dSSatya Priya Kakitapalli
59*5d901d7dSSatya Priya Kakitapalli    pmic {
60*5d901d7dSSatya Priya Kakitapalli        #address-cells = <1>;
61*5d901d7dSSatya Priya Kakitapalli        #size-cells = <0>;
62*5d901d7dSSatya Priya Kakitapalli
63*5d901d7dSSatya Priya Kakitapalli        temperature-sensor@d700 {
64*5d901d7dSSatya Priya Kakitapalli            compatible = "qcom,pm8775-mbg-tm";
65*5d901d7dSSatya Priya Kakitapalli            reg = <0xd700>;
66*5d901d7dSSatya Priya Kakitapalli            interrupts = <0x1 0xd7 0x0 IRQ_TYPE_EDGE_RISING>;
67*5d901d7dSSatya Priya Kakitapalli            io-channels = <&pm8775_adc 0x3>;
68*5d901d7dSSatya Priya Kakitapalli            io-channel-names = "thermal";
69*5d901d7dSSatya Priya Kakitapalli            #thermal-sensor-cells = <0>;
70*5d901d7dSSatya Priya Kakitapalli        };
71*5d901d7dSSatya Priya Kakitapalli    };
72*5d901d7dSSatya Priya Kakitapalli...
73