summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDeepak Dhamdhere <ddhamdhe@codeaurora.org>2017-02-04 22:09:27 -0800
committerqcabuildsw <qcabuildsw@localhost>2017-02-06 16:44:29 -0800
commitd0cb60dcec74c4f0b487a995615f7b7fc55d2bc6 (patch)
tree602fd804b3f69c9002d12079b6db224bd1f6770e
parentf4a50b55499a6b7bcb077a827a6ae25f926de85b (diff)
qcacld-3.0: Enable event handler for WOW_REASON_ROAM_HO
When roaming engine in firmware comes across handoff-failure and host processor is in sleep state, it sends WOW_REASON_ROAM_HO. Enable that reason code to follow the code path that leads into wma_roam_event_callback() where it is handled as normal. Modify peer debug log messages for better information for this event. CRs-Fixed: 2002239 Change-Id: I9ed854382287077ea66de78ce05e3d24c74058f3
-rw-r--r--core/wma/src/wma_features.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/core/wma/src/wma_features.c b/core/wma/src/wma_features.c
index fd80a7b6b7f3..90241e198f28 100644
--- a/core/wma/src/wma_features.c
+++ b/core/wma/src/wma_features.c
@@ -2707,6 +2707,9 @@ static int wow_get_wmi_eventid(int32_t reason, uint32_t tag)
case WOW_REASON_TDLS_CONN_TRACKER_EVENT:
event_id = WOW_TDLS_CONN_TRACKER_EVENT;
break;
+ case WOW_REASON_ROAM_HO:
+ event_id = WMI_ROAM_EVENTID;
+ break;
default:
WMA_LOGD(FL("Unexpected WOW reason : %s(%d)"),
wma_wow_wake_reason_str(reason), reason);
@@ -3420,14 +3423,16 @@ int wma_wow_wakeup_host_event(void *handle, uint8_t *event,
break;
case WOW_REASON_LOW_RSSI:
- /* WOW_REASON_LOW_RSSI is used for all roaming events.
+ case WOW_REASON_ROAM_HO:
+ /*
+ * WOW_REASON_LOW_RSSI is used for following roaming events -
* WMI_ROAM_REASON_BETTER_AP, WMI_ROAM_REASON_BMISS,
* WMI_ROAM_REASON_SUITABLE_AP will be handled by
* wma_roam_event_callback().
+ * WOW_REASON_ROAM_HO is associated with
+ * WMI_ROAM_REASON_HO_FAILED event and it will be handled by
+ * wma_roam_event_callback().
*/
- wma_peer_debug_log(wake_info->vdev_id, DEBUG_WOW_ROAM_EVENT,
- DEBUG_INVALID_PEER_ID, NULL, NULL,
- WOW_REASON_LOW_RSSI, 0);
WMA_LOGD("Host woken up because of roam event");
if (param_buf->wow_packet_buffer) {
/* Roam event is embedded in wow_packet_buffer */