From dbbb61a6cd6604dee678f942a5ae03f616a4a618 Mon Sep 17 00:00:00 2001 From: Om Prakash Tripathi Date: Fri, 15 Dec 2017 17:29:55 +0530 Subject: [PATCH] qcacmn: Add support to append scan channel list Add append bit in scan channel list command. If append bit is set, new channels will be appended to existing channel list else existing channel list will be over written by new channel list. Change-Id: I0b1ecd2b809aafe6e524a05aacd5b14c80640556 CRs-Fixed: 2159802 --- wmi/inc/wmi_unified_param.h | 4 ++++ wmi/src/wmi_unified_tlv.c | 3 +++ 2 files changed, 7 insertions(+) diff --git a/wmi/inc/wmi_unified_param.h b/wmi/inc/wmi_unified_param.h index 56c1c99fcc22..afef74812c52 100644 --- a/wmi/inc/wmi_unified_param.h +++ b/wmi/inc/wmi_unified_param.h @@ -1232,6 +1232,8 @@ struct ap_ps_params { #define WMI_HOST_SCAN_CHAN_MODE_SHIFT 16 #define WMI_HOST_SCAN_CHAN_MODE_MASK 0xff +#define WMI_HOST_MAX_CHANS_PER_WMI_CMD 58 + /** * struct scan_chan_list_params - scan channel list cmd parameter * @num_scan_chans: no of scan channels @@ -1267,11 +1269,13 @@ struct scan_chan_list_params { * @pdev_id: pdev_id * @num_chan: no of scan channels * @nallchans: nall chans + * @append: append to existing chan list * @ch_param: pointer to channel_paramw */ struct scan_chan_list_params { uint32_t pdev_id; uint16_t nallchans; + bool append; struct channel_param ch_param[1]; }; #endif diff --git a/wmi/src/wmi_unified_tlv.c b/wmi/src/wmi_unified_tlv.c index 74dea8b22efe..12d042001704 100644 --- a/wmi/src/wmi_unified_tlv.c +++ b/wmi/src/wmi_unified_tlv.c @@ -2701,6 +2701,9 @@ static QDF_STATUS send_scan_chan_list_cmd_tlv(wmi_unified_t wmi_handle, WMI_LOGD("no of channels = %d, len = %d", chan_list->nallchans, len); + if (chan_list->append) + cmd->flags |= APPEND_TO_EXISTING_CHAN_LIST; + cmd->pdev_id = wmi_handle->ops->convert_pdev_id_host_to_target( chan_list->pdev_id); cmd->num_scan_chans = chan_list->nallchans;