Re: [PATCH 2/2] remoteproc: mediatek: Support mt8186 scp

From: AngeloGioacchino Del Regno
Date: Tue Jan 04 2022 - 03:43:33 EST


Il 03/01/22 08:58, allen-kh.cheng ha scritto:
Add SCP support for mt8186

Signed-off-by: Allen-KH Cheng <allen-kh.cheng@xxxxxxxxxxxx>

Hello! Thanks for the patch!
However, there's something to improve...

---
drivers/remoteproc/mtk_scp.c | 39 ++++++++++++++++++++++++++++++++++++
1 file changed, 39 insertions(+)

diff --git a/drivers/remoteproc/mtk_scp.c b/drivers/remoteproc/mtk_scp.c
index 36e48cf58ed6..38eab6b86fd7 100644
--- a/drivers/remoteproc/mtk_scp.c
+++ b/drivers/remoteproc/mtk_scp.c
@@ -365,6 +365,31 @@ static int mt8183_scp_before_load(struct mtk_scp *scp)
return 0;
}
+static int mt8186_scp_before_load(struct mtk_scp *scp)
+{
+ int i;
+
+ /* Clear SCP to host interrupt */
+ writel(MT8183_SCP_IPC_INT_BIT, scp->reg_base + MT8183_SCP_TO_HOST);
+
+ /* Reset clocks before loading FW */
+ writel(0x0, scp->reg_base + MT8183_SCP_CLK_SW_SEL);
+ writel(0x0, scp->reg_base + MT8183_SCP_CLK_DIV_SEL);
+

.............

+ /* Turn on the power of SCP's SRAM before using it. Enable 1 block per time*/
+ for (i = 31; i >= 0; i--)
+ writel(GENMASK(i, 0), scp->reg_base + MT8183_SCP_SRAM_PDN);
+ writel(0, scp->reg_base + MT8183_SCP_SRAM_PDN);
+

.............

This snippet corresponds exactly to the mt8192_power_on_sram() helper:
please avoid code duplication by simply calling that function instead.

Thanks,
- Angelo