qcacmn: Process rx_mgmt_pkt based on frequency

As a part of 802.11ax amendment, 6GHz band operation is added.
Since the 6 GHz channel numbers are overlapping with existing 2.4GHz
and 5GHz channel numbers, use frequency to identify unique channel
operation instead of channel number. Channel frequency is unique across
bands.

As part of above requirement add logic to process rx mgmt
packets based on the frequencies instead of channel numbers.

Change-Id: I33e31fa124cedfab31dd1827721a420ad6cdba07
CRs-Fixed: 2519512
这个提交包含在:
Ashish Kumar Dhanotiya
2019-08-29 19:17:44 +05:30
提交者 nshrivas
父节点 973308ae13
当前提交 75ccbd439c
修改 7 个文件,包含 111 行新增57 行删除

查看文件

@@ -1745,15 +1745,13 @@ int wlan_vendor_abort_scan(struct wlan_objmgr_pdev *pdev,
static inline struct ieee80211_channel *
wlan_get_ieee80211_channel(struct wiphy *wiphy,
struct wlan_objmgr_pdev *pdev,
int chan_no)
int chan_freq)
{
unsigned int freq;
struct ieee80211_channel *chan;
freq = wlan_reg_chan_to_freq(pdev, chan_no);
chan = ieee80211_get_channel(wiphy, freq);
chan = ieee80211_get_channel(wiphy, chan_freq);
if (!chan)
osif_err("chan is NULL, chan_no: %d freq: %d", chan_no, freq);
osif_err("chan is NULL, freq: %d", chan_freq);
return chan;
}
@@ -1925,11 +1923,11 @@ void wlan_cfg80211_inform_bss_frame(struct wlan_objmgr_pdev *pdev,
bss_data.rssi = scan_params->rssi_raw;
bss_data.chan = wlan_get_ieee80211_channel(wiphy, pdev,
scan_params->channel.chan_idx);
scan_params->channel.chan_freq);
if (!bss_data.chan) {
osif_err("Channel not found for bss %pM seq %d chan %d",
osif_err("Channel not found for bss %pM seq %d chan_freq %d",
bss_data.mgmt->bssid, scan_params->seq_num,
scan_params->channel.chan_idx);
scan_params->channel.chan_freq);
qdf_mem_free(bss_data.mgmt);
return;
}