From 0bdeb7c66de25e86d49ca6864d89f6b5ed7a502a Mon Sep 17 00:00:00 2001 From: Anmolpreet Kaur Date: Tue, 30 Mar 2021 14:03:23 +0530 Subject: [PATCH] qseecom: Update correct parameters before sending to smcinvoke smcinvoke expects result in scm call resp.ret[1] and type in ret[0], while qseecom expects result in ret[0] and type in ret[1]. To simplify API interface and code changes in smcinvoke, here internally switch result and resp_type. Change-Id: I925ff08e370ed9b7935b81c97a3aa20c783a5c45 Signed-off-by: Anmolpreet Kaur --- drivers/misc/qseecom.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/drivers/misc/qseecom.c b/drivers/misc/qseecom.c index f90cbf9309c5..5442b9addab8 100644 --- a/drivers/misc/qseecom.c +++ b/drivers/misc/qseecom.c @@ -2657,11 +2657,6 @@ static int __qseecom_reentrancy_process_incomplete_cmd( pr_warn("get cback req app_id = %d, resp->data = %d\n", data->client.app_id, resp->data); resp->resp_type = SMCINVOKE_RESULT_INBOUND_REQ_NEEDED; - /* We are here because scm call sent to TZ has requested - * for another callback request. This call has been a - * success and hence setting result = 0 - */ - resp->result = 0; break; default: pr_err("fail:resp res= %d,app_id = %d,lstr = %d\n", @@ -5401,8 +5396,8 @@ int qseecom_process_listener_from_smcinvoke(uint32_t *result, if (ret) pr_err("Failed on cmd %d for lsnr %d session %d, ret = %d\n", resp.result, resp.data, resp.resp_type, ret); - *result = resp.result; - *response_type = resp.resp_type; + *result = resp.resp_type; + *response_type = resp.result; *data = resp.data; return ret; }