0905-remoteproc-q6v5_wcss-change-ssr-name-for-ipq6018-wif.patch 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. From 505f9c8653fc218ca47a153ec58ebc16bef5502f Mon Sep 17 00:00:00 2001
  2. From: Mantas Pucka <[email protected]>
  3. Date: Tue, 16 Jan 2024 10:42:40 +0200
  4. Subject: [PATCH 16/19] remoteproc: q6v5_wcss: change ssr name for ipq6018 wifi
  5. subsystem
  6. On IPQ6018 this string ends up being sent to RPM when remoteproc stops
  7. (on crash or rmmod ath11k). "q6wcss" is not a valid name (not found by
  8. `strings` in rpm.mbn), so this causes RPM do 'something' (presumably crash)
  9. causing a system reboot followed by hang in XBL, with no WDT running.
  10. Let's change ssr_name to a more sensible 'wcnss', that does not cause such
  11. issues.
  12. Signed-off-by: Mantas Pucka <[email protected]>
  13. ---
  14. drivers/remoteproc/qcom_q6v5_wcss.c | 6 +++---
  15. 1 file changed, 3 insertions(+), 3 deletions(-)
  16. --- a/drivers/remoteproc/qcom_q6v5_wcss.c
  17. +++ b/drivers/remoteproc/qcom_q6v5_wcss.c
  18. @@ -1142,8 +1142,8 @@ static int q6v5_wcss_probe(struct platfo
  19. if (ret)
  20. goto free_rproc;
  21. - qcom_add_glink_subdev(rproc, &wcss->glink_subdev, "q6wcss");
  22. - qcom_add_ssr_subdev(rproc, &wcss->ssr_subdev, "q6wcss");
  23. + qcom_add_glink_subdev(rproc, &wcss->glink_subdev, desc->ssr_name);
  24. + qcom_add_ssr_subdev(rproc, &wcss->ssr_subdev, desc->ssr_name);
  25. if (desc->ssctl_id)
  26. wcss->sysmon = qcom_add_sysmon_subdev(rproc,
  27. @@ -1198,7 +1198,7 @@ static const struct wcss_data wcss_ipq60
  28. .aon_reset_required = true,
  29. .wcss_q6_reset_required = true,
  30. .bcr_reset_required = false,
  31. - .ssr_name = "q6wcss",
  32. + .ssr_name = "wcnss",
  33. .ops = &q6v5_wcss_ipq8074_ops,
  34. .requires_force_stop = true,
  35. .need_mem_protection = true,