qcacld-3.0: map uCode 11ax GI values to radiotap header

Currently 11ax sgi values are mapped incorrectly.
uCode has:

enum 0     0_8_us_sgi
enum 1     0_4_us_sgi
enum 2     1_6_us_sgi
enum 3     3_2_us_sgi

Radiotap header expectation:

enum 0     0_8_us_sgi
enum 1     1_6_us_sgi
enum 2     3_2_us_sgi

Hence, This change is to map uCode GI values to radiotap header
as per radtiotap header expectation.

Change-Id: I58d8205e7da3523cf81b420c0aee978a862a772a
CRs-Fixed: 3628151
This commit is contained in:
Balaji Pothunoori
2023-10-09 15:25:32 +05:30
committed by Ravindra Konda
부모 4396f1e66f
커밋 c8f46a08fc

파일 보기

@@ -730,6 +730,26 @@ static void pkt_capture_rx_get_phy_info(void *context, void *psoc,
IEEE80211_RADIOTAP_HE_DATA1_BW_RU_ALLOC_KNOWN;
rx_status->he_data2 |= IEEE80211_RADIOTAP_HE_DATA2_GI_KNOWN;
rx_status->he_data3 |= mcs << 0x8;
/* Map uCode SGI values to Radiotap header
* as per Radiotap header expectation.
*
* uCode has:
* enum 0 0_8_us_sgi
* enum 1 0_4_us_sgi
* enum 2 1_6_us_sgi
* enum 3 3_2_us_sgi
*
* Radiotap header expectation:
* enum 0 0_8_us_sgi
* enum 1 1_6_us_sgi
* enum 2 3_2_us_sgi
*/
if (sgi == HE_GI_1_6)
sgi = HE_GI_RADIOTAP_1_6;
else if (sgi == HE_GI_3_2)
sgi = HE_GI_RADIOTAP_3_2;
rx_status->he_data5 |= (bw | (sgi << 0x4));
rx_status->he_data6 |= nss;
default: