]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
wifi: rtw88: sdio: use indirect IO for device registers before power-on
authorPing-Ke Shih <pkshih@realtek.com>
Thu, 24 Jul 2025 00:48:15 +0000 (08:48 +0800)
committerPing-Ke Shih <pkshih@realtek.com>
Tue, 12 Aug 2025 07:56:46 +0000 (15:56 +0800)
commit58de1f91e033b1fface8d8948984583125f93736
treeaa07d1f3a084f384375e4b2741e7aa0bfd8edeb3
parentd9104cec3e8fe4b458b74709853231385779001f
wifi: rtw88: sdio: use indirect IO for device registers before power-on

The register REG_SYS_CFG1 is used to determine chip basic information
as arguments of following flows, such as download firmware and load PHY
parameters, so driver read the value early (before power-on).

However, the direct IO is disallowed before power-on, or it causes wrong
values, which driver recognizes a chip as a wrong type RF_1T1R, but
actually RF_2T2R, causing driver warns:

  rtw88_8822cs mmc1:0001:1: unsupported rf path (1)

Fix it by using indirect IO before power-on.

Reported-by: Piotr Oniszczuk <piotr.oniszczuk@gmail.com>
Closes: https://lore.kernel.org/linux-wireless/699C22B4-A3E3-4206-97D0-22AB3348EBF6@gmail.com/T/#t
Suggested-by: Bitterblue Smith <rtl8821cerfe2@gmail.com>
Tested-by: Piotr Oniszczuk <piotr.oniszczuk@gmail.com>
Reviewed-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Link: https://patch.msgid.link/20250724004815.7043-1-pkshih@realtek.com
drivers/net/wireless/realtek/rtw88/sdio.c