diff mbox series

[4/4] wifi: rtw88: 8821c: Fix false alarm count

Message ID 38e3d94e-0cab-4a43-be10-c15ff5387919@gmail.com (mailing list archive)
State Changes Requested
Delegated to: Kalle Valo
Headers show
Series [1/4] wifi: rtw88: 8821cu: Fix firmware upload fail | expand

Commit Message

Bitterblue Smith Feb. 27, 2024, 12:20 p.m. UTC
Make dm_info->total_fa_cnt the sum of cck_fa_cnt and ofdm_fa_cnt,
not just ofdm_fa_cnt.

Fixes: 960361238b86 ("rtw88: 8821c: add false alarm statistics")
Signed-off-by: Bitterblue Smith <rtl8821cerfe2@gmail.com>
---
 drivers/net/wireless/realtek/rtw88/rtw8821c.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Larry Finger Feb. 27, 2024, 10:46 p.m. UTC | #1
On 2/27/24 06:20, Bitterblue Smith wrote:
> Make dm_info->total_fa_cnt the sum of cck_fa_cnt and ofdm_fa_cnt,
> not just ofdm_fa_cnt.
> 
> Fixes: 960361238b86 ("rtw88: 8821c: add false alarm statistics")
> Signed-off-by: Bitterblue Smith <rtl8821cerfe2@gmail.com>
> ---
>   drivers/net/wireless/realtek/rtw88/rtw8821c.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/wireless/realtek/rtw88/rtw8821c.c b/drivers/net/wireless/realtek/rtw88/rtw8821c.c
> index 429bb420b056..fe5d8e188350 100644
> --- a/drivers/net/wireless/realtek/rtw88/rtw8821c.c
> +++ b/drivers/net/wireless/realtek/rtw88/rtw8821c.c
> @@ -773,9 +773,9 @@ static void rtw8821c_false_alarm_statistics(struct rtw_dev *rtwdev)
>   
>   	dm_info->cck_fa_cnt = cck_fa_cnt;
>   	dm_info->ofdm_fa_cnt = ofdm_fa_cnt;
> +	dm_info->total_fa_cnt = ofdm_fa_cnt;
>   	if (cck_enable)
>   		dm_info->total_fa_cnt += cck_fa_cnt;
> -	dm_info->total_fa_cnt = ofdm_fa_cnt;
>   
>   	crc32_cnt = rtw_read32(rtwdev, REG_CRC_CCK);
>   	dm_info->cck_ok_cnt = FIELD_GET(GENMASK(15, 0), crc32_cnt);

I applied these 4 patches to my rtw88 GitHub repo, and loaded rtw_core with the 
disable_lps_deep=y option. The option reduced the number of "firmware failed to 
leave lps state" messages, but did not eliminate all of them. The messages I 
received are as follows:

[ 2063.847153] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
[ 2450.120216] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2450.260201] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2450.732302] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2450.876190] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2451.032184] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2451.172250] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2761.250269] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
[ 2761.394131] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2761.746045] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2761.886039] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2762.026075] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2762.166072] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2762.638067] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2762.782031] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2762.922058] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2763.062037] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2763.546006] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2763.690060] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2763.830114] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2763.970031] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2764.462012] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2764.606051] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2764.750051] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2764.898056] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2765.374015] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2765.518056] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2765.658013] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2765.798044] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2766.278031] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2766.425991] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2766.569983] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2766.710038] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2767.118036] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2767.258004] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2767.398031] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2767.538005] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2767.990000] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2768.137991] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2768.277993] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2768.417978] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2768.881990] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2769.021983] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2769.170022] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2769.314019] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2769.770019] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2769.910022] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2770.050068] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2770.190023] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2770.677981] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2770.818013] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2770.961981] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2771.102006] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2771.585977] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2771.733996] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2771.885961] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2772.025998] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2772.493946] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2772.634003] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2772.773946] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2772.913996] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2773.373987] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2773.521989] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2773.661930] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2773.801954] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2774.261921] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2774.401913] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2774.541917] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2774.681913] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2775.141945] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2775.281929] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2775.421948] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2775.573943] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2776.049903] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2776.189937] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2776.333937] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2776.473910] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2776.957931] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2777.101908] rtw_8821cu 3-6:1.0: failed to get tx report from firmware
[ 2777.105937] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2777.253930] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2777.401931] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2777.869887] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2778.021909] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2778.173921] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2778.313893] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2778.769918] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2778.917883] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2779.069880] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2779.209898] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2779.673918] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2779.830113] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2779.969878] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2780.117875] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2780.581879] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2780.729880] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2780.881890] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2781.033915] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2781.509871] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2781.653894] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2781.793903] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2781.933866] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2782.397885] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2782.549862] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2782.697871] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2782.845881] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2783.301880] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2783.453859] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2783.601855] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2783.741888] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2784.205873] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2784.349847] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2784.489850] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2784.633852] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2785.093862] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2785.249887] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2785.393874] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2785.541861] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2786.009875] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2786.153841] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2786.293867] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2786.433865] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2786.893824] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2787.037830] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2787.177862] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2787.329859] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2787.813856] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2787.957844] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2788.097854] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2788.237835] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2788.653823] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2788.797856] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2788.941835] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 2789.085831] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 2789.741804] rtw_8821cu 3-6:1.0: failed to get tx report from firmware
[ 3090.791769] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 3090.935840] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 3091.075815] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 3091.215833] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 3235.830985] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
[ 3491.833226] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
[ 3785.811436] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
[ 4022.341835] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
[ 4022.481494] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4022.833492] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4022.973563] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4023.453532] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4023.597554] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4024.069501] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4024.213553] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4024.689549] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4024.829513] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4024.973477] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4025.121509] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4025.597496] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4025.737488] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4025.881539] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4026.025538] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4026.505547] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4026.649535] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4026.789538] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4026.929580] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4027.349506] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4027.489530] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4027.634007] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4027.773527] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4028.217496] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4028.361486] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4028.509490] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4028.649459] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4029.109520] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4029.249517] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4029.389451] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4029.529484] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4029.989474] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4030.133512] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4030.273510] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4030.425480] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4030.913485] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4031.053503] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4031.205437] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4031.349448] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4031.833471] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4031.981473] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4032.121453] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4032.265451] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4032.729499] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4032.873429] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4033.021489] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4033.173421] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4033.645425] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4033.793453] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4033.941448] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4034.081432] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4034.545482] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4034.689413] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4034.829413] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4034.969446] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4035.425414] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4035.569441] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4035.713473] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4035.853475] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4036.313473] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4036.453403] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4036.597469] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4036.745429] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4037.205441] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4037.345435] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4037.489409] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4037.629435] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4038.089418] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4038.229394] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4038.373412] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4038.517390] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4038.973419] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4039.117402] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4039.257423] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4039.409405] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4039.869419] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4040.009412] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4040.157397] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4040.313374] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4040.781399] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4040.921408] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4041.069405] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4041.217409] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4041.677402] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4041.817376] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4041.861392] rtw_8821cu 3-6:1.0: failed to get tx report from firmware
[ 4041.961431] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4042.101398] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4042.561368] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4042.717368] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4042.869377] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4043.009397] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4043.481354] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4043.637348] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4043.785386] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4043.941374] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4044.413371] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4044.557372] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4044.701351] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4044.845343] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4045.305389] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4045.457341] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4045.597377] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4045.741373] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4046.213370] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4046.357360] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4046.513373] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4046.657352] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4047.117350] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4047.261340] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4047.409353] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4047.557370] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4048.033365] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4048.177358] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4048.329341] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4048.477320] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4048.885326] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4049.033351] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4049.177351] rtw_8821cu 3-6:1.0: timed out to flush queue 1
[ 4049.321329] rtw_8821cu 3-6:1.0: timed out to flush queue 2
[ 4148.849033] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
[ 4166.832775] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
[ 4323.823755] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
[ 4453.846759] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
[ 4455.822861] rtw_8821cu 3-6:1.0: firmware failed to leave lps state

My system has now been up for about 4470 sec. Obviously these messages come in a 
burst.

Larry
Bitterblue Smith Feb. 28, 2024, 9:57 a.m. UTC | #2
On 28/02/2024 00:46, Larry Finger wrote:
> On 2/27/24 06:20, Bitterblue Smith wrote:
>> Make dm_info->total_fa_cnt the sum of cck_fa_cnt and ofdm_fa_cnt,
>> not just ofdm_fa_cnt.
>>
>> Fixes: 960361238b86 ("rtw88: 8821c: add false alarm statistics")
>> Signed-off-by: Bitterblue Smith <rtl8821cerfe2@gmail.com>
>> ---
>>   drivers/net/wireless/realtek/rtw88/rtw8821c.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/net/wireless/realtek/rtw88/rtw8821c.c b/drivers/net/wireless/realtek/rtw88/rtw8821c.c
>> index 429bb420b056..fe5d8e188350 100644
>> --- a/drivers/net/wireless/realtek/rtw88/rtw8821c.c
>> +++ b/drivers/net/wireless/realtek/rtw88/rtw8821c.c
>> @@ -773,9 +773,9 @@ static void rtw8821c_false_alarm_statistics(struct rtw_dev *rtwdev)
>>         dm_info->cck_fa_cnt = cck_fa_cnt;
>>       dm_info->ofdm_fa_cnt = ofdm_fa_cnt;
>> +    dm_info->total_fa_cnt = ofdm_fa_cnt;
>>       if (cck_enable)
>>           dm_info->total_fa_cnt += cck_fa_cnt;
>> -    dm_info->total_fa_cnt = ofdm_fa_cnt;
>>         crc32_cnt = rtw_read32(rtwdev, REG_CRC_CCK);
>>       dm_info->cck_ok_cnt = FIELD_GET(GENMASK(15, 0), crc32_cnt);
> 
> I applied these 4 patches to my rtw88 GitHub repo, and loaded rtw_core with the disable_lps_deep=y option. The option reduced the number of "firmware failed to leave lps state" messages, but did not eliminate all of them. The messages I received are as follows:
> 
> [ 2063.847153] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
> [ 2450.120216] rtw_8821cu 3-6:1.0: timed out to flush queue 2

[...]

> [ 4323.823755] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
> [ 4453.846759] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
> [ 4455.822861] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
> 
> My system has now been up for about 4470 sec. Obviously these messages come in a burst.
> 
> Larry
> 

I have never seen these. I guess you don't get these messages
without the patches? Can you see which patch causes this, please?
Larry Finger Feb. 28, 2024, 7:02 p.m. UTC | #3
On 2/28/24 03:57, Bitterblue Smith wrote:
> On 28/02/2024 00:46, Larry Finger wrote:
>> On 2/27/24 06:20, Bitterblue Smith wrote:
>>> Make dm_info->total_fa_cnt the sum of cck_fa_cnt and ofdm_fa_cnt,
>>> not just ofdm_fa_cnt.
>>>
>>> Fixes: 960361238b86 ("rtw88: 8821c: add false alarm statistics")
>>> Signed-off-by: Bitterblue Smith <rtl8821cerfe2@gmail.com>
>>> ---
>>>    drivers/net/wireless/realtek/rtw88/rtw8821c.c | 2 +-
>>>    1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/net/wireless/realtek/rtw88/rtw8821c.c b/drivers/net/wireless/realtek/rtw88/rtw8821c.c
>>> index 429bb420b056..fe5d8e188350 100644
>>> --- a/drivers/net/wireless/realtek/rtw88/rtw8821c.c
>>> +++ b/drivers/net/wireless/realtek/rtw88/rtw8821c.c
>>> @@ -773,9 +773,9 @@ static void rtw8821c_false_alarm_statistics(struct rtw_dev *rtwdev)
>>>          dm_info->cck_fa_cnt = cck_fa_cnt;
>>>        dm_info->ofdm_fa_cnt = ofdm_fa_cnt;
>>> +    dm_info->total_fa_cnt = ofdm_fa_cnt;
>>>        if (cck_enable)
>>>            dm_info->total_fa_cnt += cck_fa_cnt;
>>> -    dm_info->total_fa_cnt = ofdm_fa_cnt;
>>>          crc32_cnt = rtw_read32(rtwdev, REG_CRC_CCK);
>>>        dm_info->cck_ok_cnt = FIELD_GET(GENMASK(15, 0), crc32_cnt);
>>
>> I applied these 4 patches to my rtw88 GitHub repo, and loaded rtw_core with the disable_lps_deep=y option. The option reduced the number of "firmware failed to leave lps state" messages, but did not eliminate all of them. The messages I received are as follows:
>>
>> [ 2063.847153] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
>> [ 2450.120216] rtw_8821cu 3-6:1.0: timed out to flush queue 2
> 
> [...]
> 
>> [ 4323.823755] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
>> [ 4453.846759] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
>> [ 4455.822861] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
>>
>> My system has now been up for about 4470 sec. Obviously these messages come in a burst.
>>
>> Larry
>>
> 
> I have never seen these. I guess you don't get these messages
> without the patches? Can you see which patch causes this, please?

Bitterblue,

These warnings are not new, but probably only happen for some models of 8821CU.

When I get time, I will try to see if I can quiet them,

Larry
Bitterblue Smith Feb. 28, 2024, 9:54 p.m. UTC | #4
On 28/02/2024 21:02, Larry Finger wrote:
> On 2/28/24 03:57, Bitterblue Smith wrote:
>> On 28/02/2024 00:46, Larry Finger wrote:
>>> On 2/27/24 06:20, Bitterblue Smith wrote:
>>>> Make dm_info->total_fa_cnt the sum of cck_fa_cnt and ofdm_fa_cnt,
>>>> not just ofdm_fa_cnt.
>>>>
>>>> Fixes: 960361238b86 ("rtw88: 8821c: add false alarm statistics")
>>>> Signed-off-by: Bitterblue Smith <rtl8821cerfe2@gmail.com>
>>>> ---
>>>>    drivers/net/wireless/realtek/rtw88/rtw8821c.c | 2 +-
>>>>    1 file changed, 1 insertion(+), 1 deletion(-)
>>>>
>>>> diff --git a/drivers/net/wireless/realtek/rtw88/rtw8821c.c b/drivers/net/wireless/realtek/rtw88/rtw8821c.c
>>>> index 429bb420b056..fe5d8e188350 100644
>>>> --- a/drivers/net/wireless/realtek/rtw88/rtw8821c.c
>>>> +++ b/drivers/net/wireless/realtek/rtw88/rtw8821c.c
>>>> @@ -773,9 +773,9 @@ static void rtw8821c_false_alarm_statistics(struct rtw_dev *rtwdev)
>>>>          dm_info->cck_fa_cnt = cck_fa_cnt;
>>>>        dm_info->ofdm_fa_cnt = ofdm_fa_cnt;
>>>> +    dm_info->total_fa_cnt = ofdm_fa_cnt;
>>>>        if (cck_enable)
>>>>            dm_info->total_fa_cnt += cck_fa_cnt;
>>>> -    dm_info->total_fa_cnt = ofdm_fa_cnt;
>>>>          crc32_cnt = rtw_read32(rtwdev, REG_CRC_CCK);
>>>>        dm_info->cck_ok_cnt = FIELD_GET(GENMASK(15, 0), crc32_cnt);
>>>
>>> I applied these 4 patches to my rtw88 GitHub repo, and loaded rtw_core with the disable_lps_deep=y option. The option reduced the number of "firmware failed to leave lps state" messages, but did not eliminate all of them. The messages I received are as follows:
>>>
>>> [ 2063.847153] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
>>> [ 2450.120216] rtw_8821cu 3-6:1.0: timed out to flush queue 2
>>
>> [...]
>>
>>> [ 4323.823755] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
>>> [ 4453.846759] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
>>> [ 4455.822861] rtw_8821cu 3-6:1.0: firmware failed to leave lps state
>>>
>>> My system has now been up for about 4470 sec. Obviously these messages come in a burst.
>>>
>>> Larry
>>>
>>
>> I have never seen these. I guess you don't get these messages
>> without the patches? Can you see which patch causes this, please?
> 
> Bitterblue,
> 
> These warnings are not new, but probably only happen for some models of 8821CU.
> 
> When I get time, I will try to see if I can quiet them,
> 
> Larry
> 
 
Oh, so they are not caused by my patches. That's a relief.
Ping-Ke Shih Feb. 29, 2024, 3:53 a.m. UTC | #5
> -----Original Message-----
> From: Bitterblue Smith <rtl8821cerfe2@gmail.com>
> Sent: Tuesday, February 27, 2024 8:21 PM
> To: linux-wireless@vger.kernel.org
> Cc: Ping-Ke Shih <pkshih@realtek.com>
> Subject: [PATCH 4/4] wifi: rtw88: 8821c: Fix false alarm count
> 
> Make dm_info->total_fa_cnt the sum of cck_fa_cnt and ofdm_fa_cnt,
> not just ofdm_fa_cnt.
> 
> Fixes: 960361238b86 ("rtw88: 8821c: add false alarm statistics")
> Signed-off-by: Bitterblue Smith <rtl8821cerfe2@gmail.com>

Acked-by: Ping-Ke Shih <pkshih@realtek.com>
diff mbox series

Patch

diff --git a/drivers/net/wireless/realtek/rtw88/rtw8821c.c b/drivers/net/wireless/realtek/rtw88/rtw8821c.c
index 429bb420b056..fe5d8e188350 100644
--- a/drivers/net/wireless/realtek/rtw88/rtw8821c.c
+++ b/drivers/net/wireless/realtek/rtw88/rtw8821c.c
@@ -773,9 +773,9 @@  static void rtw8821c_false_alarm_statistics(struct rtw_dev *rtwdev)
 
 	dm_info->cck_fa_cnt = cck_fa_cnt;
 	dm_info->ofdm_fa_cnt = ofdm_fa_cnt;
+	dm_info->total_fa_cnt = ofdm_fa_cnt;
 	if (cck_enable)
 		dm_info->total_fa_cnt += cck_fa_cnt;
-	dm_info->total_fa_cnt = ofdm_fa_cnt;
 
 	crc32_cnt = rtw_read32(rtwdev, REG_CRC_CCK);
 	dm_info->cck_ok_cnt = FIELD_GET(GENMASK(15, 0), crc32_cnt);