* [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
* 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
* [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 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).