qcacmn: Get per channel scan config service capability

Firmware advertises the service capability bit
WMI_SERVICE_SCAN_CONFIG_PER_CHANNEL when it supports per channel
scan config flags. Get this and cache in psoc.

If firmware supports WMI_SERVICE_SCAN_CONFIG_PER_CHANNEL, it uses
the upper-12 bits(bit-20 to bit 32) of channel_list for flags and
lower 20-bits(bit-0 to bit-19) for frequency. If firmware doesn't
support it, then channel_list holds the frequency value only.
Fill the flags and frequency accordingly.

Change-Id: I88a6f29f61e1ecea75bc5574cadcbbfbb7f8b188
CRs-Fixed: 2806405
此提交包含在:
Srinivas Dasari
2020-10-26 05:49:03 +05:30
提交者 snandini
父節點 58fe05f9ba
當前提交 da54959f21
共有 4 個檔案被更改,包括 10 行新增0 行删除

查看文件

@@ -5264,6 +5264,7 @@ typedef enum {
#ifdef FEATURE_CLUB_LL_STATS_AND_GET_STATION
wmi_service_get_station_in_ll_stats_req,
#endif
wmi_service_scan_conf_per_ch_support,
wmi_services_max,
} wmi_conv_service_ids;
#define WMI_SERVICE_UNAVAILABLE 0xFFFF

查看文件

@@ -15177,6 +15177,8 @@ static void populate_tlv_service(uint32_t *wmi_service)
WMI_SERVICE_MBSS_PARAM_IN_VDEV_START_SUPPORT;
wmi_service[wmi_service_fse_cmem_alloc_support] =
WMI_SERVICE_FSE_CMEM_ALLOC_SUPPORT;
wmi_service[wmi_service_scan_conf_per_ch_support] =
WMI_SERVICE_SCAN_CONFIG_PER_CHANNEL;
wmi_populate_service_get_sta_in_ll_stats_req(wmi_service);
}