remoteproc: qcom: q6v5-pil: fix modem hang on SDM845 after axis2 clk unvote
Subsystems (2)
PATCH 1/1 remoteproc: qcom: q6v5-pil: fix modem hang on SDM845 after axis2 clk unvote
GCC_MSS_AXIS2 clock is used for disabling boot IMEM (a part of AP boot up). With Boot IMEM disable now a part TZ/ATF, AXIS2 clock is no longer required post AP boot up and expected to remain untouched. However if the clock is turned ON after Q6 is brought out of reset and later turned off, it results in modem hang. When Q6 attempts a power collapse the internal handshaking to check if AXIS2 is idle never goes through since it is turned off preventing the RSC from getting triggered, leaving modem in a funky state. Hence removing AXIS2 clk enable/disable from the driver.
--- drivers/remoteproc/qcom_q6v5_pil.c | 1 - 1 file changed, 1 deletion(-)
drivers/remoteproc/qcom_q6v5_pil.c +0 -1
@@ -1243,7 +1243,6 @@ static const struct rproc_hexagon_res sdm845_mss = { .hexagon_mba_image = "mba.mbn", .proxy_clk_names = (char *[]){"xo" , -"axis2" ,"prng" ,NULL },
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project
Quoted 11 lines · Sibi Sankar
GCC_MSS_AXIS2clock is used for disabling boot IMEM (a part of AP boot up). With Boot IMEM disable now a part TZ/ATF, AXIS2 clock is no longer required post AP boot up and expected to remain untouched. However if the clock is turned ON after Q6 is brought out of reset and later turned off, it results in modem hang. When Q6 attempts a power collapse the internal handshaking to check if AXIS2 is idle never goes through since it is turned off preventing the RSC from getting triggered, leaving modem in a funky state. Hence removing AXIS2 clk enable/disable from the driver.
Quoted 2 lines
[bjorn: identified unvoting axis2 clk caused modem hang]Signed-off-by Sibi Sankar <[email protected]>
Thanks Sibi
Regards,
Bjorn
Quoted 20 lines
--- drivers/remoteproc/qcom_q6v5_pil.c | 1 - 1 file changed, 1 deletion(-)drivers/remoteproc/qcom_q6v5_pil.c +0
-1@@ -1243,7 +1243,6 @@ static const struct rproc_hexagon_res sdm845_mss = { .hexagon_mba_image = "mba.mbn", .proxy_clk_names = (char *[]){"xo" , -"axis2" ,"prng" ,NULL },Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project