Commit f5f633b1 authored by Balsam CHIHI's avatar Balsam CHIHI Committed by Rafael J. Wysocki
Browse files

thermal/drivers/mediatek: Add the Low Voltage Thermal Sensor driver



The Low Voltage Thermal Sensor (LVTS) is a multiple sensors, multi
controllers contained in a thermal domain.

A thermal domains can be the MCU or the AP.

Each thermal domains contain up to seven controllers, each thermal
controller handle up to four thermal sensors.

The LVTS has two Finite State Machines (FSM), one to handle the
functionin temperatures range like hot or cold temperature and another
one to handle monitoring trip point. The FSM notifies via interrupts
when a trip point is crossed.

The interrupt is managed at the thermal controller level, so when an
interrupt occurs, the driver has to find out which sensor triggered
such an interrupt.

The sampling of the thermal can be filtered or immediate. For the
former, the LVTS measures several points and applies a low pass
filter.

Signed-off-by: default avatarBalsam CHIHI <bchihi@baylibre.com>
Reviewed-by: default avatarAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>

On MT8195 Tomato Chromebook:

Tested-by: default avatarAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20230209105628.50294-5-bchihi@baylibre.com


Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent 498e2f7a
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -18,4 +18,20 @@ config MTK_SOC_THERMAL
	  This driver configures thermal controllers to collect
	  temperature via AUXADC interface.

config MTK_LVTS_THERMAL
        tristate "LVTS Thermal Driver for MediaTek SoCs"
        depends on HAS_IOMEM
        help
          Enable this option if you want to get SoC temperature
          information for supported MediaTek platforms.
          This driver configures LVTS (Low Voltage Thermal Sensor)
          thermal controllers to collect temperatures via ASIF
          (Analog Serial Interface).

config MTK_LVTS_THERMAL_DEBUGFS
       bool "LVTS thermal debugfs"
       depends on MTK_LVTS_THERMAL && DEBUG_FS
       help
         Enable this option to debug the internals of the device driver.

endif
+1 −0
Original line number Diff line number Diff line
obj-$(CONFIG_MTK_SOC_THERMAL)	+= auxadc_thermal.o
obj-$(CONFIG_MTK_LVTS_THERMAL)	+= lvts_thermal.o
+1224 −0

File added.

Preview size limit exceeded, changes collapsed.