[PATCH] remoteproc/mediatek: set to DEVAPC domain 3 for MT8192 SCP
Tzung-Bi Shih
tzungbi at google.com
Wed Mar 17 03:43:11 GMT 2021
DEVAPC (device access permission control) is a MPU (memory protection
unit) in MT8192.
To restrict SCP accesses to a specific memory range, sets SCP to DEVAPC
domain 3. ATF (Arm trusted firmware) should setup memory range for the
domain.
Signed-off-by: Tinghan Shen <tinghan.shen at mediatek.com>
Signed-off-by: Tzung-Bi Shih <tzungbi at google.com>
---
drivers/remoteproc/mtk_common.h | 2 ++
drivers/remoteproc/mtk_scp.c | 3 +++
2 files changed, 5 insertions(+)
diff --git a/drivers/remoteproc/mtk_common.h b/drivers/remoteproc/mtk_common.h
index 61901f5efa05..2aa9fdf5e59b 100644
--- a/drivers/remoteproc/mtk_common.h
+++ b/drivers/remoteproc/mtk_common.h
@@ -51,6 +51,8 @@
#define MT8192_CORE0_WDT_IRQ 0x10030
#define MT8192_CORE0_WDT_CFG 0x10034
+#define MT8192_SCP_DEVAPC_DOMAIN 0x85080
+
#define SCP_FW_VER_LEN 32
#define SCP_SHARE_BUFFER_SIZE 288
diff --git a/drivers/remoteproc/mtk_scp.c b/drivers/remoteproc/mtk_scp.c
index 9679cc26895e..50bdec5a97e3 100644
--- a/drivers/remoteproc/mtk_scp.c
+++ b/drivers/remoteproc/mtk_scp.c
@@ -374,6 +374,9 @@ static int mt8192_scp_before_load(struct mtk_scp *scp)
/* enable MPU for all memory regions */
writel(0xff, scp->reg_base + MT8192_CORE0_MEM_ATT_PREDEF);
+ /* set to DEVAPC (device access permission control) domain 3 */
+ writel(3, scp->reg_base + MT8192_SCP_DEVAPC_DOMAIN);
+
return 0;
}
--
2.31.0.rc2.261.g7f71774620-goog
More information about the Linux-mediatek
mailing list