soc/mediatek/mt8186: Inititalize ADSP

To use SOF correctly, we need to initialize ADSP in coreboot stage.

TEST=SOF driver is functional.
BUG=b:204229221

Change-Id: I45db587252ccdcdf75e0be2029743034a79925c5
Signed-off-by: Tinghan Shen <tinghan.shen@mediatek.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68289
Reviewed-by: Yidi Lin <yidilin@google.com>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
diff --git a/src/soc/mediatek/mt8186/soc.c b/src/soc/mediatek/mt8186/soc.c
index d2e7a1e..a55e2ee 100644
--- a/src/soc/mediatek/mt8186/soc.c
+++ b/src/soc/mediatek/mt8186/soc.c
@@ -2,10 +2,12 @@
 
 #include <bootmem.h>
 #include <device/device.h>
+#include <soc/adsp.h>
 #include <soc/devapc.h>
 #include <soc/dfd.h>
 #include <soc/emi.h>
 #include <soc/mmu_operations.h>
+#include <soc/mtcmos.h>
 #include <soc/sspm.h>
 #include <symbols.h>
 
@@ -24,6 +26,12 @@
 {
 	mtk_mmu_disable_l2c_sram();
 	sspm_init();
+
+	/* ADSP is required for all MT8186 projects, so it's initialized in soc.c */
+	mtcmos_adsp_power_on();
+	mtcmos_protect_adsp_bus();
+	mtk_adsp_init();
+
 	dapc_init();
 
 	if (CONFIG(MTK_DFD))