rtw88: fix short GI capability based on current bandwidth
authorTsang-Shian Lin <thlin@realtek.com>
Fri, 17 Jul 2020 06:49:32 +0000 (14:49 +0800)
committerKalle Valo <kvalo@codeaurora.org>
Sun, 2 Aug 2020 15:05:13 +0000 (18:05 +0300)
commit4dd86b901d1373ef8446ecb50a7ca009f3475211
treeca476c098aa022b212475af8e09af0987f00ce99
parentae44fa993e8e6c1a1d22e5ca03d9eadd53b2745b
rtw88: fix short GI capability based on current bandwidth

Fix the transmission is not sent with short GI under
some conditions even if the receiver supports short GI.
If VHT capability IE exists in the beacon, the original
code uses the short GI for 80M field as driver's short GI
setting for transmission, even the current bandwidth is
not 80MHz.

Short GI supported fields for 20M/40M are informed in HT
capability information element, and short GI supported
field for 80M is informed in VHT capability information
element.

These three fields may be set to different values.
Driver needs to record each short GI support field for
each bandwidth, and send correct info depends on current
bandwidth to the WiFi firmware.

Fixes: e3037485c68e ("rtw88: new Realtek 802.11ac driver")
Signed-off-by: Tsang-Shian Lin <thlin@realtek.com>
Signed-off-by: Yan-Hsuan Chuang <yhchuang@realtek.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Link: https://lore.kernel.org/r/20200717064937.27966-3-yhchuang@realtek.com
drivers/net/wireless/realtek/rtw88/main.c