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

title: MediaTek SoC Low Voltage Thermal Sensor (LVTS)

maintainers:
  - Balsam CHIHI <bchihi@baylibre.com>

description: |
  LVTS is a thermal management architecture composed of three subsystems,
  a Sensing device - Thermal Sensing Micro Circuit Unit (TSMCU),
  a Converter - Low Voltage Thermal Sensor converter (LVTS), and
  a Digital controller (LVTS_CTRL).

properties:
  compatible:
    enum:
      - mediatek,mt7988-lvts-ap
      - mediatek,mt8186-lvts
      - mediatek,mt8188-lvts-ap
      - mediatek,mt8188-lvts-mcu
      - mediatek,mt8192-lvts-ap
      - mediatek,mt8192-lvts-mcu
      - mediatek,mt8195-lvts-ap
      - mediatek,mt8195-lvts-mcu

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    maxItems: 1

  resets:
    maxItems: 1
    description: LVTS reset for clearing temporary data on AP/MCU.

  nvmem-cells:
    minItems: 1
    items:
      - description: Calibration eFuse data 1 for LVTS
      - description: Calibration eFuse data 2 for LVTS

  nvmem-cell-names:
    minItems: 1
    items:
      - const: lvts-calib-data-1
      - const: lvts-calib-data-2

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

allOf:
  - $ref: thermal-sensor.yaml#

  - if:
      properties:
        compatible:
          contains:
            enum:
              - mediatek,mt8188-lvts-ap
              - mediatek,mt8188-lvts-mcu
              - mediatek,mt8192-lvts-ap
              - mediatek,mt8192-lvts-mcu
    then:
      properties:
        nvmem-cells:
          maxItems: 1

        nvmem-cell-names:
          maxItems: 1

  - if:
      properties:
        compatible:
          contains:
            enum:
              - mediatek,mt8186-lvts
              - mediatek,mt8195-lvts-ap
              - mediatek,mt8195-lvts-mcu
    then:
      properties:
        nvmem-cells:
          minItems: 2

        nvmem-cell-names:
          minItems: 2

required:
  - compatible
  - reg
  - interrupts
  - clocks
  - resets
  - nvmem-cells
  - nvmem-cell-names
  - "#thermal-sensor-cells"

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    #include <dt-bindings/clock/mt8195-clk.h>
    #include <dt-bindings/reset/mt8195-resets.h>
    #include <dt-bindings/thermal/mediatek,lvts-thermal.h>

    soc {
      #address-cells = <2>;
      #size-cells = <2>;

      lvts_mcu: thermal-sensor@11278000 {
        compatible = "mediatek,mt8195-lvts-mcu";
        reg = <0 0x11278000 0 0x1000>;
        interrupts = <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH 0>;
        clocks = <&infracfg_ao CLK_INFRA_AO_THERM>;
        resets = <&infracfg_ao MT8195_INFRA_RST4_THERM_CTRL_MCU_SWRST>;
        nvmem-cells = <&lvts_efuse_data1 &lvts_efuse_data2>;
        nvmem-cell-names = "lvts-calib-data-1", "lvts-calib-data-2";
        #thermal-sensor-cells = <1>;
      };
    };

    thermal_zones: thermal-zones {
      cpu0-thermal {
        polling-delay = <1000>;
        polling-delay-passive = <250>;
        thermal-sensors = <&lvts_mcu MT8195_MCU_LITTLE_CPU0>;

        trips {
          cpu0_alert: trip-alert {
            temperature = <85000>;
            hysteresis = <2000>;
            type = "passive";
          };

          cpu0_crit: trip-crit {
            temperature = <100000>;
            hysteresis = <2000>;
            type = "critical";
          };
        };
      };
    };
