summaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree/bindings/thermal/qcom,pm8775-mbg-tm.yaml
blob: 2e084d040625c0ef7b69d98e83d3614010d8fe7b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/thermal/qcom,pm8775-mbg-tm.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm's SPMI PMIC MBG Thermal Monitoring

maintainers:
  - Jishnu Prakash <jishnu.prakash@oss.qualcomm.com>
  - Kamal Wadhwa <kamal.wadhwa@oss.qualcomm.com>

description:
  Qualcomm's MBG(Master Bandgap) temperature alarm monitors the die
  temperature and generates an interrupt if the PMIC die temperature is
  over a set of programmable temperature thresholds. It allows monitoring
  for both hot and cold, LVL1 and LVL2 thresholds, which makes it different
  from the existing temp alarm peripheral. The interrupt comes over SPMI
  and the MBG's fault status register gives details to understand whether
  it is a hot/cold and LVL1/LVL2 violation.

properties:
  compatible:
    const: qcom,pm8775-mbg-tm

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  io-channels:
    items:
      - description: ADC channel, which reports chip die temperature.

  io-channel-names:
    items:
      - const: thermal

  '#thermal-sensor-cells':
    const: 0

required:
  - compatible
  - reg
  - interrupts
  - io-channels
  - io-channel-names

allOf:
  - $ref: thermal-sensor.yaml#

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>

    pmic {
        #address-cells = <1>;
        #size-cells = <0>;

        temperature-sensor@d700 {
            compatible = "qcom,pm8775-mbg-tm";
            reg = <0xd700>;
            interrupts = <0x1 0xd7 0x0 IRQ_TYPE_EDGE_RISING>;
            io-channels = <&pm8775_adc 0x3>;
            io-channel-names = "thermal";
            #thermal-sensor-cells = <0>;
        };
    };
...