From 200b12bb33eb9614f01f3ac3aab54e0f63562aba Mon Sep 17 00:00:00 2001 From: basant kumar Date: Mon, 8 Aug 2022 17:06:27 +0530 Subject: [PATCH] securemsm-kernel: smcinvoke: Add explicit cache flush during callback req from TZ During Callback request from TZ, smcinvoke in and out buffers need explicit cache operation with legacy smcinvoke. Change-Id: I3eacd69901c1ce117017b2d59a28dfab83b5f3f9 --- smcinvoke/smcinvoke.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/smcinvoke/smcinvoke.c b/smcinvoke/smcinvoke.c index 98d79869bf..9b46adf552 100644 --- a/smcinvoke/smcinvoke.c +++ b/smcinvoke/smcinvoke.c @@ -1350,8 +1350,14 @@ static int invoke_cmd_handler(int cmd, phys_addr_t in_paddr, size_t in_buf_len, break; case SMCINVOKE_CB_RSP_CMD: + if (legacy_smc_call) + qtee_shmbridge_inv_shm_buf(out_shm); ret = qcom_scm_invoke_callback_response(virt_to_phys(out_buf), out_buf_len, result, response_type, data); + if (legacy_smc_call) { + qtee_shmbridge_inv_shm_buf(in_shm); + qtee_shmbridge_inv_shm_buf(out_shm); + } break; default: