soc: qcom: llcc: Check return value on Broadcast_OR reg read
authorUnnathi Chalicheemala <quic_uchalich@quicinc.com>
Mon, 12 Feb 2024 18:35:15 +0000 (10:35 -0800)
committerBjorn Andersson <andersson@kernel.org>
Wed, 14 Feb 2024 05:43:39 +0000 (23:43 -0600)
Commit c72ca343f911 ("soc: qcom: llcc: Add v4.1 HW version support")
introduced a new 4.1 if statement in llcc_update_act_ctrl() without
considering that ret might be overwritten. So, add return value check
after Broadcast_OR register read in llcc_update_act_ctrl().

Fixes: c72ca343f911 ("soc: qcom: llcc: Add v4.1 HW version support")
Signed-off-by: Unnathi Chalicheemala <quic_uchalich@quicinc.com>
Reviewed-by: Elliot Berman <quic_eberman@quicinc.com>
Reviewed-by: Mukesh Ojha <quic_mojha@quicinc.com>
Link: https://lore.kernel.org/r/20240212183515.433873-1-quic_uchalich@quicinc.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
drivers/soc/qcom/llcc-qcom.c

index 4ca88eaebf06a590b780e32c97a69ae16f707227..cbef0dea1d5d7b52b681d6a3b5f9715fede96bec 100644 (file)
@@ -859,6 +859,8 @@ static int llcc_update_act_ctrl(u32 sid,
        ret = regmap_read_poll_timeout(drv_data->bcast_regmap, status_reg,
                                      slice_status, !(slice_status & status),
                                      0, LLCC_STATUS_READ_DELAY);
+       if (ret)
+               return ret;
 
        if (drv_data->version >= LLCC_VERSION_4_1_0_0)
                ret = regmap_write(drv_data->bcast_regmap, act_clear_reg,