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