On 6/2/26 10:49 PM, Alexey Klimov wrote:
> On Tue Jun 2, 2026 at 6:00 PM BST, Tudor Ambarus wrote:
>> Add driver for the Thermal Management Unit (TMU) managed via the Alive
>> Clock and Power Manager (ACPM), found on Samsung Exynos SoCs such as
>> Google GS101 (and Exynos850, autov920, etc.).
>>
>> The TMU on utilizes a hybrid management model shared between the
>> Application Processor (AP) and the ACPM 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 <[email protected]>
>> Acked-by: Krzysztof Kozlowski <[email protected]>
>> ---
>> drivers/thermal/samsung/Kconfig | 19 ++
>> drivers/thermal/samsung/Makefile | 2 +
>> drivers/thermal/samsung/acpm-tmu.c | 618
>> +++++++++++++++++++++++++++++++++++++
>> 3 files changed, 639 insertions(+)
>>
>> diff --git a/drivers/thermal/samsung/Kconfig
>> b/drivers/thermal/samsung/Kconfig
>> index f4eff5a41a84..383ae3f56cbb 100644
>> --- a/drivers/thermal/samsung/Kconfig
>> +++ b/drivers/thermal/samsung/Kconfig
>> @@ -9,3 +9,22 @@ 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 HAS_IOMEM
>> + depends on EXYNOS_ACPM_PROTOCOL || (COMPILE_TEST &&
>> !EXYNOS_ACPM_PROTOCOL)
I forgot to drop "|| (COMPILE_TEST && !EXYNOS_ACPM_PROTOCOL)", ACPM is NOT
optional for this driver. I will comply this way with Arnd's solution from:
https://lore.kernel.org/linux-samsung-soc/178006367096.55906.16678510397337205828.b4-ty@b4/T/#t
>> + default ARCH_EXYNOS
>> + help
>> + Support for the Thermal Management Unit (TMU) on Samsung Exynos SoCs
>> + (such as Google GS101 and Exynos850).
>
> This driver doesn't support Exynos850. There is no initialisation sequence
> and etc, moreover the next section is also not entirely correct for Exynos850.
> Not sure why it is mentioned here in such way.
> (Not even mentioning that ACPM TMU part is not aligned for Exynos850)
>
Okay, I'll drop the reference to e850.
Cheers,
ta