浏览代码

qcacmn: Add scan support for 11be puncturing

Add scan support for puncturing by extracting the puncturing
bitmap field in the EHT operation IE.

Change-Id: I221464f52bfce40b55344f995945836f80553579
CRs-Fixed: 2982502
Venkateswara Swamy Bandaru 4 年之前
父节点
当前提交
aece6974f6

+ 2 - 0
umac/cmn_services/cmn_defs/inc/wlan_cmn_ieee80211.h

@@ -1465,6 +1465,7 @@ struct wlan_ie_ehtcaps {
  * @chan_freq_seg0: EHT Channel Centre Frequency Segment 0
  * @chan_freq_seg1: EHT Channel Centre Frequency Segment 1
  * @minimum_rate: EHT Minimum Rate
+ * @puncture_pattern: per 20MHz puncturing bitmap
  */
 struct wlan_ie_ehtops {
 	uint8_t elem_id;
@@ -1477,6 +1478,7 @@ struct wlan_ie_ehtops {
 	uint8_t chan_freq_seg0;
 	uint8_t chan_freq_seg1;
 	uint8_t minimum_rate;
+	uint16_t puncture_pattern;
 } qdf_packed;
 #endif
 

+ 4 - 0
umac/scan/dispatcher/inc/wlan_scan_public_structs.h

@@ -125,12 +125,16 @@ struct wlan_objmgr_psoc;
  * @chan_freq: channel frequency
  * @cfreq0: channel frequency index0
  * @cfreq1: channel frequency index1
+ * @puncture_bitmap: puncture bitmap advertised in beacon
  * @priv: channel private information
  */
 struct channel_info {
 	uint32_t chan_freq;
 	uint32_t cfreq0;
 	uint32_t cfreq1;
+#ifdef WLAN_FEATURE_11BE
+	uint16_t puncture_bitmap;
+#endif
 	void *priv;
 };
 

+ 1 - 0
umac/scan/dispatcher/src/wlan_scan_utils_api.c

@@ -230,6 +230,7 @@ util_scan_get_phymode_11be(struct wlan_objmgr_pdev *pdev,
 		wlan_reg_chan_band_to_freq(pdev,
 					   eht_ops->chan_freq_seg1,
 					   band_mask);
+	scan_params->channel.puncture_bitmap = eht_ops->puncture_pattern;
 	return phymode;
 }
 #else