drivers/clk/samsung/clk-acpm.c | 8 +- drivers/firmware/samsung/Makefile | 1 + drivers/firmware/samsung/exynos-acpm-dvfs.c | 20 +- drivers/firmware/samsung/exynos-acpm-pmic.c | 20 +- drivers/firmware/samsung/exynos-acpm-tmu.c | 239 +++++++++++++++++++++ drivers/firmware/samsung/exynos-acpm-tmu.h | 28 +++ drivers/firmware/samsung/exynos-acpm.c | 113 +++++++--- drivers/firmware/samsung/exynos-acpm.h | 2 + drivers/mfd/sec-acpm.c | 6 +- .../linux/firmware/samsung/exynos-acpm-protocol.h | 32 ++- 10 files changed, 397 insertions(+), 72 deletions(-)
Hi all,
This series introduces protocol support for the Exynos
Thermal Management Unit (TMU) to the ACPM driver, alongside several
cleanups.
Dependencies
============
Krzysztof, these patches together with the acpm fixes from your `fixes`
branch will be needed by the thermal maintainers. I'm going to send the
ACPM TMU (thermal) driver for review. In case they'll take it for the
next release, we'll need an immutable tag with the acpm fixes, cleanup
and thermal helpers. Thanks!
Other notes
===========
The MFD and clk maintainers are included because of the cleanup patches
(3 and 4). ACPM updated some structures that the mfd and clk client
drivers are using, so these patches shall naturally go via the Samsung
SoC tree.
Note that when compiling with W=1 one will see the following kdoc
false-positive warning:
CC [M] drivers/firmware/samsung/exynos-acpm.o
Warning: drivers/firmware/samsung/exynos-acpm.c:118 struct member '__counted_by_ptr(cmdcnt' not described in 'acpm_rx_data'
Warning: linux/drivers/firmware/samsung/exynos-acpm.c:118 struct member '__counted_by_ptr(cmdcnt' not described in 'acpm_rx_data'
I proposed the following patch to fix it:
Link: https://lore.kernel.org/all/20260506-kdoc-__counted_by_ptr-v1-1-70763486871f@linaro.org/
Cheers,
ta
---
Changes in v2:
- collect tags
- resend as sashiko couldn't apply previous version. We want
sashiko's review feedback
- Link to v1: https://lore.kernel.org/r/20260506-acpm-tmu-helpers-v1-0-a9cd5daf8355@linaro.org
Changes since 20260113-acpm-tmu-27e21f0e2c3b:v4:
- reword commit message of first patch emphasizing there's no
functional change (Krzysztof)
- remove static keyword from `static void acpm_set_xfer`
- replace for loop with memcpy in acpm_tmu_set_threshold()
- update kernel doc on devm_acpm_get_by_phandle()
Signed-off-by: Tudor Ambarus <tudor.ambarus@linaro.org>
---
Tudor Ambarus (6):
firmware: samsung: acpm: Consolidate transfer initialization helper
firmware: samsung: acpm: Annotate rx_data->cmd with __counted_by_ptr
firmware: samsung: acpm: Drop redundant _ops suffix in acpm_ops members
firmware: samsung: acpm: Make acpm_ops const and access via pointer
firmware: samsung: acpm: Add TMU protocol support
firmware: samsung: acpm: Add devm_acpm_get_by_phandle helper
drivers/clk/samsung/clk-acpm.c | 8 +-
drivers/firmware/samsung/Makefile | 1 +
drivers/firmware/samsung/exynos-acpm-dvfs.c | 20 +-
drivers/firmware/samsung/exynos-acpm-pmic.c | 20 +-
drivers/firmware/samsung/exynos-acpm-tmu.c | 239 +++++++++++++++++++++
drivers/firmware/samsung/exynos-acpm-tmu.h | 28 +++
drivers/firmware/samsung/exynos-acpm.c | 113 +++++++---
drivers/firmware/samsung/exynos-acpm.h | 2 +
drivers/mfd/sec-acpm.c | 6 +-
.../linux/firmware/samsung/exynos-acpm-protocol.h | 32 ++-
10 files changed, 397 insertions(+), 72 deletions(-)
---
base-commit: 5e9b7d093f3f77cb0af4409559e3d139babfb443
change-id: 20260505-acpm-tmu-helpers-4c5af0e2f07c
prerequisite-change-id: 20260423-acpm-fixes-sashiko-reports-ae28b6ed5581:v5
prerequisite-patch-id: 18d89d0e2bc0efe2cb366746ac4db36f4682f061
prerequisite-patch-id: e877f865862ee94f5750b877b5fad863d8acd7c8
prerequisite-patch-id: b5da16b5c6d6731ea519ed68302fd52ce57c7ffa
prerequisite-patch-id: df5b1d9df4c8894afaff645c9eb84aa4e3daeeee
prerequisite-patch-id: be74a55583acb36dedca3e118f49633172979617
prerequisite-patch-id: 31ebc7bd806d4d466c256049f32e3270e2caeeb6
prerequisite-patch-id: 7ea0832fcf76e4f40e18b74083904e7e37e1addf
Best regards,
--
Tudor Ambarus <tudor.ambarus@linaro.org>
On Fri, 15 May 2026 09:32:24 +0000, Tudor Ambarus wrote:
> This series introduces protocol support for the Exynos
> Thermal Management Unit (TMU) to the ACPM driver, alongside several
> cleanups.
>
> Dependencies
> ============
> Krzysztof, these patches together with the acpm fixes from your `fixes`
> branch will be needed by the thermal maintainers. I'm going to send the
> ACPM TMU (thermal) driver for review. In case they'll take it for the
> next release, we'll need an immutable tag with the acpm fixes, cleanup
> and thermal helpers. Thanks!
>
> [...]
Applied, thanks!
[1/6] firmware: samsung: acpm: Consolidate transfer initialization helper
https://git.kernel.org/krzk/linux/c/43d3733b7ffd82b2bfeda69befa2a179335dfe6c
[2/6] firmware: samsung: acpm: Annotate rx_data->cmd with __counted_by_ptr
https://git.kernel.org/krzk/linux/c/7b20fd06f783c1e901d34305c68df16212cdf669
[3/6] firmware: samsung: acpm: Drop redundant _ops suffix in acpm_ops members
https://git.kernel.org/krzk/linux/c/ef1109e4b6120a52be1ea66d486d6744d0c5ac47
[4/6] firmware: samsung: acpm: Make acpm_ops const and access via pointer
https://git.kernel.org/krzk/linux/c/e694e19bf7db26ee324ff6bb450cc523592f5bee
[5/6] firmware: samsung: acpm: Add TMU protocol support
https://git.kernel.org/krzk/linux/c/f6af402de525d0848fc4a50f25ff01f56fc68d98
[6/6] firmware: samsung: acpm: Add devm_acpm_get_by_phandle helper
https://git.kernel.org/krzk/linux/c/8ad2c29d53e69df5cc1c1d00513c6a0f96d2d452
Best regards,
--
Krzysztof Kozlowski <krzk@kernel.org>
On Sun May 24, 2026 at 8:40 PM BST, Krzysztof Kozlowski wrote: > > On Fri, 15 May 2026 09:32:24 +0000, Tudor Ambarus wrote: >> This series introduces protocol support for the Exynos >> Thermal Management Unit (TMU) to the ACPM driver, alongside several >> cleanups. >> >> Dependencies >> ============ >> Krzysztof, these patches together with the acpm fixes from your `fixes` >> branch will be needed by the thermal maintainers. I'm going to send the >> ACPM TMU (thermal) driver for review. In case they'll take it for the >> next release, we'll need an immutable tag with the acpm fixes, cleanup >> and thermal helpers. Thanks! >> >> [...] > > Applied, thanks! > > [1/6] firmware: samsung: acpm: Consolidate transfer initialization helper > https://git.kernel.org/krzk/linux/c/43d3733b7ffd82b2bfeda69befa2a179335dfe6c > [2/6] firmware: samsung: acpm: Annotate rx_data->cmd with __counted_by_ptr > https://git.kernel.org/krzk/linux/c/7b20fd06f783c1e901d34305c68df16212cdf669 > [3/6] firmware: samsung: acpm: Drop redundant _ops suffix in acpm_ops members > https://git.kernel.org/krzk/linux/c/ef1109e4b6120a52be1ea66d486d6744d0c5ac47 > [4/6] firmware: samsung: acpm: Make acpm_ops const and access via pointer > https://git.kernel.org/krzk/linux/c/e694e19bf7db26ee324ff6bb450cc523592f5bee > [5/6] firmware: samsung: acpm: Add TMU protocol support > https://git.kernel.org/krzk/linux/c/f6af402de525d0848fc4a50f25ff01f56fc68d98 That commit contained the questionable error conversion which works only for gs101 -- acpm_tmu_to_linux_err() hides some sensible errors into -EIO. There were on-going discussion on maillist. Now, it is needed to ignore that or generalise that or split it to have different SoCs if needed. Some re-work will be needed. BR, Alexey.
On 25/05/2026 00:26, Alexey Klimov wrote: > On Sun May 24, 2026 at 8:40 PM BST, Krzysztof Kozlowski wrote: >> >> On Fri, 15 May 2026 09:32:24 +0000, Tudor Ambarus wrote: >>> This series introduces protocol support for the Exynos >>> Thermal Management Unit (TMU) to the ACPM driver, alongside several >>> cleanups. >>> >>> Dependencies >>> ============ >>> Krzysztof, these patches together with the acpm fixes from your `fixes` >>> branch will be needed by the thermal maintainers. I'm going to send the >>> ACPM TMU (thermal) driver for review. In case they'll take it for the >>> next release, we'll need an immutable tag with the acpm fixes, cleanup >>> and thermal helpers. Thanks! >>> >>> [...] >> >> Applied, thanks! >> >> [1/6] firmware: samsung: acpm: Consolidate transfer initialization helper >> https://git.kernel.org/krzk/linux/c/43d3733b7ffd82b2bfeda69befa2a179335dfe6c >> [2/6] firmware: samsung: acpm: Annotate rx_data->cmd with __counted_by_ptr >> https://git.kernel.org/krzk/linux/c/7b20fd06f783c1e901d34305c68df16212cdf669 >> [3/6] firmware: samsung: acpm: Drop redundant _ops suffix in acpm_ops members >> https://git.kernel.org/krzk/linux/c/ef1109e4b6120a52be1ea66d486d6744d0c5ac47 >> [4/6] firmware: samsung: acpm: Make acpm_ops const and access via pointer >> https://git.kernel.org/krzk/linux/c/e694e19bf7db26ee324ff6bb450cc523592f5bee >> [5/6] firmware: samsung: acpm: Add TMU protocol support >> https://git.kernel.org/krzk/linux/c/f6af402de525d0848fc4a50f25ff01f56fc68d98 > > That commit contained the questionable error conversion which works > only for gs101 -- acpm_tmu_to_linux_err() hides some sensible errors into -EIO. > There were on-going discussion on maillist. > > Now, it is needed to ignore that or generalise that or split it to have > different SoCs if needed. Some re-work will be needed. That patch was looking correct in its scope. It solved one particular case (GS101) without stopping anyone to grow this to support other cases (Exynos850 etc)., so it is in kernel spirit to take such things. Solving these other cases is simply not necessary now. It's also not blocked, so just build on top and improve that code to match both use cases, when you have exynos850 consumer of this. Best regards, Krzysztof
Hi, Krzysztof, On 5/15/26 12:32 PM, Tudor Ambarus wrote: > Changes in v2: > - collect tags > - resend as sashiko couldn't apply previous version. We want > sashiko's review feedback That didn't work, sashiko still can't apply: https://sashiko.dev/#/patchset/20260506-acpm-tmu-helpers-v1-0-a9cd5daf8355%40linaro.org cut > --- > base-commit: 5e9b7d093f3f77cb0af4409559e3d139babfb443 above is v7.1-rc1 (signed tag) > change-id: 20260505-acpm-tmu-helpers-4c5af0e2f07c > prerequisite-change-id: 20260423-acpm-fixes-sashiko-reports-ae28b6ed5581:v5 > prerequisite-patch-id: 18d89d0e2bc0efe2cb366746ac4db36f4682f061 > prerequisite-patch-id: e877f865862ee94f5750b877b5fad863d8acd7c8 > prerequisite-patch-id: b5da16b5c6d6731ea519ed68302fd52ce57c7ffa > prerequisite-patch-id: df5b1d9df4c8894afaff645c9eb84aa4e3daeeee > prerequisite-patch-id: be74a55583acb36dedca3e118f49633172979617 > prerequisite-patch-id: 31ebc7bd806d4d466c256049f32e3270e2caeeb6 > prerequisite-patch-id: 7ea0832fcf76e4f40e18b74083904e7e37e1addf While I see I forgot to update the dependencies, I don't think they matter to sashiko. If sashiko used v7.1-rc1 and the prerequisite patches it would correctly apply the set. If one goes in the Sashiko link above and expand the `Baseline` (show details), will see: 5e9b7d093f3f77cb0af4409559e3d139babfb443 (5e9b7d093f3f77cb0af4409559e3d139babfb443) Failed View Log ^ this is v7.1-rc1 (signed tag) krzk/HEAD (254f49634ee16a731174d2ae34bc50bd5f45e731) Failed View Log ^ this is krzk/HEAD -> krzk/master -> v7.1-rc1 Shall your HEAD point to the krzk/for-next branch? Happy to resubmit the set. Thanks, ta
On 5/15/26 2:44 PM, Tudor Ambarus wrote: > Hi, Krzysztof, > > On 5/15/26 12:32 PM, Tudor Ambarus wrote: >> Changes in v2: >> - collect tags >> - resend as sashiko couldn't apply previous version. We want >> sashiko's review feedback > > That didn't work, sashiko still can't apply: > https://sashiko.dev/#/patchset/20260506-acpm-tmu-helpers-v1-0-a9cd5daf8355%40linaro.org the correct link is https://sashiko.dev/#/patchset/20260515-acpm-tmu-helpers-v2-0-8ca011d5a965%40linaro.org the description bellow still applies. > > cut > >> --- >> base-commit: 5e9b7d093f3f77cb0af4409559e3d139babfb443 > above is v7.1-rc1 (signed tag) > >> change-id: 20260505-acpm-tmu-helpers-4c5af0e2f07c >> prerequisite-change-id: 20260423-acpm-fixes-sashiko-reports-ae28b6ed5581:v5 >> prerequisite-patch-id: 18d89d0e2bc0efe2cb366746ac4db36f4682f061 >> prerequisite-patch-id: e877f865862ee94f5750b877b5fad863d8acd7c8 >> prerequisite-patch-id: b5da16b5c6d6731ea519ed68302fd52ce57c7ffa >> prerequisite-patch-id: df5b1d9df4c8894afaff645c9eb84aa4e3daeeee >> prerequisite-patch-id: be74a55583acb36dedca3e118f49633172979617 >> prerequisite-patch-id: 31ebc7bd806d4d466c256049f32e3270e2caeeb6 >> prerequisite-patch-id: 7ea0832fcf76e4f40e18b74083904e7e37e1addf > > While I see I forgot to update the dependencies, I don't think they > matter to sashiko. If sashiko used v7.1-rc1 and the prerequisite > patches it would correctly apply the set. > > If one goes in the Sashiko link above and expand the `Baseline` > (show details), will see: > > 5e9b7d093f3f77cb0af4409559e3d139babfb443 (5e9b7d093f3f77cb0af4409559e3d139babfb443) Failed View Log > ^ this is v7.1-rc1 (signed tag) > > krzk/HEAD (254f49634ee16a731174d2ae34bc50bd5f45e731) Failed View Log > ^ this is krzk/HEAD -> krzk/master -> v7.1-rc1 > > Shall your HEAD point to the krzk/for-next branch? Happy to resubmit > the set. > > Thanks, > ta
© 2016 - 2026 Red Hat, Inc.