[PATCH v2 4/7] thermal: samsung: Add support for GS101 TMU

Tudor Ambarus tudor.ambarus at linaro.org
Mon Mar 2 01:16:32 PST 2026



On 3/1/26 5:33 AM, Alexey Klimov wrote:
> On Mon Jan 19, 2026 at 12:08 PM GMT, Tudor Ambarus wrote:
>> Add the thermal driver for the Google GS101 SoC.
> 
> Is this driver for GS101 platforms only or for all Exynos-based
> platforms where we have deal with thermal unit via ACPM?

The driver can be extended for other Samsung Exynos SoCs.

> 
>> The GS101 TMU utilizes a hybrid management model shared between the
>> Application Processor (AP) and the ACPM (Alive Clock and Power Manager)
>> firmware. The driver maintains direct memory-mapped access to the TMU
>> interrupt pending registers to identify thermal events, while delegating
>> functional tasks - such as sensor initialization, threshold configuration,
>> and temperature acquisition - to the ACPM firmware via the ACPM IPC
>> protocol.
>>
>> Signed-off-by: Tudor Ambarus <tudor.ambarus at linaro.org>
>> ---
>>  drivers/thermal/samsung/Kconfig    |  16 +
>>  drivers/thermal/samsung/Makefile   |   2 +
>>  drivers/thermal/samsung/acpm-tmu.c | 643 +++++++++++++++++++++++++++++++++++++
>>  3 files changed, 661 insertions(+)
>>
>> diff --git a/drivers/thermal/samsung/Kconfig b/drivers/thermal/samsung/Kconfig
>> index f4eff5a41a84ce02b12abb85d6a0f8818031d0dc..5679dfa85f4079c7d40317ac231bd6a1af93c7e7 100644
>> --- a/drivers/thermal/samsung/Kconfig
>> +++ b/drivers/thermal/samsung/Kconfig
>> @@ -9,3 +9,19 @@ config EXYNOS_THERMAL
>>  	  the TMU, reports temperature and handles cooling action if defined.
>>  	  This driver uses the Exynos core thermal APIs and TMU configuration
>>  	  data from the supported SoCs.
>> +
>> +config EXYNOS_ACPM_THERMAL
>> +	tristate "Exynos ACPM thermal management unit driver"
>> +	depends on THERMAL_OF
>> +	depends on EXYNOS_ACPM_PROTOCOL || (COMPILE_TEST && !EXYNOS_ACPM_PROTOCOL)
>> +	help
>> +	  Support for the Thermal Management Unit (TMU) on Google GS101 SoC.
>> +
>> +	  The TMU on GS101 is managed through a hybrid architecture. This driver
>> +	  handles direct register access for thermal interrupt status monitoring
>> +	  and communicates with the Alive Clock and Power Manager (ACPM)
>> +	  firmware via the ACPM IPC protocol for functional sensor control and
>> +	  configuration.
>> +
>> +	  Select this if you want to monitor device temperature and enable
>> +	  thermal mitigation on GS101 based devices.
> 
> I don't understand this. What this driver actually supports/implements?
> Dealing with TMU over ACPM firmware is not exclusive to Google GS101 SoC,

right

> some other Exynos-based systems has this as well. However, it names
> the config option EXYNOS_ACPM_THERMAL but a lot of other things say that
> it is only for GS101, isn't it?

right, because I'm currently adding support just for GS101. I wanted to be
accurate and thought that when/if other SoCs will be supported by this
driver, we can generalize the description.

> Does it implement the generic layer dealing with TMU via ACPM (hence the name)
> and adds specific things to support gs101?

Right. I expect the sensor mask may differ from other Samsung Exynos SoCs.
I remembered I compared the register set with e850, minor differences there.

> 
> Should it be something like this (feel free to correct):
> Support for the Thermal Management Unit (TMU) exported via ACPM.
> 
> This driver handles direct register access for thermal interrupt
> status monitoring and communicates with the Alive Clock and Power
> Manager (ACPM) firmware via the ACPM IPC protocol for functional
> sensor control and configuration.
> 
> Select this if you want to monitor device temperature and enable
> thermal mitigation on Exynos-based devices that implement dealing
> with TMU via ACPM, for instance, GS101-based devices.
> 

I can generalize the description in v2.

Thanks,
ta




More information about the linux-arm-kernel mailing list