summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVarun Reddy Yeturu <varunreddy.yeturu@codeaurora.org>2017-07-14 16:01:34 -0700
committersnandini <snandini@codeaurora.org>2017-07-24 12:43:58 -0700
commit90db77384bdc86904fb027ca6cd603b4de692b34 (patch)
treec15458c90897980297261c75ae03d6959112ebe4
parent60df4c6de8f14ccb40d08ba715bf89f2769252f9 (diff)
qcacmn: Fix number of buffers in ROAM_INVOKE command
Fix the number of buffers being passed in ROAM_INVOKE command to the firmware. Fill it only if there is a valid beacon or probe response being sent to the firmware Change-Id: I0f569b847091bb9eb92a92de949c90ace0ab51fe CRs-Fixed: 2077075
-rw-r--r--wmi/src/wmi_unified_tlv.c16
1 files changed, 11 insertions, 5 deletions
diff --git a/wmi/src/wmi_unified_tlv.c b/wmi/src/wmi_unified_tlv.c
index c1a70ea0252e..f29a3911fa84 100644
--- a/wmi/src/wmi_unified_tlv.c
+++ b/wmi/src/wmi_unified_tlv.c
@@ -11068,17 +11068,19 @@ QDF_STATUS send_roam_invoke_cmd_tlv(wmi_unified_t wmi_handle,
cmd->flags |= (1 << WMI_ROAM_INVOKE_FLAG_NO_NULL_FRAME_TO_AP);
WMI_LOGD(FL("is_same_bssid flag: %d"), roaminvoke->is_same_bssid);
- if (roaminvoke->frame_len)
+ if (roaminvoke->frame_len) {
cmd->roam_scan_mode = WMI_ROAM_INVOKE_SCAN_MODE_SKIP;
- else
+ /* packing 1 beacon/probe_rsp frame with WMI cmd */
+ cmd->num_buf = 1;
+ } else {
cmd->roam_scan_mode = WMI_ROAM_INVOKE_SCAN_MODE_FIXED_CH;
+ cmd->num_buf = 0;
+ }
cmd->roam_ap_sel_mode = 0;
cmd->roam_delay = 0;
cmd->num_chan = 1;
cmd->num_bssid = 1;
- /* packing 1 beacon/probe_rsp frame with WMI cmd */
- cmd->num_buf = 1;
buf_ptr += sizeof(wmi_roam_invoke_cmd_fixed_param);
WMITLV_SET_HDR(buf_ptr, WMITLV_TAG_ARRAY_UINT32,
@@ -11115,7 +11117,11 @@ QDF_STATUS send_roam_invoke_cmd_tlv(wmi_unified_t wmi_handle,
QDF_TRACE_HEX_DUMP(QDF_MODULE_ID_WMA, QDF_TRACE_LEVEL_DEBUG,
buf_ptr + WMI_TLV_HDR_SIZE,
roaminvoke->frame_len);
- WMI_LOGD(FL("flags:%d, scan_mode:%d"), cmd->flags, cmd->roam_scan_mode);
+ WMI_LOGD(FL("flag:%d, MODE scn:%d, ap:%d, dly:%d, n_ch:%d, n_bssid:%d"),
+ cmd->flags, cmd->roam_scan_mode,
+ cmd->roam_ap_sel_mode, cmd->roam_delay,
+ cmd->num_chan, cmd->num_bssid);
+ WMI_LOGD(FL("BSSID: %pM, channel: %d"), roaminvoke->bssid, ch_hz);
if (wmi_unified_cmd_send(wmi_handle, wmi_buf, len,
WMI_ROAM_INVOKE_CMDID)) {