* [PATCH 0/2] mediatek: pm-domains: Add buck isolation setting support
@ 2023-01-17 3:26 Allen-KH Cheng
2023-01-17 3:26 ` [PATCH 1/2] soc: mediatek: pm-domains: Add buck isolation offset and mask to power domain data Allen-KH Cheng
2023-01-17 3:26 ` [PATCH 2/2] soc: mediatek: pm-domains: Add buck isolation setting in power domain Allen-KH Cheng
0 siblings, 2 replies; 6+ messages in thread
From: Allen-KH Cheng @ 2023-01-17 3:26 UTC (permalink / raw)
To: Matthias Brugger, Enric Balletbo i Serra
Cc: Project_Global_Chrome_Upstream_Group, angelogioacchino.delregno,
linux-arm-kernel, linux-kernel, linux-mediatek, Allen-KH Cheng
We send a independent series from [1].
Add buck isolation setting support for the specific power pm-domains (mtcmos)
in some chipsets, such as ADSP in MT8192 and CAM_VCORE in MT8188.
Changes since [1]:
- Add the conditional for ext_buck_iso_offs
[1] https://patchwork.kernel.org/project/linux-mediatek/list/?series=706103
Allen-KH Cheng (2):
soc: mediatek: pm-domains: Add buck isolation offset and mask to power
domain data
soc: mediatek: pm-domains: Add buck isolation setting in power domain
drivers/soc/mediatek/mtk-pm-domains.c | 8 ++++++++
drivers/soc/mediatek/mtk-pm-domains.h | 5 +++++
2 files changed, 13 insertions(+)
--
2.18.0
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 1/2] soc: mediatek: pm-domains: Add buck isolation offset and mask to power domain data
2023-01-17 3:26 [PATCH 0/2] mediatek: pm-domains: Add buck isolation setting support Allen-KH Cheng
@ 2023-01-17 3:26 ` Allen-KH Cheng
2023-01-19 17:45 ` Matthias Brugger
2023-01-17 3:26 ` [PATCH 2/2] soc: mediatek: pm-domains: Add buck isolation setting in power domain Allen-KH Cheng
1 sibling, 1 reply; 6+ messages in thread
From: Allen-KH Cheng @ 2023-01-17 3:26 UTC (permalink / raw)
To: Matthias Brugger, Enric Balletbo i Serra
Cc: Project_Global_Chrome_Upstream_Group, angelogioacchino.delregno,
linux-arm-kernel, linux-kernel, linux-mediatek, Allen-KH Cheng
Add buck isolation offset and mask to power domain data.
Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
---
drivers/soc/mediatek/mtk-pm-domains.h | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/soc/mediatek/mtk-pm-domains.h b/drivers/soc/mediatek/mtk-pm-domains.h
index 7d3c0c36316c..a5f24c58e35a 100644
--- a/drivers/soc/mediatek/mtk-pm-domains.h
+++ b/drivers/soc/mediatek/mtk-pm-domains.h
@@ -81,6 +81,8 @@ struct scpsys_bus_prot_data {
* @ctl_offs: The offset for main power control register.
* @sram_pdn_bits: The mask for sram power control bits.
* @sram_pdn_ack_bits: The mask for sram power control acked bits.
+ * @ext_buck_iso_offs: The offset for external buck isolation
+ * @ext_buck_iso_mask: The mask for external buck isolation
* @caps: The flag for active wake-up action.
* @bp_infracfg: bus protection for infracfg subsystem
* @bp_smi: bus protection for smi subsystem
@@ -91,6 +93,8 @@ struct scpsys_domain_data {
int ctl_offs;
u32 sram_pdn_bits;
u32 sram_pdn_ack_bits;
+ int ext_buck_iso_offs;
+ u32 ext_buck_iso_mask;
u8 caps;
const struct scpsys_bus_prot_data bp_infracfg[SPM_MAX_BUS_PROT_DATA];
const struct scpsys_bus_prot_data bp_smi[SPM_MAX_BUS_PROT_DATA];
--
2.18.0
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 2/2] soc: mediatek: pm-domains: Add buck isolation setting in power domain
2023-01-17 3:26 [PATCH 0/2] mediatek: pm-domains: Add buck isolation setting support Allen-KH Cheng
2023-01-17 3:26 ` [PATCH 1/2] soc: mediatek: pm-domains: Add buck isolation offset and mask to power domain data Allen-KH Cheng
@ 2023-01-17 3:26 ` Allen-KH Cheng
2023-01-17 8:58 ` AngeloGioacchino Del Regno
2023-01-19 17:46 ` Matthias Brugger
1 sibling, 2 replies; 6+ messages in thread
From: Allen-KH Cheng @ 2023-01-17 3:26 UTC (permalink / raw)
To: Matthias Brugger, Enric Balletbo i Serra
Cc: Project_Global_Chrome_Upstream_Group, angelogioacchino.delregno,
linux-arm-kernel, linux-kernel, linux-mediatek, Allen-KH Cheng
In some chipsets, we need to disable EXT_BUCK_ISO before turning on the
specific power pm-domains (mtcmos), such as ADSP in MT8192 and CAM_VCORE
in MT8188.
Add the MTK_SCPD_EXT_BUCK_ISO flag to control the buck isolation setting
in the mediatek power domain driver.
Fixes: 59b644b01cf4 ("soc: mediatek: Add MediaTek SCPSYS power domains")
Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
---
drivers/soc/mediatek/mtk-pm-domains.c | 8 ++++++++
drivers/soc/mediatek/mtk-pm-domains.h | 1 +
2 files changed, 9 insertions(+)
diff --git a/drivers/soc/mediatek/mtk-pm-domains.c b/drivers/soc/mediatek/mtk-pm-domains.c
index 474b272f9b02..be972e35b26e 100644
--- a/drivers/soc/mediatek/mtk-pm-domains.c
+++ b/drivers/soc/mediatek/mtk-pm-domains.c
@@ -218,6 +218,10 @@ static int scpsys_power_on(struct generic_pm_domain *genpd)
if (ret)
goto err_reg;
+ if (pd->data->ext_buck_iso_offs && MTK_SCPD_CAPS(pd, MTK_SCPD_EXT_BUCK_ISO))
+ regmap_clear_bits(scpsys->base, pd->data->ext_buck_iso_offs,
+ pd->data->ext_buck_iso_mask);
+
/* subsys power on */
regmap_set_bits(scpsys->base, pd->data->ctl_offs, PWR_ON_BIT);
regmap_set_bits(scpsys->base, pd->data->ctl_offs, PWR_ON_2ND_BIT);
@@ -272,6 +276,10 @@ static int scpsys_power_off(struct generic_pm_domain *genpd)
if (ret < 0)
return ret;
+ if (pd->data->ext_buck_iso_offs && MTK_SCPD_CAPS(pd, MTK_SCPD_EXT_BUCK_ISO))
+ regmap_set_bits(scpsys->base, pd->data->ext_buck_iso_offs,
+ pd->data->ext_buck_iso_mask);
+
clk_bulk_disable_unprepare(pd->num_subsys_clks, pd->subsys_clks);
/* subsys power off */
diff --git a/drivers/soc/mediatek/mtk-pm-domains.h b/drivers/soc/mediatek/mtk-pm-domains.h
index a5f24c58e35a..5ec53ee073c4 100644
--- a/drivers/soc/mediatek/mtk-pm-domains.h
+++ b/drivers/soc/mediatek/mtk-pm-domains.h
@@ -10,6 +10,7 @@
#define MTK_SCPD_DOMAIN_SUPPLY BIT(4)
/* can't set MTK_SCPD_KEEP_DEFAULT_OFF at the same time */
#define MTK_SCPD_ALWAYS_ON BIT(5)
+#define MTK_SCPD_EXT_BUCK_ISO BIT(6)
#define MTK_SCPD_CAPS(_scpd, _x) ((_scpd)->data->caps & (_x))
#define SPM_VDE_PWR_CON 0x0210
--
2.18.0
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH 2/2] soc: mediatek: pm-domains: Add buck isolation setting in power domain
2023-01-17 3:26 ` [PATCH 2/2] soc: mediatek: pm-domains: Add buck isolation setting in power domain Allen-KH Cheng
@ 2023-01-17 8:58 ` AngeloGioacchino Del Regno
2023-01-19 17:46 ` Matthias Brugger
1 sibling, 0 replies; 6+ messages in thread
From: AngeloGioacchino Del Regno @ 2023-01-17 8:58 UTC (permalink / raw)
To: Allen-KH Cheng, Matthias Brugger
Cc: Project_Global_Chrome_Upstream_Group, linux-arm-kernel,
linux-kernel, linux-mediatek
Il 17/01/23 04:26, Allen-KH Cheng ha scritto:
> In some chipsets, we need to disable EXT_BUCK_ISO before turning on the
> specific power pm-domains (mtcmos), such as ADSP in MT8192 and CAM_VCORE
> in MT8188.
>
> Add the MTK_SCPD_EXT_BUCK_ISO flag to control the buck isolation setting
> in the mediatek power domain driver.
>
> Fixes: 59b644b01cf4 ("soc: mediatek: Add MediaTek SCPSYS power domains")
> Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 1/2] soc: mediatek: pm-domains: Add buck isolation offset and mask to power domain data
2023-01-17 3:26 ` [PATCH 1/2] soc: mediatek: pm-domains: Add buck isolation offset and mask to power domain data Allen-KH Cheng
@ 2023-01-19 17:45 ` Matthias Brugger
0 siblings, 0 replies; 6+ messages in thread
From: Matthias Brugger @ 2023-01-19 17:45 UTC (permalink / raw)
To: Allen-KH Cheng, Enric Balletbo i Serra
Cc: Project_Global_Chrome_Upstream_Group, angelogioacchino.delregno,
linux-arm-kernel, linux-kernel, linux-mediatek
On 17/01/2023 04:26, Allen-KH Cheng wrote:
> Add buck isolation offset and mask to power domain data.
>
> Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Applied, thanks!
> ---
> drivers/soc/mediatek/mtk-pm-domains.h | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/soc/mediatek/mtk-pm-domains.h b/drivers/soc/mediatek/mtk-pm-domains.h
> index 7d3c0c36316c..a5f24c58e35a 100644
> --- a/drivers/soc/mediatek/mtk-pm-domains.h
> +++ b/drivers/soc/mediatek/mtk-pm-domains.h
> @@ -81,6 +81,8 @@ struct scpsys_bus_prot_data {
> * @ctl_offs: The offset for main power control register.
> * @sram_pdn_bits: The mask for sram power control bits.
> * @sram_pdn_ack_bits: The mask for sram power control acked bits.
> + * @ext_buck_iso_offs: The offset for external buck isolation
> + * @ext_buck_iso_mask: The mask for external buck isolation
> * @caps: The flag for active wake-up action.
> * @bp_infracfg: bus protection for infracfg subsystem
> * @bp_smi: bus protection for smi subsystem
> @@ -91,6 +93,8 @@ struct scpsys_domain_data {
> int ctl_offs;
> u32 sram_pdn_bits;
> u32 sram_pdn_ack_bits;
> + int ext_buck_iso_offs;
> + u32 ext_buck_iso_mask;
> u8 caps;
> const struct scpsys_bus_prot_data bp_infracfg[SPM_MAX_BUS_PROT_DATA];
> const struct scpsys_bus_prot_data bp_smi[SPM_MAX_BUS_PROT_DATA];
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 2/2] soc: mediatek: pm-domains: Add buck isolation setting in power domain
2023-01-17 3:26 ` [PATCH 2/2] soc: mediatek: pm-domains: Add buck isolation setting in power domain Allen-KH Cheng
2023-01-17 8:58 ` AngeloGioacchino Del Regno
@ 2023-01-19 17:46 ` Matthias Brugger
1 sibling, 0 replies; 6+ messages in thread
From: Matthias Brugger @ 2023-01-19 17:46 UTC (permalink / raw)
To: Allen-KH Cheng, Enric Balletbo i Serra
Cc: Project_Global_Chrome_Upstream_Group, angelogioacchino.delregno,
linux-arm-kernel, linux-kernel, linux-mediatek
On 17/01/2023 04:26, Allen-KH Cheng wrote:
> In some chipsets, we need to disable EXT_BUCK_ISO before turning on the
> specific power pm-domains (mtcmos), such as ADSP in MT8192 and CAM_VCORE
> in MT8188.
>
> Add the MTK_SCPD_EXT_BUCK_ISO flag to control the buck isolation setting
> in the mediatek power domain driver.
>
> Fixes: 59b644b01cf4 ("soc: mediatek: Add MediaTek SCPSYS power domains")
From my understanding this patch does not fix anything. It's a feature needed
for new HW not supported by the mentioned commit. I applied the patch but
droppend the Fixes tag. If you do not agree, please explain why we need it.
Regards,
Matthias
> Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
> ---
> drivers/soc/mediatek/mtk-pm-domains.c | 8 ++++++++
> drivers/soc/mediatek/mtk-pm-domains.h | 1 +
> 2 files changed, 9 insertions(+)
>
> diff --git a/drivers/soc/mediatek/mtk-pm-domains.c b/drivers/soc/mediatek/mtk-pm-domains.c
> index 474b272f9b02..be972e35b26e 100644
> --- a/drivers/soc/mediatek/mtk-pm-domains.c
> +++ b/drivers/soc/mediatek/mtk-pm-domains.c
> @@ -218,6 +218,10 @@ static int scpsys_power_on(struct generic_pm_domain *genpd)
> if (ret)
> goto err_reg;
>
> + if (pd->data->ext_buck_iso_offs && MTK_SCPD_CAPS(pd, MTK_SCPD_EXT_BUCK_ISO))
> + regmap_clear_bits(scpsys->base, pd->data->ext_buck_iso_offs,
> + pd->data->ext_buck_iso_mask);
> +
> /* subsys power on */
> regmap_set_bits(scpsys->base, pd->data->ctl_offs, PWR_ON_BIT);
> regmap_set_bits(scpsys->base, pd->data->ctl_offs, PWR_ON_2ND_BIT);
> @@ -272,6 +276,10 @@ static int scpsys_power_off(struct generic_pm_domain *genpd)
> if (ret < 0)
> return ret;
>
> + if (pd->data->ext_buck_iso_offs && MTK_SCPD_CAPS(pd, MTK_SCPD_EXT_BUCK_ISO))
> + regmap_set_bits(scpsys->base, pd->data->ext_buck_iso_offs,
> + pd->data->ext_buck_iso_mask);
> +
> clk_bulk_disable_unprepare(pd->num_subsys_clks, pd->subsys_clks);
>
> /* subsys power off */
> diff --git a/drivers/soc/mediatek/mtk-pm-domains.h b/drivers/soc/mediatek/mtk-pm-domains.h
> index a5f24c58e35a..5ec53ee073c4 100644
> --- a/drivers/soc/mediatek/mtk-pm-domains.h
> +++ b/drivers/soc/mediatek/mtk-pm-domains.h
> @@ -10,6 +10,7 @@
> #define MTK_SCPD_DOMAIN_SUPPLY BIT(4)
> /* can't set MTK_SCPD_KEEP_DEFAULT_OFF at the same time */
> #define MTK_SCPD_ALWAYS_ON BIT(5)
> +#define MTK_SCPD_EXT_BUCK_ISO BIT(6)
> #define MTK_SCPD_CAPS(_scpd, _x) ((_scpd)->data->caps & (_x))
>
> #define SPM_VDE_PWR_CON 0x0210
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2023-01-19 17:47 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-01-17 3:26 [PATCH 0/2] mediatek: pm-domains: Add buck isolation setting support Allen-KH Cheng
2023-01-17 3:26 ` [PATCH 1/2] soc: mediatek: pm-domains: Add buck isolation offset and mask to power domain data Allen-KH Cheng
2023-01-19 17:45 ` Matthias Brugger
2023-01-17 3:26 ` [PATCH 2/2] soc: mediatek: pm-domains: Add buck isolation setting in power domain Allen-KH Cheng
2023-01-17 8:58 ` AngeloGioacchino Del Regno
2023-01-19 17:46 ` Matthias Brugger
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).