thermal-sensor.yaml 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. # SPDX-License-Identifier: (GPL-2.0)
  2. # Copyright 2020 Linaro Ltd.
  3. %YAML 1.2
  4. ---
  5. $id: http://devicetree.org/schemas/thermal/thermal-sensor.yaml#
  6. $schema: http://devicetree.org/meta-schemas/core.yaml#
  7. title: Thermal sensor
  8. maintainers:
  9. - Amit Kucheria <amitk@kernel.org>
  10. description: |
  11. Thermal management is achieved in devicetree by describing the sensor hardware
  12. and the software abstraction of thermal zones required to take appropriate
  13. action to mitigate thermal overloads.
  14. The following node types are used to completely describe a thermal management
  15. system in devicetree:
  16. - thermal-sensor: device that measures temperature, has SoC-specific bindings
  17. - cooling-device: device used to dissipate heat either passively or actively
  18. - thermal-zones: a container of the following node types used to describe all
  19. thermal data for the platform
  20. This binding describes the thermal-sensor.
  21. Thermal sensor devices provide temperature sensing capabilities on thermal
  22. zones. Typical devices are I2C ADC converters and bandgaps. Thermal sensor
  23. devices may control one or more internal sensors.
  24. properties:
  25. "#thermal-sensor-cells":
  26. description:
  27. Used to uniquely identify a thermal sensor instance within an IC. Will be
  28. 0 on sensor nodes with only a single sensor and at least 1 on nodes
  29. containing several internal sensors.
  30. enum: [0, 1]
  31. required:
  32. - "#thermal-sensor-cells"
  33. additionalProperties: true
  34. examples:
  35. - |
  36. #include <dt-bindings/interrupt-controller/arm-gic.h>
  37. // Example 1: SDM845 TSENS
  38. soc: soc {
  39. #address-cells = <2>;
  40. #size-cells = <2>;
  41. /* ... */
  42. tsens0: thermal-sensor@c263000 {
  43. compatible = "qcom,sdm845-tsens", "qcom,tsens-v2";
  44. reg = <0 0x0c263000 0 0x1ff>, /* TM */
  45. <0 0x0c222000 0 0x1ff>; /* SROT */
  46. #qcom,sensors = <13>;
  47. interrupts = <GIC_SPI 506 IRQ_TYPE_LEVEL_HIGH>,
  48. <GIC_SPI 508 IRQ_TYPE_LEVEL_HIGH>;
  49. interrupt-names = "uplow", "critical";
  50. #thermal-sensor-cells = <1>;
  51. };
  52. tsens1: thermal-sensor@c265000 {
  53. compatible = "qcom,sdm845-tsens", "qcom,tsens-v2";
  54. reg = <0 0x0c265000 0 0x1ff>, /* TM */
  55. <0 0x0c223000 0 0x1ff>; /* SROT */
  56. #qcom,sensors = <8>;
  57. interrupts = <GIC_SPI 507 IRQ_TYPE_LEVEL_HIGH>,
  58. <GIC_SPI 509 IRQ_TYPE_LEVEL_HIGH>;
  59. interrupt-names = "uplow", "critical";
  60. #thermal-sensor-cells = <1>;
  61. };
  62. };
  63. ...