mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-24 13:44:26 -04:00
qcacld-3.0: Don't fill the vdev response wait queue for set channel command
In monitor mode, wma_set_channel api is filling the vdev response wait queue before sending the WMI_PDEV_SET_CHANNEL_CMDID command to firmware and expecting it will be dequeued after response from firmware but firmware doesn't send any response to PDEV set channel command which is causing WMA timeout. Don't fill the vdev request wait queue for WMI_PDEV_SET_CHANNEL_CMDID command as firmware doesn't send any response. Change-Id: If1849440143ed671e0261685a53b8a86f4f8e29c CRs-Fixed: 2003707
This commit is contained in:
parent
822f22d4db
commit
fe426b6fbc
1 changed files with 10 additions and 9 deletions
|
|
@ -2866,15 +2866,6 @@ void wma_set_channel(tp_wma_handle wma, tpSwitchChannelParams params)
|
|||
|
||||
qdf_mem_zero(&req, sizeof(req));
|
||||
req.vdev_id = vdev_id;
|
||||
msg = wma_fill_vdev_req(wma, req.vdev_id, WMA_CHNL_SWITCH_REQ,
|
||||
WMA_TARGET_REQ_TYPE_VDEV_START, params,
|
||||
WMA_VDEV_START_REQUEST_TIMEOUT);
|
||||
if (!msg) {
|
||||
WMA_LOGP("%s: Failed to fill channel switch request for vdev %d",
|
||||
__func__, req.vdev_id);
|
||||
status = QDF_STATUS_E_NOMEM;
|
||||
goto send_resp;
|
||||
}
|
||||
req.chan = params->channelNumber;
|
||||
req.chan_width = params->ch_width;
|
||||
|
||||
|
|
@ -2922,6 +2913,16 @@ void wma_set_channel(tp_wma_handle wma, tpSwitchChannelParams params)
|
|||
/* This is temporary, should be removed */
|
||||
ol_htt_mon_note_chan(pdev, req.chan);
|
||||
} else {
|
||||
|
||||
msg = wma_fill_vdev_req(wma, req.vdev_id, WMA_CHNL_SWITCH_REQ,
|
||||
WMA_TARGET_REQ_TYPE_VDEV_START, params,
|
||||
WMA_VDEV_START_REQUEST_TIMEOUT);
|
||||
if (!msg) {
|
||||
WMA_LOGP("%s: Failed to fill channel switch request for vdev %d",
|
||||
__func__, req.vdev_id);
|
||||
status = QDF_STATUS_E_NOMEM;
|
||||
goto send_resp;
|
||||
}
|
||||
status = wma_vdev_start(wma, &req,
|
||||
wma->interfaces[req.vdev_id].is_channel_switch);
|
||||
if (status != QDF_STATUS_SUCCESS) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue