8 votes

Problème de Realtek RTL8852AE sur Lenovo Legion 5 Pro 16ACH6 (Ubuntu 20.04)

J'ai un problème sur mon nouveau Lenovo Legion 5 Pro 16ach6 avec sa carte wifi : Realtek RTL8852AE - PCIe 2.0 avec ubuntu 20.04 et le noyau 5.12.9 (il fonctionne sous Windows 10).

J'ai suivi ce sujet : Pilote réseau pour Realtek 8852 20.10 mais Modeprobe ne trouve pas le module "rtw_8723de" (qui n'existe pas, je pense que c'est une erreur par rapport au dépôt rtw88) et les 2 .ko créés ne fonctionnent pas : rtw89core.ko ou rtw89pci.ko (on peut le voir dans le lspci).

J'ai essayé différents noyaux comme 5.8, 5.11, 5.12 mais j'ai le même problème. Ubuntu 20.04, 21.04, le dernier Manjaro avec gnome... Je pense que c'est ok dans le bios : j'ai désactivé secure boot et une protection AMD pour le CPU et aucun résultat ! Il y a une option avec des graphiques "discrets" et "dynamiques" mais à part un choix entre le chipset graphique AMD et la carte vidéo NVIDIA, je n'ai aucune différence.

Lorsque j'essaie cette solution : https://github.com/lwfinger/rtw89 J'ai ceci :

user@lenovo:~/Documents/git/rtw89$ make VERBOSE=1
make -C /lib/modules/5.12.9-051209-generic/build M=/home/user/Documents/git/rtw89 modules
make[1] : on entre dans le répertoire « /usr/src/linux-headers-5.12.9-051209-generic »
  CC [M]  /home/user/Documents/git/rtw89/core.o
  CC [M]  /home/user/Documents/git/rtw89/debug.o
  CC [M]  /home/user/Documents/git/rtw89/mac80211.o
  CC [M]  /home/user/Documents/git/rtw89/mac.o
  CC [M]  /home/user/Documents/git/rtw89/phy.o
  CC [M]  /home/user/Documents/git/rtw89/fw.o
  CC [M]  /home/user/Documents/git/rtw89/rtw8852a.o
  CC [M]  /home/user/Documents/git/rtw89/rtw8852a_table.o
  CC [M]  /home/user/Documents/git/rtw89/rtw8852a_rfk.o
  CC [M]  /home/user/Documents/git/rtw89/rtw8852a_rfk_table.o
  CC [M]  /home/user/Documents/git/rtw89/cam.o
  CC [M]  /home/user/Documents/git/rtw89/efuse.o
  CC [M]  /home/user/Documents/git/rtw89/regd.o
  CC [M]  /home/user/Documents/git/rtw89/coex.o
  CC [M]  /home/user/Documents/git/rtw89/ser.o
  CC [M]  /home/user/Documents/git/rtw89/pci.o
  LD [M]  /home/user/Documents/git/rtw89/rtw89pci.o
  LD [M]  /home/user/Documents/git/rtw89/rtw89core.o
  MODPOST /home/user/Documents/git/rtw89/Module.symvers
  CC [M]  /home/user/Documents/git/rtw89/rtw89core.mod.o
  CC [M]  /home/user/Documents/git/rtw89/rtw89pci.mod.o
  LD [M]  /home/user/Documents/git/rtw89/rtw89core.ko
  LD [M]  /home/user/Documents/git/rtw89/rtw89pci.ko
make[1] : on quitte le répertoire « /usr/src/linux-headers-5.12.9-051209-generic »
user@lenovo:~/Documents/git/rtw89$ sudo make install
make -C /lib/modules/5.12.9-051209-generic/build M=/home/user/Documents/git/rtw89 modules
make[1] : on entre dans le répertoire « /usr/src/linux-headers-5.12.9-051209-generic »
make[1] : on quitte le répertoire « /usr/src/linux-headers-5.12.9-051209-generic »
Install rtw89 SUCCESS
user@lenovo:~/Documents/git/rtw89$ sudo modprobe rtw_8723de
modprobe: FATAL: Module rtw_8723de not found in directory /lib/modules/5.12.9-051209-generic

user@lenovo:~/Documents/git/rtw89$ find /lib/modules/ -type f -name '*.ko*' | grep -i rtw
/lib/modules/5.4.0-74-generic/kernel/drivers/net/wireless/realtek/rtw88/rtw88.ko
/lib/modules/5.4.0-74-generic/kernel/drivers/net/wireless/realtek/rtw88/rtwpci.ko
/lib/modules/5.12.9-051209-generic/kernel/drivers/net/wireless/realtek/rtw89/rtw89core.ko
/lib/modules/5.12.9-051209-generic/kernel/drivers/net/wireless/realtek/rtw89/rtw89pci.ko
/lib/modules/5.12.9-051209-generic/kernel/drivers/net/wireless/realtek/rtw88/rtw88_8723de.ko
/lib/modules/5.12.9-051209-generic/kernel/drivers/net/wireless/realtek/rtw88/rtw88_pci.ko
/lib/modules/5.12.9-051209-generic/kernel/drivers/net/wireless/realtek/rtw88/rtw88_8821ce.ko
/lib/modules/5.12.9-051209-generic/kernel/drivers/net/wireless/realtek/rtw88/rtw88_8822be.ko
/lib/modules/5.12.9-051209-generic/kernel/drivers/net/wireless/realtek/rtw88/rtw88_8821c.ko
/lib/modules/5.12.9-051209-generic/kernel/drivers/net/wireless/realtek/rtw88/rtw88_core.ko
/lib/modules/5.12.9-051209-generic/kernel/drivers/net/wireless/realtek/rtw88/rtw88_8822ce.ko
/lib/modules/5.12.9-051209-generic/kernel/drivers/net/wireless/realtek/rtw88/rtw88_8723d.ko
/lib/modules/5.12.9-051209-generic/kernel/drivers/net/wireless/realtek/rtw88/rtw88_8822c.ko
/lib/modules/5.12.9-051209-generic/kernel/drivers/net/wireless/realtek/rtw88/rtw88_8822b.ko
user@lenovo:~/Documents/git/rtw89$ ls /lib/modules/5.12.9-051209-generic/kernel/drivers/net/wireless/realtek/rtw89
rtw89core.ko  rtw89pci.ko

Quelques informations :

lsb_release -a

No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.2 LTS
Release:        20.04
Codename:       focal

lspci -k -nn | grep -A 3 -i net

03:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 15)
        DeviceName: Realtek RTL8111E Ethernet LOM
        Subsystem: Lenovo RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [17aa:390b]
        Kernel driver in use: r8169
        Kernel modules: r8169
04:00.0 Network controller [0280]: Realtek Semiconductor Co., Ltd. Device [10ec:8852]
        Subsystem: Lenovo Device [17aa:4852]
        Kernel modules: rtw89pci
05:00.0 Non-Volatile memory controller [0108]: SK hynix Device [1c5c:174a]

sudo lshw -C network

  *-network
       description: Ethernet interface
       produit: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
       fabricant: Realtek Semiconductor Co., Ltd.
       identifiant matériel: 0
       information bus: pci@0000:03:00.0
       nom logique: eno1
       version: 15
       numéro de série: 38:f3:ab:dd:a5:07
       taille: 1Gbit/s
       capacité: 1Gbit/s
       bits: 64 bits
       horloge: 33MHz
       fonctionnalités: pm msi pciexpress msix bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
       configuration : autonegotiation=on broadcast=yes driver=r8169 driverversion=5.12.9-051209-generic duplex=full firmware=rtl8168h-2_0.0.2 02/26/15 ip=192.168.0.3 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s
       ressources : irq:40 portE/S:3000(taille=256) mémoire:d1804000-d1804fff mémoire:d1800000-d1803fff
  *-network NON-RÉCLAMÉ
       description: Network controller
       produit: Realtek Semiconductor Co., Ltd.
       fabricant: Realtek Semiconductor Co., Ltd.
       identifiant matériel: 0
       information bus: pci@0000:04:00.0
       version: 00
       bits: 64 bits
       horloge: 33MHz
       fonctionnalités: pm msi pciexpress cap_list
       configuration : latency=0
       ressources : portE/S:2000(taille=256) mémoire:d1700000-d17fffff

iwconfig

lo        no wireless extensions.

eno1      no wireless extensions.

ip a

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 38:f3:ab:dd:a5:07 brd ff:ff:ff:ff:ff:ff
    altname enp3s0
    inet 192.168.0.3/24 brd 192.168.0.255 scope global dynamic noprefixroute eno1
       valid_lft 32622sec preferred_lft 32622sec
    inet6 2a01:e0a:23a:a980:cec0:fa1:160e:8988/64 scope global temporary dynamic 
       valid_lft 86217sec preferred_lft 75715sec
    inet6 2a01:e0a:23a:a980:39d8:4631:d3a2:a9ec/64 scope global dynamic mngtmpaddr noprefixroute 
       valid_lft 86217sec preferred_lft 86217sec
    inet6 fe80::adc1:ed64:6a06:fbca/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

sudo rfkill list

0: ideapad_wlan: Wireless LAN
        Soft blocked: no
        Hard blocked: no
1: ideapad_bluetooth: Bluetooth
        Soft blocked: yes
        Hard blocked: no
2: hci0: Bluetooth
        Soft blocked: yes
        Hard blocked: no

Mise à jour Le journal :

    sudo modprobe rtw89pci
    sudo dmesg | grep rtw

    [    2.958542] rtw89core: loading out-of-tree module taints kernel.
    [    2.958647] rtw89core: module verification failed: signature and/or required key missing - tainting kernel
    [    2.961266] rtw89_pci 0000:04:00.0: Direct firmware load for rtw89/rtw8852a_fw.bin failed with error -2
    [    2.961270] rtw89_pci 0000:04:00.0: failed to request firmware
    [    2.961278] rtw89_pci 0000:04:00.0: enabling device (0000 -> 0003)
    [    2.964634] rtw89_pci 0000:04:00.0: failed to wait firmware completion
    [    2.964641] rtw89_pci 0000:04:00.0: failed to setup chip information
    [    2.965006] rtw89_pci: probe of 0000:04:00.0 failed with error -22

Mise à jour J'ai un double démarrage UEFI avec des partitions EFIs (je démarre sur Ubuntu EFI avec Grub). Le mode hibernation est désactivé sur Windows et j'éteins avec le mode redémarrage pour cela. Informations bios :

AMD Platform Security Processor : Enabled (If I disable that, I have nomore bluetooth and no wifi)
Device Guard : Disable
Secure boot : Disable
Secure boot status :  Disable
Platform Mode : User
Reset to setup mode
Restore Factory Keys

Mise à jour J'ai aussi essayé cette solution :

echo "blacklist ideapad_laptop" | sudo tee /etc/modprobe.d/ideapad.conf

Mise à jour Au démarrage d'Ubuntu, j'ai ces messages (rapidement) :

ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PCI0.PB2],
AE_NOT_FOUND (20210105/dswload2-162)
ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20210105/ps
object-220)
integrity: Problem loading X.509 certificate -65

Mise à jour 2 J'ai essayé toutes ces méthodes mais pas de wifi :

sudo dmesg | grep rtw
[    2.829383] rtw89core: loading out-of-tree module taints kernel.
[    2.829536] rtw89core: module verification failed: signature and/or required key missing - tainting kernel
[    2.847262] rtw89_pci 0000:04:00.0: enabling device (0000 -> 0003)
[    2.851754] RIP: 0010:rtw89_fw_download+0x9d/0xd0 [rtw89core]
[    2.851782]  ? hfc_func_en+0x61/0x70 [rtw89core]
[    2.851791]  ? rtw89_pci_probe+0x8e0/0xaa0 [rtw89pci]
[    2.851808]  ? rtw89_pci_driver_init+0x1/0x1000 [rtw89pci]

lsmod
Module                  Size  Used by
rfcomm                 81920  16
cmac                   16384  2
algif_hash             16384  1
algif_skcipher         16384  1
af_alg                 28672  6 algif_hash,algif_skcipher
bnep                   24576  2
nls_iso8859_1          16384  1
snd_hda_codec_realtek   135168  1
intel_rapl_msr         20480  0
snd_hda_codec_generic    81920  1 snd_hda_codec_realtek
intel_rapl_common      24576  1 intel_rapl_msr
ledtrig_audio          16384  1 snd_hda_codec_generic
snd_hda_codec_hdmi     61440  1
snd_hda_intel          53248  4
snd_intel_dspcfg       28672  1 snd_hda_intel
snd_intel_sdw_acpi     20480  1 snd_intel_dspcfg
snd_hda_codec         147456  4 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek
snd_hda_core           94208  5 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek
snd_hwdep              16384  1 snd_hda_codec
snd_pcm               114688  4 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_core
joydev                 24576  0
edac_mce_amd           32768  0
snd_seq_midi           20480  0
amdgpu               6086656  12
snd_seq_midi_event     16384  1 snd_seq_midi
snd_rawmidi            36864  1 snd_seq_midi
rtw89pci               36864  1
snd_seq                73728  2 snd_seq_midi,snd_seq_midi_event
rtw89core             507904  1 rtw89pci
kvm_amd               114688  0
nouveau              2023424  0
kvm                   847872  1 kvm_amd
crct10dif_pclmul       16384  1
mac80211             1015808  2 rtw89pci,rtw89core
ghash_clmulni_intel    16384  0
snd_seq_device         16384  3 snd_seq,snd_seq_midi,snd_rawmidi
btusb                  61440  0
iommu_v2               24576  1 amdgpu
snd_timer              40960  2 snd_seq,snd_pcm
gpu_sched              36864  1 amdgpu
btrtl                  24576  1 btusb
mxm_wmi                16384  1 nouveau
aesni_intel           376832  3
drm_ttm_helper         16384  2 amdgpu,nouveau
ttm                    73728  3 amdgpu,drm_ttm_helper,nouveau
btbcm                  16384  1 btusb
btintel                28672  1 btusb
crypto_simd            16384  1 aesni_intel
cryptd                 24576  3 crypto_simd,ghash_clmulni_intel
bluetooth             643072  41 btrtl,btintel,btbcm,bnep,btusb,rfcomm
snd                    94208  19 snd_hda_codec_generic,snd_seq,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek,snd_timer,snd_pcm,snd_rawmidi
drm_kms_helper        245760  2 amdgpu,nouveau
cfg80211              884736  2 rtw89core,mac80211
rapl                   20480  0
input_leds             16384  0
cec                    53248  1 drm_kms_helper
soundcore              16384  1 snd
ecdh_generic           16384  1 bluetooth
serio_raw              20480  0
rc_core                61440  1 cec
ecc                    32768  1 ecdh_generic
i2c_algo_bit           16384  2 amdgpu,nouveau
wmi_bmof               16384  0
fb_sys_fops            16384  1 drm_kms_helper
hid_multitouch         28672  0
efi_pstore             16384  0
libarc4                16384  1 mac80211
syscopyarea            16384  1 drm_kms_helper
sysfillrect            16384  1 drm_kms_helper
sysimgblt              16384  1 drm_kms_helper
ccp                    98304  1 kvm_amd
ucsi_acpi              16384  0
typec_ucsi             40960  1 ucsi_acpi
typec                  57344  1 typec_ucsi
cm32181                16384  0
mac_hid                16384  0
industrialio           77824  1 cm32181
sch_fq_codel           20480  2
parport_pc             45056  0
ppdev                  24576  0
lp                     20480  0
parport                65536  3 parport_pc,lp,ppdev
drm                   552960  10 gpu_sched,drm_kms_helper,amdgpu,drm_ttm_helper,ttm,nouveau
ip_tables              32768  0
x_tables               49152  1 ip_tables
autofs4                45056  2
usbhid                 57344  0
hid_generic            16384  0
crc32_pclmul           16384  0
nvme                   45056  4
r8169                  77824  0
ahci                   40960  0
xhci_pci               20480  0
i2c_piix4              28672  0
libahci                36864  1 ahci
xhci_pci_renesas       20480  1 xhci_pci
nvme_core             122880  6 nvme
realtek                32768  1
wmi                    32768  3 wmi_bmof,mxm_wmi,nouveau
video                  49152  1 nouveau
i2c_hid_acpi           16384  0
i2c_hid                28672  1 i2c_hid_acpi
hid                   135168  4 i2c_hid,usbhid,hid_multitouch,hid_generic

Mise à jour 3 Maintenant, lorsque je veux désactiver le module, je ne peux plus le faire si j'utilise la solution wget :

sudo modprobe rtw89pci 
Erreur de segmentation (core dumped) # segmentation fault
sudo modprobe -r rtw89pci 
modprobe: FATAL: Module rtw89pci is in use.

sudo dmesg | grep rtw
[    7.872266] rtw89core: loading out-of-tree module taints kernel.
[    7.872448] rtw89core: module verification failed: signature and/or required key missing - tainting kernel
[    7.873775] rtw89_pci 0000:04:00.0: enabling device (0000 -> 0003)
[    7.873934] rtw89_pci 0000:04:00.0: Direct firmware load for rtw89/rtw8852a_fw.bin failed with error -2
[    7.873936] rtw89_pci 0000:04:00.0: failed to request firmware
[    7.894681] rtw89_pci 0000:04:00.0: failed to wait firmware completion
[    7.894750] rtw89_pci 0000:04:00.0: failed to setup chip information
[    7.895129] rtw89_pci: probe of 0000:04:00.0 failed with error -22
[...]
[  155.313699] rtw89_pci 0000:04:00.0: loading /lib/firmware/rtw89/rtw8852a_fw.bin failed with error -20
[  155.313702] rtw89_pci 0000:04:00.0: Direct firmware load for rtw89/rtw8852a_fw.bin failed with error -20
[  155.313704] rtw89_pci 0000:04:00.0: failed to request firmware
[  155.315633] rtw89_pci 0000:04:00.0: MAC has already powered on
[  155.318235] rtw89_pci 0000:04:00.0: failed to wait firmware completion
[  155.318238] rtw89_pci 0000:04:00.0: failed to setup chip information
[  155.318552] rtw89_pci: probe of 0000:04:00.0 failed with error -22
[  517.524409] rtw89_pci 0000:04:00.0: MAC has already powered on
[  517.526061] RIP: 0010:rtw89_fw_download+0x8f/0xd0 [rtw89core]
[  517.526098]  ? rtw89_pci_probe+0x811/0xb40 [rtw89pci]

Mise à jour 3 Même chose pour la solution de copie du .bin (make) vers le fichier/lib/firmware/rtw89 :

sudo modprobe rtw89pci 
Erreur de segmentation (core dumped) # segmentation fault
sudo modprobe -r rtw89pci 
modprobe: FATAL: Module rtw89pci is in use.

sudo dmesg | grep rtw
[    2.980960] rtw89core: loading out-of-tree module taints kernel.
[    2.981072] rtw89core: module verification failed: signature and/or required key missing - tainting kernel
[    2.983024] rtw89_pci 0000:04:00.0: enabling device (0000 -> 0003)
[    2.983305] rtw89_pci 0000:04:00.0: Direct firmware load for rtw89/rtw8852a_fw.bin failed with error -2
[    2.983309] rtw89_pci 0000:04:00.0: failed to request firmware
[    2.990952] rtw89_pci 0000:04:00.0: failed to wait firmware completion
[    2.991009] rtw89_pci 0000:04:00.0: failed to setup chip information
[    2.991405] rtw89_pci: probe of 0000:04:00.0 failed with error -22
[...]
[  146.006476] rtw89_pci 0000:04:00.0: MAC has already powered on
[  146.008682] RIP: 0010:rtw89_fw_download+0x8f/0xd0 [rtw89core]
[  146.008697]  ? rtw89_pci_probe+0x810/0xb40 [rtw89pci]

Mise à jour 3 Désactiver le démarrage rapide sur Windows n'a pas fonctionné. J'ai utilisé un powercfg.exe /hibernate off pour désactiver ce mod à jamais (option disapear). Mais j'ai essayé d'activer cette option pour décocher l'option fast boot mais ça n'a rien changé.

Mise à jour 4 Ok j'ai supprimé une erreur au début de la session quand j'ai coché "Reset to setup mode" dans le bios. Mais pas de wifi. Après cela, j'ai réinstallé Ubuntu par sécurité et je reste sur le noyau 5.8.0.43 (il y a 2 noyaux avec la 20.04 : 5.8.0.55 par défaut ne fonctionne pas, pas de démarrage).

intégrité : Problème de chargement du certificat X.509 -65

Mise à jour 5 Beaucoup de personnes ont le même problème (sur arch principalement : pas de surprise car cela ne fonctionnait pas sur Manjaro). La conversation continue ici (je continue à vous informer s'il y a des nouvelles intéressantes) : https://github.com/lwfinger/rtw89/issues/2

Mise à jour 6 La nouvelle version de rtw89 fonctionne très bien pour Ubuntu 20.04 et 21.04. Problème résolu.

3voto

Ian Suttle Points 2225

Le module qui a été construit s'appelle rtw89pci.

LD [M] /home/user/Documents/git/rtw89/rtw89pci.ko

Essayez, s'il vous plaît :

sudo modprobe rtw89pci

Si votre système sans fil ne démarre pas immédiatement, vérifiez le journal :

sudo dmesg | grep rtw

Et affichez le résultat.

EDIT : Il vous manque le firmware requis :

Le chargement direct du firmware pour rtw89/rtw8852a_fw.bin a échoué avec l'erreur -2

En plus de l'excellente méthode de Jeremy dans son commentaire ci-dessus, je suggère :

sudo mkdir /lib/firmware/rtw89 
sudo cp ~/Documents/git/rtw89/rtw8852a_fw.bin /lib/firmware/rtw89 
sudo modprobe -r rtw89pci 
sudo modprobe rtw89pci

Y a-t-il une amélioration ?

0voto

Matthmatth03 Points 119

La nouvelle version de rtw89 fonctionne très bien pour Ubuntu 20.04 et 21.04. Problème résolu.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X