summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEdhar, Mahesh Kumar <c_medhar@qti.qualcomm.com>2015-03-04 15:33:43 +0530
committerAnjaneeDevi Kapparapu <c_akappa@qti.qualcomm.com>2015-03-05 20:24:27 +0530
commit9a3e612b1402dc190614b5eb623ff063435ba749 (patch)
treebbaf622a7e13b0cda194ad7d95293358ccd4bc29
parentc5162bd51a69d591fae02cafcba6bf9e43180e31 (diff)
WMA: Avoid sending sap keepalive parameters multiple times to firmware
Currently we set sap keepalive parameters to firmware on updating beacon parameters this is resulting in resetting inactive timer in firmware due to which inactivty timer is not getting fired. Change-Id: I0f155af5424eb34f0ec54b8366c97c6be7f518b5 CRs-Fixed: 802973
-rw-r--r--CORE/SERVICES/WMA/wma.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/CORE/SERVICES/WMA/wma.c b/CORE/SERVICES/WMA/wma.c
index cf26a4a30e49..aa5d383598dd 100644
--- a/CORE/SERVICES/WMA/wma.c
+++ b/CORE/SERVICES/WMA/wma.c
@@ -366,6 +366,7 @@ static VOS_STATUS wma_stop_scan(tp_wma_handle wma_handle,
tAbortScanParams *abort_scan_req);
void wma_send_ocb_set_sched_req(void *wma_handle, sir_ocb_sched_t *sched);
+static void wma_set_sap_keepalive(tp_wma_handle wma, u_int8_t vdev_id);
static void *wma_find_vdev_by_addr(tp_wma_handle wma, u_int8_t *addr,
u_int8_t *vdev_id)
@@ -1117,6 +1118,12 @@ static int wma_vdev_start_rsp_ind(tp_wma_handle wma, u_int8_t *buf)
wma->ocb_callback(ocb_sched_resp);
}
}
+
+
+ if ((wma->interfaces[resp_event->vdev_id].type == WMI_VDEV_TYPE_AP) &&
+ wma->interfaces[resp_event->vdev_id].vdev_up)
+ wma_set_sap_keepalive(wma, resp_event->vdev_id);
+
vos_timer_destroy(&req_msg->event_timeout);
adf_os_mem_free(req_msg);
@@ -15547,9 +15554,8 @@ static void wma_send_beacon(tp_wma_handle wma, tpSendbeaconParams bcn_info)
return;
}
wma->interfaces[vdev_id].vdev_up = TRUE;
+ wma_set_sap_keepalive(wma, vdev_id);
}
-
- wma_set_sap_keepalive(wma, vdev_id);
}
#if !defined(REMOVE_PKT_LOG)