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