diff options
| author | CNSS_WLAN Service <cnssbldsw@qualcomm.com> | 2017-09-04 04:59:34 -0700 |
|---|---|---|
| committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2017-09-04 04:59:34 -0700 |
| commit | d202d263b643e389befc01e051923bca266f2fc5 (patch) | |
| tree | 645666f373fde068702a29a0971b2a394fc1e79e | |
| parent | bc232c0a55dc5a390f9d53441701b7a86f1cbe70 (diff) | |
| parent | 17f17db02ef981be377af2f54d65cdf2ba8b2a4d (diff) | |
Merge "qcacld-3.0: Shutdown IPA WDI pipes on PDR event" into wlan-cld3.driver.lnx.1.1
| -rw-r--r-- | core/hdd/inc/wlan_hdd_main.h | 7 | ||||
| -rw-r--r-- | core/hdd/src/wlan_hdd_driver_ops.c | 1 | ||||
| -rw-r--r-- | core/hdd/src/wlan_hdd_main.c | 9 |
3 files changed, 17 insertions, 0 deletions
diff --git a/core/hdd/inc/wlan_hdd_main.h b/core/hdd/inc/wlan_hdd_main.h index 467855a812d2..d0b5bb0eedb3 100644 --- a/core/hdd/inc/wlan_hdd_main.h +++ b/core/hdd/inc/wlan_hdd_main.h @@ -2728,4 +2728,11 @@ static inline void hdd_update_hlp_info(struct net_device *dev, tCsrRoamInfo *roam_info) {} #endif + +/** + * hdd_pld_ipa_uc_shutdown_pipes() - Disconnect IPA WDI pipes during PDR + * + * Return: None + */ +void hdd_pld_ipa_uc_shutdown_pipes(void); #endif /* end #if !defined(WLAN_HDD_MAIN_H) */ diff --git a/core/hdd/src/wlan_hdd_driver_ops.c b/core/hdd/src/wlan_hdd_driver_ops.c index bf3e0c330cfa..b1f5435889ae 100644 --- a/core/hdd/src/wlan_hdd_driver_ops.c +++ b/core/hdd/src/wlan_hdd_driver_ops.c @@ -1252,6 +1252,7 @@ static void wlan_hdd_pld_uevent(struct device *dev, switch (uevent->uevent) { case PLD_RECOVERY: cds_set_recovery_in_progress(true); + hdd_pld_ipa_uc_shutdown_pipes(); break; case PLD_FW_DOWN: cds_set_fw_state(CDS_FW_STATE_DOWN); diff --git a/core/hdd/src/wlan_hdd_main.c b/core/hdd/src/wlan_hdd_main.c index 88ed006012e4..3f7e42124e37 100644 --- a/core/hdd/src/wlan_hdd_main.c +++ b/core/hdd/src/wlan_hdd_main.c @@ -12059,6 +12059,15 @@ int hdd_set_limit_off_chan_for_tos(hdd_adapter_t *adapter, enum tos tos, return ret; } +void hdd_pld_ipa_uc_shutdown_pipes(void) +{ + hdd_context_t *hdd_ctx = cds_get_context(QDF_MODULE_ID_HDD); + if (!hdd_ctx) + return; + + hdd_ipa_uc_force_pipe_shutdown(hdd_ctx); +} + /* Register the module init/exit functions */ module_init(hdd_module_init); module_exit(hdd_module_exit); |
