[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <97237da189ec42459ff92bf78d22592c@realtek.com>
Date: Tue, 25 Nov 2025 00:30:56 +0000
From: Ping-Ke Shih <pkshih@...ltek.com>
To: Bitterblue Smith <rtl8821cerfe2@...il.com>, Kalle Valo <kvalo@...nel.org>,
Chukun Pan <amadeus@....edu.cn>
CC: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-wireless@...r.kernel.org" <linux-wireless@...r.kernel.org>
Subject: RE: [PATCH 1/1] wifi: rtw88: 8822b: disable call trace when write RF
mode table fail
Bitterblue Smith <rtl8821cerfe2@...il.com> wrote:
> On 23/10/2023 11:21, Kalle Valo wrote:
> > Chukun Pan <amadeus@....edu.cn> writes:
> >
> >>> _Why_ is that warning printed? Are your devices uncalibrated or are they
> >>> somehow else special?
> >>
> >> I don't know, but not only my rtl8822be wifi module will have this call trace
> >> every time when the driver probes. This can be considered a common problem.
> >> So I prefer to disable this call trace and use the driver warning instead.
> >
> > Why do you say this is a common problem? AFAIK you are the only one
> > reporting this issue, right? It would help to understand _why_ you are
> > seeing this, ie. what's the root cause? Just randomly removing warnings
> > without understanding the root cause is frowned upon.
> >
>
> Finally I got some useful reports about this. Someone added a printk
> that shows the value of RF register 0x33 is 0xaeaea. This is why the
> WARNING is triggered. The value 0xaeaea hints that the chip is powered
> off.
>
> Then someone else provided a useful backtrace:
>
> [ 406.705972] ------------[ cut here ]------------
> [ 406.710517] WARNING: CPU: 0 PID: 10287 at
> backports-6.12.44/drivers/net/wireless/realtek/rtw88/rtw8822b.c:824 rtw8822b_set_antenna+0x3c/0x74
> [rtw88_8822b]
> [ 406.724296] write RF mode table fail
> [ 406.727768] Modules linked in: rtw88_8822cu(O) rtw88_8822c(O) rtw88_8822bu(O) rtw88_8822b(O) pppoe
> ppp_async wireguard rtw88_usb(O) rtw88_core(O) qcserial pppox ppp_generic option nft_fib_inet
> nf_flow_table_inet mac80211(O) libchacha20poly1305 ipt_REJECT cfg80211(O) xt_time xt_tcpudp xt_tcpmss
> xt_statistic xt_state xt_recent xt_policy xt_multiport xt_mark xt_mac xt_limit xt_length xt_hl xt_helper
> xt_esp xt_ecn xt_dscp xt_conntrack xt_connmark xt_connlimit xt_connbytes xt_comment xt_TCPMSS xt_LOG xt_HL
> xt_DSCP xt_CT xt_CLASSIFY xfrm_interface usb_wwan slhc rtc_ds1307 rndis_host rfcomm qmi_wwan poly1305_arm
> nft_xfrm nft_reject_ipv6 nft_reject_ipv4 nft_reject_inet nft_reject_bridge nft_reject nft_redir nft_quota
> nft_numgen nft_nat nft_meta_bridge nft_masq nft_log nft_limit nft_hash nft_flow_offload nft_fib_ipv6
> nft_fib_ipv4 nft_fib nft_ct nft_compat nft_chain_nat nf_tables nf_reject_ipv4 nf_nat nf_log_syslog
> nf_flow_table nf_conntrack_bridge nf_conncount mdio_netlink(O) lm75 libcurve25519_generic libcrc32c
> iptable_raw
> [ 406.728658] iptable_mangle iptable_filter ipt_ah ipt_ECN ip_tables hwmon hidp hci_uart crc_ccitt compat(O)
> chacha_neon cdc_ether btusb btrtl btmtk btintel bnep bluetooth act_connmark nf_conntrack nf_defrag_ipv6
> nf_defrag_ipv4 sch_tbf sch_ingress sch_htb sch_hfsc em_u32 cls_u32 cls_route cls_matchall cls_fw cls_flow
> cls_basic act_skbedit act_mirred act_gact configs hid ledtrig_pattern ledtrig_oneshot cryptodev(O) xt_set
> ip_set_list_set ip_set_hash_netportnet ip_set_hash_netport ip_set_hash_netnet ip_set_hash_netiface
> ip_set_hash_net ip_set_hash_mac ip_set_hash_ipportnet ip_set_hash_ipportip ip_set_hash_ipport
> ip_set_hash_ipmark ip_set_hash_ipmac ip_set_hash_ip ip_set_bitmap_port ip_set_bitmap_ipmac
> ip_set_bitmap_ip ip_set nfnetlink ip6table_mangle ip6table_filter ip6_tables ip6t_REJECT x_tables
> nf_reject_ipv6 swconfig qmi_wwan_q(O) usbnet cdc_wdm ip6_gre ip_gre gre ifb dummy ip6_vti ip_vti
> ip6_udp_tunnel udp_tunnel ipcomp6 xfrm6_tunnel esp6 ah6 xfrm4_tunnel ipcomp esp4 ah4 ipip ip6_tunnel tunnel6
> tunnel4 ip_tunnel vrf
> [ 406.818527] tun xfrm_user xfrm_ipcomp af_key xfrm_algo ecdh_generic ecc crypto_user algif_skcipher
> algif_rng algif_hash algif_aead af_alg sha512_arm sha1_generic sha1_arm md5 kpp echainiv ecb des_generic
> libdes cmac cbc authencesn authenc gpio_keys_polled ledtrig_transient fsl_mph_dr_of ehci_platform ehci_fsl
> microchip mii
> [ 406.937051] CPU: 0 PID: 10287 Comm: iw Tainted: G W O 6.6.104 #0
> [ 406.944163] Hardware name: Atmel SAMA5
> [ 406.947867] unwind_backtrace from show_stack+0x10/0x14
> [ 406.953043] show_stack from dump_stack_lvl+0x24/0x2c
> [ 406.958033] dump_stack_lvl from __warn+0x98/0xc0
> [ 406.962668] __warn from warn_slowpath_fmt+0x68/0x78
> [ 406.967561] warn_slowpath_fmt from rtw8822b_set_antenna+0x3c/0x74 [rtw88_8822b]
> [ 406.974877] rtw8822b_set_antenna [rtw88_8822b] from rtw_ops_set_antenna+0x4c/0x6c [rtw88_core]
> [ 406.983566] rtw_ops_set_antenna [rtw88_core] from ieee80211_set_antenna+0x34/0x5c [mac80211]
> [ 406.992524] ieee80211_set_antenna [mac80211] from nl80211_set_wiphy+0x37c/0x634 [cfg80211]
> [ 407.001418] nl80211_set_wiphy [cfg80211] from genl_rcv_msg+0x24c/0x390
> [ 407.008146] genl_rcv_msg from netlink_rcv_skb+0xb8/0x11c
> [ 407.013465] netlink_rcv_skb from genl_rcv+0x28/0x34
> [ 407.018358] genl_rcv from netlink_unicast+0x220/0x314
> [ 407.023423] netlink_unicast from netlink_sendmsg+0x1cc/0x434
> [ 407.029089] netlink_sendmsg from ____sys_sendmsg+0x1f0/0x284
> [ 407.034758] ____sys_sendmsg from ___sys_sendmsg+0x6c/0xa4
> [ 407.040165] ___sys_sendmsg from sys_sendmsg+0x44/0x74
> [ 407.045230] sys_sendmsg from ret_fast_syscall+0x0/0x54
>
> So I tried to run "iw phy5 set antenna all" on my computer. When the
> interface is UP this command fails with error -95. No WARNING.
>
> When the interface is DOWN this command succeeds but the WARNING
> appears because the chip is powered off.
So I think rtw8822b_config_trx_mode() should not be called by
rtw8822b_set_antenna() as chip is powered off.
Powered by blists - more mailing lists