Commit 568b13b
remoteproc: qcom_q6v5_pas: Add hwspinlock bust on stop
When remoteproc goes down unexpectedly this results in a state where any
acquired hwspinlocks will remain locked possibly resulting in deadlock.
In order to ensure all locks are freed we include a call to
qcom_smem_bust_hwspin_lock_by_host() during remoteproc shutdown.
For qcom_q6v5_pas remoteprocs, each remoteproc has an assigned smem
host_id. Remoteproc can pass this id to smem to try and bust the lock on
remoteproc stop.
This edge case only occurs with q6v5_pas watchdog crashes. The error
fatal case has handling to clear the hwspinlock before the error fatal
interrupt is triggered.
Signed-off-by: Richard Maina <[email protected]>
Reviewed-by: Bjorn Andersson <[email protected]>
Signed-off-by: Chris Lew <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Bjorn Andersson <[email protected]>1 parent 2e3f0d6 commit 568b13b
1 file changed
+11
-0
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
52 | 52 | | |
53 | 53 | | |
54 | 54 | | |
| 55 | + | |
55 | 56 | | |
56 | 57 | | |
57 | 58 | | |
| |||
81 | 82 | | |
82 | 83 | | |
83 | 84 | | |
| 85 | + | |
84 | 86 | | |
85 | 87 | | |
86 | 88 | | |
| |||
399 | 401 | | |
400 | 402 | | |
401 | 403 | | |
| 404 | + | |
| 405 | + | |
| 406 | + | |
402 | 407 | | |
403 | 408 | | |
404 | 409 | | |
| |||
727 | 732 | | |
728 | 733 | | |
729 | 734 | | |
| 735 | + | |
730 | 736 | | |
731 | 737 | | |
732 | 738 | | |
| |||
1196 | 1202 | | |
1197 | 1203 | | |
1198 | 1204 | | |
| 1205 | + | |
1199 | 1206 | | |
1200 | 1207 | | |
1201 | 1208 | | |
| |||
1216 | 1223 | | |
1217 | 1224 | | |
1218 | 1225 | | |
| 1226 | + | |
1219 | 1227 | | |
1220 | 1228 | | |
1221 | 1229 | | |
| |||
1236 | 1244 | | |
1237 | 1245 | | |
1238 | 1246 | | |
| 1247 | + | |
1239 | 1248 | | |
1240 | 1249 | | |
1241 | 1250 | | |
| |||
1275 | 1284 | | |
1276 | 1285 | | |
1277 | 1286 | | |
| 1287 | + | |
1278 | 1288 | | |
1279 | 1289 | | |
1280 | 1290 | | |
| |||
1299 | 1309 | | |
1300 | 1310 | | |
1301 | 1311 | | |
| 1312 | + | |
1302 | 1313 | | |
1303 | 1314 | | |
1304 | 1315 | | |
| |||
0 commit comments