# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/thermal/mediatek-thermal-lvts.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Mediatek SoC LVTS thermal controller (DTS) binding

maintainers:
  - Yu-Chia Chang <ethan.chang@mediatek.com>
  - Michael Kao <michael.kao@mediatek.com>

properties:
  compatible:
    const: mediatek,mt6873-lvts

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    maxItems: 1

  clock-names:
    items:
      - const: lvts_clk

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

required:
  - "#thermal-sensor-cells"
  - compatible
  - reg
  - interrupts
  - clocks
  - clock-names

additionalProperties: false

examples:
  - |
    #include <dt-bindings/thermal/thermal.h>
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    #include <dt-bindings/clock/mt8192-clk.h>
    dts: lvts@1100b000 {
        compatible = "mediatek,mt6873-lvts";
        reg = <0x1100b000 0x1000>;
        clocks = <&infracfg CLK_INFRA_THERM>;
        clock-names = "lvts_clk";
        #thermal-sensor-cells = <0>;
        interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>;
    };

    thermal-zones {
        cpu_thermal: cpu-thermal {
            polling-delay-passive = <0>;
            polling-delay = <0>;

            thermal-sensors = <&dts>;
            trips {
                cpu_alert1: cpu-alert1 {
                    temperature = <85000>;
                    hysteresis = <0>;
                    type = "passive";
                };

                cpu_crit: cpu-crit {
                    temperature = <120000>;
                    hysteresis = <0>;
                    type = "critical";
                };
            };

            cooling-maps {
            };
        };
    };
...
