wifi: rtl8xxxu: Fix off by one initial RTS rate
authorBitterblue Smith <rtl8821cerfe2@gmail.com>
Tue, 2 Jan 2024 19:33:07 +0000 (21:33 +0200)
committerKalle Valo <kvalo@kernel.org>
Wed, 10 Jan 2024 14:55:37 +0000 (16:55 +0200)
commit80850ca041f2c7ee28fa5e47c5c1b106415f099f
tree2321e9d2b4b74791fb0df779d119072f43ffb53a
parent9475cc7ac31503521af95e38151e9d856e8ff30b
wifi: rtl8xxxu: Fix off by one initial RTS rate

rtl8xxxu_set_basic_rates() sets the wrong initial RTS rate. It sets the
next higher rate than the one it should set, e.g. 36M instead of 24M.

The while loop was supposed to find the index of the most significant
bit which is 1, but it was copied incorrectly from the vendor driver.
Use __fls() instead.

Signed-off-by: Bitterblue Smith <rtl8821cerfe2@gmail.com>
Reviewed-by: Ping-Ke Shih <pkshih@realtek.com>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://msgid.link/761e6836-6cd6-4930-91b6-0446834655c5@gmail.com
drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c