qcacld-3.0: Send IPA UC disconnect events during SSR

Currently during SSR IPA events such as AP DISCONNECT/
STA DISCONNECT are not sent and also wlan ipa interafces
are not deregistered. After SSR when host sends AP CONNECT/
STA CONNECT and register interafce IPACM will reject as for
previous events before SSR there are no disconnect events.
This leads to data come via exception path instead taking
IPA HW route as interface headers are not registered.

In this fix send IPA UC disconnect events and deregister
interafces during SSR.

Change-Id: I6e617261ec53b7d572023613d212eae057b13b03
CRs-Fixed: 2315828
This commit is contained in:
Sravan Kumar Kairam
2018-09-18 10:13:37 +05:30
committed by nshrivas
parent 1692545a0b
commit f3c95eb167
6 changed files with 73 additions and 1 deletions

View File

@@ -312,6 +312,17 @@ QDF_STATUS ucfg_ipa_uc_disconnect_ap(struct wlan_objmgr_pdev *pdev,
*/
void ucfg_ipa_cleanup_dev_iface(struct wlan_objmgr_pdev *pdev,
qdf_netdev_t net_dev);
/**
* ucfg_ipa_uc_ssr_cleanup() - Handle IPA cleanup for SSR
* @pdev: pdev obj
*
* From hostside do cleanup such as deregister IPA interafces
* and send disconnect events so that it will be sync after SSR
*
* Return: None
*/
void ucfg_ipa_uc_ssr_cleanup(struct wlan_objmgr_pdev *pdev);
#else
static inline bool ucfg_ipa_is_present(void)
@@ -487,5 +498,10 @@ void ucfg_ipa_cleanup_dev_iface(struct wlan_objmgr_pdev *pdev,
qdf_netdev_t net_dev)
{
}
static inline
void ucfg_ipa_uc_ssr_cleanup(struct wlan_objmgr_pdev *pdev)
{
}
#endif /* IPA_OFFLOAD */
#endif /* _WLAN_IPA_UCFG_API_H_ */