# 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

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";
          };
        };
      };
    };
