]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
wifi: rtw88: Fix __rtw_download_firmware() for RTL8814AU
authorBitterblue Smith <rtl8821cerfe2@gmail.com>
Tue, 4 Feb 2025 18:36:56 +0000 (20:36 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 29 May 2025 09:13:35 +0000 (11:13 +0200)
[ Upstream commit 8425f5c8f04dbcf11ade78f984a494fc0b90e7a0 ]

Don't call ltecoex_read_reg() and ltecoex_reg_write() when the
ltecoex_addr member of struct rtw_chip_info is NULL. The RTL8814AU
doesn't have this feature.

Signed-off-by: Bitterblue Smith <rtl8821cerfe2@gmail.com>
Acked-by: Ping-Ke Shih <pkshih@realtek.com>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Link: https://patch.msgid.link/55b5641f-094e-4f94-9f79-ac053733f2cf@gmail.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/wireless/realtek/rtw88/mac.c

index ea6406df42b3df31363f306101367894955825c0..0491f501c138390859d8c4a0cf06b209290bea61 100644 (file)
@@ -785,7 +785,8 @@ static int __rtw_download_firmware(struct rtw_dev *rtwdev,
        if (!check_firmware_size(data, size))
                return -EINVAL;
 
-       if (!ltecoex_read_reg(rtwdev, 0x38, &ltecoex_bckp))
+       if (rtwdev->chip->ltecoex_addr &&
+           !ltecoex_read_reg(rtwdev, 0x38, &ltecoex_bckp))
                return -EBUSY;
 
        wlan_cpu_enable(rtwdev, false);
@@ -803,7 +804,8 @@ static int __rtw_download_firmware(struct rtw_dev *rtwdev,
 
        wlan_cpu_enable(rtwdev, true);
 
-       if (!ltecoex_reg_write(rtwdev, 0x38, ltecoex_bckp)) {
+       if (rtwdev->chip->ltecoex_addr &&
+           !ltecoex_reg_write(rtwdev, 0x38, ltecoex_bckp)) {
                ret = -EBUSY;
                goto dlfw_fail;
        }