我尝试了所有针对 Ubuntu 22.04 的答案。它们都不起作用。有没有更新的解决方案可以让这张 wifi 卡在 22.10 上工作?
lspci -nnk | grep 0280 -A3
02:00.0 Network controller [0280]: Realtek Semiconductor Co., Ltd. Device [10ec:b852]
Subsystem: Hewlett-Packard Company Device [103c:88e3]
Kernel modules: rtw_8852be
03:00.0 Non-Volatile memory controller [0108]: KIOXIA Corporation Device [1e0f:000c]
sudo dmesg | grep 8852
[ 0.548852] ACPI: \_SB_.PLTF.C005: Found 3 idle states
[ 2.264101] Bluetooth: hci0: RTL: examining hci_ver=0b hci_rev=000b lmp_ver=0b lmp_subver=8852
[ 2.267167] Bluetooth: hci0: RTL: loading rtl_bt/rtl8852bu_fw.bin
[ 2.268639] Bluetooth: hci0: RTL: loading rtl_bt/rtl8852bu_config.bin
[ 2.286661] rtw89_8852be 0000:02:00.0: Direct firmware load for rtw89/rtw8852b_fw.bin failed with error -2
[ 2.286668] rtw89_8852be 0000:02:00.0: failed to early request firmware: -2
[ 2.287095] rtw89_8852be 0000:02:00.0: enabling device (0000 -> 0003)
[ 2.287141] rtw89_8852be 0000:02:00.0: Direct firmware load for rtw89/rtw8852b_fw.bin failed with error -2
[ 2.287144] rtw89_8852be 0000:02:00.0: failed to request firmware
[ 2.293816] rtw89_8852be 0000:02:00.0: failed to wait firmware completion
[ 2.293851] rtw89_8852be 0000:02:00.0: failed to setup chip information
[ 2.294863] rtw89_8852be: probe of 0000:02:00.0 failed with error -22
进一步跟进:运行包括固件版本在内的代码后
sudo dmesg | grep 8852
[ 2.248613] Bluetooth: hci0: RTL: examining hci_ver=0b hci_rev=000b lmp_ver=0b lmp_subver=8852
[ 2.250594] Bluetooth: hci0: RTL: loading rtl_bt/rtl8852bu_fw.bin
[ 2.251694] Bluetooth: hci0: RTL: loading rtl_bt/rtl8852bu_config.bin
[ 2.338538] rtw89_8852be 0000:02:00.0: enabling device (0000 -> 0003)
[ 2.353915] rtw89_8852be 0000:02:00.0: Firmware version 67.84.89.80, cmd version 62, type 1
[ 2.358189] rtw89_8852be 0000:02:00.0: [ERR]invalid fw dynamic header len
[ 2.358229] rtw89_8852be 0000:02:00.0: parse fw header fail
[ 2.358249] rtw89_8852be 0000:02:00.0: [ERR]fwdl 0x1E0 = 0x1
[ 2.358266] rtw89_8852be 0000:02:00.0: [ERR]fwdl 0x83F2 = 0x0
[ 2.358290] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.358325] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.358355] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.358385] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.358418] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.358456] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.358485] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.358516] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.358547] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.358579] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.358608] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.358642] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900394
[ 2.358671] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.358699] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.358727] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb89003d8
[ 2.358756] rtw89_8852be 0000:02:00.0: failed to setup chip information
[ 2.359920] rtw89_8852be: probe of 0000:02:00.0 failed with error -22
更新2:
sudo dmesg | grep -e 8852 -e rtw
[ 1.088521] nvme nvme0: allocated 64 MiB host memory buffer.
[ 2.206277] rtw89core: loading out-of-tree module taints kernel.
[ 2.206547] rtw89core: module verification failed: signature and/or required key missing - tainting kernel
[ 2.280825] rtw89_8852be 0000:02:00.0: enabling device (0000 -> 0003)
[ 2.287852] rtw89_8852be 0000:02:00.0: Firmware version 67.84.89.80, cmd version 62, type 1
[ 2.287860] rtw89_8852be 0000:02:00.0: MAC has already powered on
[ 2.293461] rtw89_8852be 0000:02:00.0: [ERR]invalid fw dynamic header len
[ 2.293473] rtw89_8852be 0000:02:00.0: parse fw header fail
[ 2.293485] rtw89_8852be 0000:02:00.0: [ERR]fwdl 0x1E0 = 0x1
[ 2.293495] rtw89_8852be 0000:02:00.0: [ERR]fwdl 0x83F2 = 0x0
[ 2.293509] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb89002ec
[ 2.293530] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.293551] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.293571] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.293592] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.293613] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.293633] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.293654] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.293675] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900394
[ 2.293696] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.293716] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb890038c
[ 2.293737] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.293758] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.293779] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.293799] rtw89_8852be 0000:02:00.0: [ERR]fw PC = 0xb8900384
[ 2.293819] rtw89_8852be 0000:02:00.0: failed to setup chip information
[ 2.298531] rtw89_8852be: probe of 0000:02:00.0 failed with error -22
[ 2.309648] Bluetooth: hci0: RTL: examining hci_ver=0b hci_rev=000b lmp_ver=0b lmp_subver=8852
[ 2.312201] Bluetooth: hci0: RTL: loading rtl_bt/rtl8852bu_fw.bin
[ 2.312942] Bluetooth: hci0: RTL: loading rtl_bt/rtl8852bu_config.bin
答案1
请尝试:
cd rtw89
git checkout bea0ed7
make
sudo make install
sudo modprobe rtw_8852be
我还看到:
警告:编译器与用于构建内核的编译器不同
内核由以下编译器构建:x86_64-linux-gnu-gcc-12 (Ubuntu 12.2.0-3ubuntu1) 12.2.0 您正在使用:gcc-12 (Ubuntu 12.2.0-3ubuntu1) 12.2.0
请注意,版本实际上是相同的,12.2.0-3ubuntu1,并且这是一个警告,而不是错误。
编辑1:需要固件。从终端:
cd /usr/lib/firmware/rtw89
sudo wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/rtw89/rtw8852b_fw.bin
sudo modprobe -r rtw_8852be && sudo modprobe rtw_8852be
你的无线网络现在应该可以正常工作了。
编辑2:我注意到 git 存储库最近发生了一些变化;我怀疑无法在内核 5.19+ 上编译驱动程序的问题已经得到解决。我能够在自己的 5.19 系统上编译驱动程序,没有任何错误。
请执行以下操作:
sudo rm -r rtw89
git clone https://github.com/lwfinger/rtw89.git
cd rtw89
make
sudo make install
重新启动。发布任何错误以及:
sudo dmesg | grep -e 8852 -e rtw