xref: /linux/Documentation/devicetree/bindings/thermal/sprd-thermal.yaml (revision 3503d56cc7233ced602e38a4c13caa64f00ab2aa)
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/thermal/sprd-thermal.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Spreadtrum thermal sensor controller bindings
8
9maintainers:
10  - Orson Zhai <orsonzhai@gmail.com>
11  - Baolin Wang <baolin.wang7@gmail.com>
12  - Chunyan Zhang <zhang.lyra@gmail.com>
13
14properties:
15  compatible:
16    const: sprd,ums512-thermal
17
18  reg:
19    maxItems: 1
20
21  clocks:
22    maxItems: 1
23
24  clock-names:
25    items:
26      - const: enable
27
28  nvmem-cells:
29    maxItems: 2
30    description:
31      Reference to nvmem nodes for the calibration data.
32
33  nvmem-cell-names:
34    items:
35      - const: thm_sign_cal
36      - const: thm_ratio_cal
37
38  "#thermal-sensor-cells":
39    const: 1
40
41  "#address-cells":
42    const: 1
43
44  "#size-cells":
45    const: 0
46
47patternProperties:
48  "^([a-z]*-)?sensor(-section)?@[0-9]+$":
49    type: object
50    description:
51      Represent one thermal sensor.
52
53    properties:
54      reg:
55        description: Specify the sensor id.
56        maxItems: 1
57
58      nvmem-cells:
59        maxItems: 1
60        description:
61          Reference to an nvmem node for the calibration data.
62
63      nvmem-cell-names:
64        const: sen_delta_cal
65
66    required:
67      - reg
68      - nvmem-cells
69      - nvmem-cell-names
70
71required:
72  - compatible
73  - reg
74  - clocks
75  - clock-names
76  - nvmem-cells
77  - nvmem-cell-names
78  - "#thermal-sensor-cells"
79  - "#address-cells"
80  - "#size-cells"
81
82examples:
83  - |
84        ap_thm0: thermal@32200000 {
85                compatible = "sprd,ums512-thermal";
86                reg = <0x32200000 0x10000>;
87                clock-names = "enable";
88                clocks = <&aonapb_gate 32>;
89                #thermal-sensor-cells = <1>;
90                nvmem-cells = <&thm0_sign>, <&thm0_ratio>;
91                nvmem-cell-names = "thm_sign_cal", "thm_ratio_cal";
92                #address-cells = <1>;
93                #size-cells = <0>;
94
95                prometheus-sensor@0 {
96                        reg = <0>;
97                        nvmem-cells = <&thm0_sen0>;
98                        nvmem-cell-names = "sen_delta_cal";
99                };
100
101                ank-sensor@1 {
102                        reg = <1>;
103                        nvmem-cells = <&thm0_sen1>;
104                        nvmem-cell-names = "sen_delta_cal";
105                };
106        };
107...
108