diff options
| author | Masti, Narayanraddi <c_nmasti@qti.qualcomm.com> | 2016-05-04 18:11:57 +0530 |
|---|---|---|
| committer | Anjaneedevi Kapparapu <akappa@codeaurora.org> | 2016-05-06 14:14:41 +0530 |
| commit | a80fce627463197cbc0aad6a89a23bc3a5ee9435 (patch) | |
| tree | 8538589ddae3445d48eb2b2649e1b64bbcecddc3 | |
| parent | 98c57f0758e55ba9776105dfe1702ca77df08427 (diff) | |
qcacld-2.0: Add support to handle TDLS event in WOW mode
TDLS teardown event sent by firmware is not processed whenever
host is in WOW mode which will lead to failure of TDLS
teardown.
Fix is to handle this event in WOW mode.
Change-Id: I3649bfdf4381f49483a3ffe2c80d5339b52a3764
CRs-Fixed: 1009456
| -rw-r--r-- | CORE/SERVICES/WMA/wma.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/CORE/SERVICES/WMA/wma.c b/CORE/SERVICES/WMA/wma.c index 10a87b648316..4934a1c08cb0 100644 --- a/CORE/SERVICES/WMA/wma.c +++ b/CORE/SERVICES/WMA/wma.c @@ -20763,6 +20763,9 @@ static int wma_wow_wakeup_host_event(void *handle, u_int8_t *event, tp_wma_handle wma = (tp_wma_handle) handle; WMI_WOW_WAKEUP_HOST_EVENTID_param_tlvs *param_buf; WOW_EVENT_INFO_fixed_param *wake_info; +#ifdef FEATURE_WLAN_TDLS + WMI_TDLS_PEER_EVENTID_param_tlvs tdls_param; +#endif #ifdef FEATURE_WLAN_SCAN_PNO struct wma_txrx_node *node; #endif @@ -21033,6 +21036,20 @@ static int wma_wow_wakeup_host_event(void *handle, u_int8_t *event, WMA_LOGE(FL("wow_packet_buffer is empty")); } break; +#ifdef FEATURE_WLAN_TDLS + case WOW_REASON_TDLS_CONN_TRACKER_EVENT: + if (param_buf->wow_packet_buffer) { + WMA_LOGD("Host woken up because of TDLS event"); + tdls_param.fixed_param = + (wmi_tdls_peer_event_fixed_param *) + (param_buf->wow_packet_buffer + 4); + wma_tdls_event_handler(handle, + (u_int8_t *)&tdls_param, sizeof(tdls_param)); + } else { + WMA_LOGD("No wow_packet_buffer present"); + } + break; +#endif default: break; } |
