On 5/20/2024 4:57 PM, AngeloGioacchino Del Regno wrote:
In scp_ipi_handler(), instead of zeroing out the entire shared
buffer, which may be as large as 600 bytes, overwrite it with the
received data, then zero out only the remaining bytes.

Signed-off-by: AngeloGioacchino Del Regno 
<angelogioacchino.delre...@collabora.com>
---
  drivers/remoteproc/mtk_scp.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/remoteproc/mtk_scp.c b/drivers/remoteproc/mtk_scp.c
index e5214d43181e..dc70cf7db44d 100644
--- a/drivers/remoteproc/mtk_scp.c
+++ b/drivers/remoteproc/mtk_scp.c
@@ -117,8 +117,8 @@ static void scp_ipi_handler(struct mtk_scp *scp)
                return;
        }
- memset(scp->share_buf, 0, scp_sizes->ipi_share_buffer_size);
        memcpy_fromio(scp->share_buf, &rcv_obj->share_buf, len);
+       memset(&scp->share_buf[len], 0, scp_sizes->ipi_share_buffer_size - len);

Although, it does not make any difference apart from a write of len bytes, still a good improvement to do ..

Acked-by: Mukesh Ojha <quic_mo...@quicinc.com>

-Mukesh

        handler(scp->share_buf, len, ipi_desc[id].priv);
        scp_ipi_unlock(scp, id);

Reply via email to