Commit b1d4c60c authored by Johnson Wang's avatar Johnson Wang Committed by Ulf Hansson

pmdomain: mediatek: Add MT8188 buck isolation setting

Add buck isolation setting to ADSP_AO, CAM_VCORE and IMG_VCORE power
domains in MT8188 for proper buck isolation control in power domain
on/off.
Signed-off-by: default avatarJohnson Wang <johnson.wang@mediatek.com>
Signed-off-by: default avatarFei Shao <fshao@chromium.org>
Reviewed-by: default avatarAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20240329044142.3095193-1-fshao@chromium.orgSigned-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
parent 07623f57
...@@ -175,6 +175,8 @@ static const struct scpsys_domain_data scpsys_domain_data_mt8188[] = { ...@@ -175,6 +175,8 @@ static const struct scpsys_domain_data scpsys_domain_data_mt8188[] = {
.ctl_offs = 0x35C, .ctl_offs = 0x35C,
.pwr_sta_offs = 0x16C, .pwr_sta_offs = 0x16C,
.pwr_sta2nd_offs = 0x170, .pwr_sta2nd_offs = 0x170,
.ext_buck_iso_offs = 0x3EC,
.ext_buck_iso_mask = BIT(10),
.bp_cfg = { .bp_cfg = {
BUS_PROT_WR(INFRA, BUS_PROT_WR(INFRA,
MT8188_TOP_AXI_PROT_EN_2_ADSP_AO_STEP1, MT8188_TOP_AXI_PROT_EN_2_ADSP_AO_STEP1,
...@@ -187,7 +189,7 @@ static const struct scpsys_domain_data scpsys_domain_data_mt8188[] = { ...@@ -187,7 +189,7 @@ static const struct scpsys_domain_data scpsys_domain_data_mt8188[] = {
MT8188_TOP_AXI_PROT_EN_2_CLR, MT8188_TOP_AXI_PROT_EN_2_CLR,
MT8188_TOP_AXI_PROT_EN_2_STA), MT8188_TOP_AXI_PROT_EN_2_STA),
}, },
.caps = MTK_SCPD_ALWAYS_ON, .caps = MTK_SCPD_ALWAYS_ON | MTK_SCPD_EXT_BUCK_ISO,
}, },
[MT8188_POWER_DOMAIN_ADSP_INFRA] = { [MT8188_POWER_DOMAIN_ADSP_INFRA] = {
.name = "adsp_infra", .name = "adsp_infra",
...@@ -524,6 +526,8 @@ static const struct scpsys_domain_data scpsys_domain_data_mt8188[] = { ...@@ -524,6 +526,8 @@ static const struct scpsys_domain_data scpsys_domain_data_mt8188[] = {
.ctl_offs = 0x3A4, .ctl_offs = 0x3A4,
.pwr_sta_offs = 0x16C, .pwr_sta_offs = 0x16C,
.pwr_sta2nd_offs = 0x170, .pwr_sta2nd_offs = 0x170,
.ext_buck_iso_offs = 0x3EC,
.ext_buck_iso_mask = BIT(12),
.bp_cfg = { .bp_cfg = {
BUS_PROT_WR(INFRA, BUS_PROT_WR(INFRA,
MT8188_TOP_AXI_PROT_EN_MM_IMG_VCORE_STEP1, MT8188_TOP_AXI_PROT_EN_MM_IMG_VCORE_STEP1,
...@@ -541,7 +545,8 @@ static const struct scpsys_domain_data scpsys_domain_data_mt8188[] = { ...@@ -541,7 +545,8 @@ static const struct scpsys_domain_data scpsys_domain_data_mt8188[] = {
MT8188_TOP_AXI_PROT_EN_MM_2_CLR, MT8188_TOP_AXI_PROT_EN_MM_2_CLR,
MT8188_TOP_AXI_PROT_EN_MM_2_STA), MT8188_TOP_AXI_PROT_EN_MM_2_STA),
}, },
.caps = MTK_SCPD_KEEP_DEFAULT_OFF | MTK_SCPD_DOMAIN_SUPPLY, .caps = MTK_SCPD_KEEP_DEFAULT_OFF | MTK_SCPD_DOMAIN_SUPPLY |
MTK_SCPD_EXT_BUCK_ISO,
}, },
[MT8188_POWER_DOMAIN_IMG_MAIN] = { [MT8188_POWER_DOMAIN_IMG_MAIN] = {
.name = "img_main", .name = "img_main",
...@@ -591,6 +596,8 @@ static const struct scpsys_domain_data scpsys_domain_data_mt8188[] = { ...@@ -591,6 +596,8 @@ static const struct scpsys_domain_data scpsys_domain_data_mt8188[] = {
.ctl_offs = 0x3A0, .ctl_offs = 0x3A0,
.pwr_sta_offs = 0x16C, .pwr_sta_offs = 0x16C,
.pwr_sta2nd_offs = 0x170, .pwr_sta2nd_offs = 0x170,
.ext_buck_iso_offs = 0x3EC,
.ext_buck_iso_mask = BIT(11),
.bp_cfg = { .bp_cfg = {
BUS_PROT_WR(INFRA, BUS_PROT_WR(INFRA,
MT8188_TOP_AXI_PROT_EN_MM_CAM_VCORE_STEP1, MT8188_TOP_AXI_PROT_EN_MM_CAM_VCORE_STEP1,
...@@ -618,7 +625,8 @@ static const struct scpsys_domain_data scpsys_domain_data_mt8188[] = { ...@@ -618,7 +625,8 @@ static const struct scpsys_domain_data scpsys_domain_data_mt8188[] = {
MT8188_TOP_AXI_PROT_EN_MM_2_CLR, MT8188_TOP_AXI_PROT_EN_MM_2_CLR,
MT8188_TOP_AXI_PROT_EN_MM_2_STA), MT8188_TOP_AXI_PROT_EN_MM_2_STA),
}, },
.caps = MTK_SCPD_KEEP_DEFAULT_OFF | MTK_SCPD_DOMAIN_SUPPLY, .caps = MTK_SCPD_KEEP_DEFAULT_OFF | MTK_SCPD_DOMAIN_SUPPLY |
MTK_SCPD_EXT_BUCK_ISO,
}, },
[MT8188_POWER_DOMAIN_CAM_MAIN] = { [MT8188_POWER_DOMAIN_CAM_MAIN] = {
.name = "cam_main", .name = "cam_main",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment