/* Riva crash handler */ static void riva_crash_shutdown(const struct subsys_data *subsys) { pr_err("%s: crash shutdown : %d\n", MODULE_NAME, riva_crash); //ASUS_BSP+++ "for /data/log/ASUSEvtlog" ASUSEvtlog("[wcnss]: riva_crash_shutdown (%d).\n", riva_crash); //ASUS_BSP--- "for /data/log/ASUSEvtlog" //ASUS_BSP+++ "Qualcomm (1-Wait_for_WCNSS_to_finish_its_error_fatal_routines_during_SSR.patch)" //ASUS_BSP+++ "Qualcomm (2-wcnss_fix_panic_leading_to_WD_bark.patch)" #if 0 if (riva_crash != true) smsm_riva_reset(); #else if (riva_crash != true) { smsm_riva_reset(); /* give sufficient time for wcnss to finish it's error * fatal routine */ pr_err("wcnss_8960: mdelay(3000), give sufficient time for wcnss.\n"); mdelay(3000); } #endif //ASUS_BSP--- "Qualcomm (2-wcnss_fix_panic_leading_to_WD_bark.patch)" //ASUS_BSP--- "Qualcomm (1-Wait_for_WCNSS_to_finish_its_error_fatal_routines_during_SSR.patch)" }
/* Riva crash handler */ static void riva_crash_shutdown(const struct subsys_desc *subsys) { pr_err("%s: crash shutdown : %d\n", MODULE_NAME, riva_crash); if (riva_crash != true) { smsm_riva_reset(); /* give sufficient time for wcnss to finish it's error * fatal routine */ mdelay(3000); } }
/* Riva crash handler */ static void riva_crash_shutdown(const struct subsys_data *subsys) { pr_err("%s: crash shutdown : %d\n", MODULE_NAME, riva_crash); if (riva_crash != true) smsm_riva_reset(); }