]> Gentwo Git Trees - linux/.git/commit
pmdomain: mediatek: Add support for Hardware Voter power domains
authorAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Thu, 25 Sep 2025 14:31:13 +0000 (16:31 +0200)
committerUlf Hansson <ulf.hansson@linaro.org>
Wed, 19 Nov 2025 17:06:50 +0000 (18:06 +0100)
commit88914db077b6c2920b29a3ec76109a2fd3cf8d38
treee42b61ad655ef49975d70d6939099644fe3b50cb
parent72b0a7b34b40cbc877edf1f70520953767fb4583
pmdomain: mediatek: Add support for Hardware Voter power domains

New generation SoCs like MT8196/MT6991 feature a new type of power
domains, managed by a Hardware Voter (HWV) helper (through a SoC
internal fixed-function MCU): this is used to collect votes from
both the AP and the various other remote processors present in the
SoC and transparently power on/off various power domains, avoiding
unpowered access of registers in various internal IPs from all of
the integrated remote processors (or from the AP...!).

Add a new power domain type and differentiate between the old
SCPSYS_MTCMOS_TYPE_DIRECT_CTL - where power domains are controlled
directly by and exclusively from the Application Processor, and
the new SCPSYS_MTCMOS_TYPE_HW_VOTER, where the power domains are
voted through the HWV.

With the two needing different handling, check the power domain
type and assign a different power_{off,on} callback for pm_genpd:
for this specific reason, also move the check for the SCPD cap
MTK_SCPD_KEEP_DEFAULT_OFF after the assignment, and use the
assigned power_on function instead of calling scpsys_power_on()
directly to make that work for both HW_VOTER and DIRECT_CTL.

Reviewed-by: NĂ­colas F. R. A. Prado <nfraprado@collabora.com>
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/pmdomain/mediatek/mtk-pm-domains.c
drivers/pmdomain/mediatek/mtk-pm-domains.h