diff options
| author | Varun Reddy Yeturu <varunreddy.yeturu@codeaurora.org> | 2017-07-14 16:01:34 -0700 |
|---|---|---|
| committer | snandini <snandini@codeaurora.org> | 2017-07-24 12:43:58 -0700 |
| commit | 90db77384bdc86904fb027ca6cd603b4de692b34 (patch) | |
| tree | c15458c90897980297261c75ae03d6959112ebe4 | |
| parent | 60df4c6de8f14ccb40d08ba715bf89f2769252f9 (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.c | 16 |
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)) { |
