In ti_sci_get_response the check for message sequence will return ret
on a fail but ret will be 0 at that point. Instead return -EINVAL.
Also change dev_dbg call to dev_err to be consistent with other error
detection code in the same function.

This issue was found by Smatch.

Reviewed-by: Udit Kumar <[email protected]>
Signed-off-by: Andrew Goodbody <[email protected]>
---
 drivers/firmware/ti_sci.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/firmware/ti_sci.c b/drivers/firmware/ti_sci.c
index 
2042d88583766213e9d74dd17289cfd3562f0acb..534326be5ecedba1bf221d04d708b6db15f09706
 100644
--- a/drivers/firmware/ti_sci.c
+++ b/drivers/firmware/ti_sci.c
@@ -191,9 +191,9 @@ static int ti_sci_get_response(struct ti_sci_info *info,
 
        /* Sanity check for message response */
        if (hdr->seq != info->seq) {
-               dev_dbg(info->dev, "%s: Message for %d is not expected\n",
+               dev_err(info->dev, "%s: Message for %d is not expected\n",
                        __func__, hdr->seq);
-               return ret;
+               return -EINVAL;
        }
 
        if (msg->len > info->desc->max_msg_size) {

-- 
2.47.3

Reply via email to