diff --git a/plat/mediatek/mt8173/drivers/spm/spm.c b/plat/mediatek/mt8173/drivers/spm/spm.c index 280192568..45defd8aa 100644 --- a/plat/mediatek/mt8173/drivers/spm/spm.c +++ b/plat/mediatek/mt8173/drivers/spm/spm.c @@ -386,6 +386,8 @@ void spm_boot_init(void) { /* Only CPU0 is online during boot, initialize cpu online reserve bit */ mmio_write_32(SPM_PCM_RESERVE, 0xFE); + mmio_clrbits_32(AP_PLL_CON3, 0xFFFFF); + mmio_clrbits_32(AP_PLL_CON4, 0xF); spm_lock_init(); spm_register_init(); } diff --git a/plat/mediatek/mt8173/drivers/spm/spm.h b/plat/mediatek/mt8173/drivers/spm/spm.h index f1e767457..4e78c7277 100644 --- a/plat/mediatek/mt8173/drivers/spm/spm.h +++ b/plat/mediatek/mt8173/drivers/spm/spm.h @@ -129,6 +129,9 @@ #define SPM_SLEEP_CA15_WFI2_EN (SPM_BASE + 0xf18) #define SPM_SLEEP_CA15_WFI3_EN (SPM_BASE + 0xf1c) +#define AP_PLL_CON3 0x1020900c +#define AP_PLL_CON4 0x10209010 + #define SPM_PROJECT_CODE 0xb16 #define SPM_REGWR_EN (1U << 0)