diff options
| author | lifeng <lifeng@codeaurora.org> | 2017-05-12 12:56:52 +0800 |
|---|---|---|
| committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2017-05-18 10:54:06 -0700 |
| commit | ffc22e043856183ae4efb6c04d574ba4a8142fe4 (patch) | |
| tree | 10c530c9b88b918236cfcb2270cb582cda0bae9c | |
| parent | a704aa50a92a19099558c5a75988d5869011ffb1 (diff) | |
qcacld-2.0: Disable pm qos in LL during ramdump collecting
Disable the kernel panic and then trigger system crash manually,
but the system still shutdown and reboot. It's caused by the pm
qos mechnasim involved during ramdump collecting in the flow of
pci wlan driver crash_shutdown callback.
The fix is to disable the pm qos mechnasim when collecting
ramdump in pci platform.
Change-Id: I5af39803c335b65d79b1a0d28a121a02c7625646
CRs-Fixed: 2040230
| -rw-r--r-- | CORE/SERVICES/BMI/ol_fw.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/CORE/SERVICES/BMI/ol_fw.c b/CORE/SERVICES/BMI/ol_fw.c index df0652cceda4..4780acc42a65 100644 --- a/CORE/SERVICES/BMI/ol_fw.c +++ b/CORE/SERVICES/BMI/ol_fw.c @@ -1001,6 +1001,7 @@ u_int32_t ol_fw_iram_size; u_int32_t ol_fw_axi_size; #endif +#if defined(HIF_SDIO) int ol_copy_ramdump(struct ol_softc *scn) { int ret; @@ -1023,6 +1024,27 @@ int ol_copy_ramdump(struct ol_softc *scn) out: return ret; } +#else +int ol_copy_ramdump(struct ol_softc *scn) +{ + int ret; + + if (!vos_is_ssr_fw_dump_required()) + return 0; + + if (!scn->ramdump_base || !scn->ramdump_size) { + pr_info("%s: No RAM dump will be collected since ramdump_base " + "is NULL or ramdump_size is 0!\n", __func__); + ret = -EACCES; + goto out; + } + + ret = ol_target_coredump(scn, scn->ramdump_base, scn->ramdump_size); + +out: + return ret; +} +#endif static void ramdump_work_handler(struct work_struct *ramdump) { |
