[Kernel Issue] Problema wifi driver mt7921l

Good evening everyone I have a motherboard with integrated wifi ROG STRIX B550-F GAMING WIFI II
i have a problem that does not see the wifi only etherneth is working
as drivers are mt7921L
how can i install this driver?

inxi
System:
Kernel: 5.16.10-zen1-1-zen x86_64 bits: 64 compiler: gcc v: 11.2.0
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=f859bf01-c2f5-46c4-bad5-086e6cd013d6 rw [email protected]
quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0 loglevel=3
Desktop: KDE Plasma 5.24.2 tk: Qt 5.15.2 info: latte-dock wm: kwin_x11
vt: 1 dm: SDDM Distro: Garuda Linux base: Arch Linux
Machine:
Type: Desktop System: ASUS product: N/A v: N/A serial: <superuser required>
Mobo: ASUSTeK model: ROG STRIX B550-F GAMING WIFI II v: Rev X.0x
serial: <superuser required> UEFI: American Megatrends v: 0305
date: 08/13/2021
CPU:
Info: model: AMD Ryzen 7 5700G with Radeon Graphics bits: 64 type: MT MCP
arch: Zen 3 family: 0x19 (25) model-id: 0x50 (80) stepping: 0
microcode: 0xA50000C
Topology: cpus: 1x cores: 8 tpc: 2 threads: 16 smt: enabled cache:
L1: 512 KiB desc: d-8x32 KiB; i-8x32 KiB L2: 4 MiB desc: 8x512 KiB
L3: 16 MiB desc: 1x16 MiB
Speed (MHz): avg: 3235 high: 4285 min/max: 1400/4672 boost: enabled
scaling: driver: acpi-cpufreq governor: performance cores: 1: 3259 2: 2999
3: 3424 4: 3110 5: 3010 6: 2999 7: 2998 8: 4285 9: 2999 10: 3078 11: 2999
12: 3249 13: 3800 14: 3551 15: 3001 16: 3000 bogomips: 121596
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Vulnerabilities:
Type: itlb_multihit status: Not affected
Type: l1tf status: Not affected
Type: mds status: Not affected
Type: meltdown status: Not affected
Type: spec_store_bypass
mitigation: Speculative Store Bypass disabled via prctl
Type: spectre_v1
mitigation: usercopy/swapgs barriers and __user pointer sanitization
Type: spectre_v2 mitigation: Full AMD retpoline, IBPB: conditional,
IBRS_FW, STIBP: always-on, RSB filling
Type: srbds status: Not affected
Type: tsx_async_abort status: Not affected
Graphics:
Device-1: AMD Cezanne vendor: ASUSTeK driver: amdgpu v: kernel
bus-ID: 08:00.0 chip-ID: 1002:1638 class-ID: 0300
Device-2: Sunplus Innovation HD 720P webcam type: USB
driver: snd-usb-audio,uvcvideo bus-ID: 3-1.1:4 chip-ID: 1bcf:2701
class-ID: 0102 serial: <filter>
Display: x11 server: X.Org 1.21.1.3 compositor: kwin_x11 driver:
loaded: amdgpu,ati unloaded: modesetting alternate: fbdev,vesa
display-ID: :0 screens: 1
Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.0x11.2")
s-diag: 582mm (22.9")
Monitor-1: HDMI-A-0 res: 1920x1080 hz: 60 dpi: 93
size: 527x296mm (20.7x11.7") diag: 604mm (23.8")
OpenGL: renderer: AMD RENOIR (DRM 3.44.0 5.16.10-zen1-1-zen LLVM 13.0.1)
v: 4.6 Mesa 21.3.6 direct render: Yes
Audio:
Device-1: AMD Renoir Radeon High Definition Audio vendor: ASUSTeK
driver: snd_hda_intel v: kernel bus-ID: 08:00.1 chip-ID: 1002:1637
class-ID: 0403
Device-2: AMD Family 17h HD Audio vendor: ASUSTeK driver: snd_hda_intel
v: kernel bus-ID: 08:00.6 chip-ID: 1022:15e3 class-ID: 0403
Device-3: Sunplus Innovation HD 720P webcam type: USB
driver: snd-usb-audio,uvcvideo bus-ID: 3-1.1:4 chip-ID: 1bcf:2701
class-ID: 0102 serial: <filter>
Sound Server-1: ALSA v: k5.16.10-zen1-1-zen running: yes
Sound Server-2: PulseAudio v: 15.0 running: no
Sound Server-3: PipeWire v: 0.3.47 running: yes
Network:
Device-1: MEDIATEK driver: N/A port: N/A bus-ID: 05:00.0 chip-ID: 14c3:0608
class-ID: 0280
Device-2: Intel Ethernet I225-V vendor: ASUSTeK driver: igc v: kernel
port: N/A bus-ID: 06:00.0 chip-ID: 8086:15f3 class-ID: 0200
IF: enp6s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
Bluetooth:
Device-1: MediaTek Wireless_Device type: USB driver: btusb v: 0.8
bus-ID: 1-5:2 chip-ID: 0e8d:0608 class-ID: e001 serial: <filter>
Report: bt-adapter ID: hci0 rfk-id: 0 state: up address: <filter>
Drives:
Local Storage: total: 1.86 TiB used: 15.6 GiB (0.8%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/nvme0n1 maj-min: 259:1 vendor: Sabrent model: N/A
size: 953.87 GiB block-size: physical: 512 B logical: 512 B
speed: 31.6 Gb/s lanes: 4 type: SSD serial: <filter> rev: RKT343.4
temp: 26.9 C scheme: GPT
ID-2: /dev/nvme1n1 maj-min: 259:0 vendor: Sabrent model: N/A
size: 953.87 GiB block-size: physical: 512 B logical: 512 B
speed: 31.6 Gb/s lanes: 4 type: SSD serial: <filter> rev: RKT343.4
temp: 27.9 C scheme: GPT
Partition:
ID-1: / raw-size: 953.57 GiB size: 953.57 GiB (100.00%)
used: 15.6 GiB (1.6%) fs: btrfs dev: /dev/nvme1n1p2 maj-min: 259:3
ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
used: 576 KiB (0.2%) fs: vfat dev: /dev/nvme1n1p1 maj-min: 259:2
ID-3: /home raw-size: 953.57 GiB size: 953.57 GiB (100.00%)
used: 15.6 GiB (1.6%) fs: btrfs dev: /dev/nvme1n1p2 maj-min: 259:3
ID-4: /var/log raw-size: 953.57 GiB size: 953.57 GiB (100.00%)
used: 15.6 GiB (1.6%) fs: btrfs dev: /dev/nvme1n1p2 maj-min: 259:3
ID-5: /var/tmp raw-size: 953.57 GiB size: 953.57 GiB (100.00%)
used: 15.6 GiB (1.6%) fs: btrfs dev: /dev/nvme1n1p2 maj-min: 259:3
Swap:
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
ID-1: swap-1 type: zram size: 30.71 GiB used: 0 KiB (0.0%) priority: 100
dev: /dev/zram0
Sensors:
System Temperatures: cpu: N/A mobo: N/A gpu: amdgpu temp: 28.0 C
Fan Speeds (RPM): N/A
Info:
Processes: 390 Uptime: 0m wakeups: 0 Memory: 30.71 GiB
used: 2.39 GiB (7.8%) Init: systemd v: 250 tool: systemctl Compilers:
gcc: 11.2.0 clang: 13.0.1 Packages: pacman: 1424 lib: 354 Shell: fish
v: 3.3.1 default: Bash v: 5.1.16 running-in: konsole inxi: 3.3.12
Garuda (2.5.5-1):
System install date:     2022-02-22
Last full system update: 2022-02-22
Is partially upgraded:   No
Relevant software:       NetworkManager
Windows dual boot:       Probably (Run as root to verify)
Snapshots:               Snapper
Failed units:

A web search for this chip ID led here:

so, it's supported, it just needs some tweaking as outlined in the link above.

1 Like

Thank you so much could you help me how to do it I'm new on arch

The above link provides two file names and content to put in those files. Create the files and copy-paste the content. There's really not much more help I can provide.

1 Like

Thank you I try
Do I practically have to execute these commands?

sudo apt install build-essential flex bison
wget https://gitlab.com/jeremy53561/backports-11-26/-/raw/main/backports-5.15-rc6-1.tar.gz
tar -xvf backports-5.15-rc6-1.tar.gz
cd backports-5.15-rc6-1
make clean
make defconfig-wifi
make
sudo make install
cd /lib/firmware/mediatek
sudo wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/mediatek/WIFI_MT7961_patch_mcu_1_2_hdr.bin
sudo wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/mediatek/WIFI_RAM_CODE_MT7961_1.bin

No, that's not what I linked to! :confused:

Look at it again.

I can't figure out how to do it
not and that you could show me step by step how to do it
forgive me

  • In a terminal, type sudo micro and the filename at 1 (and to be clear, cat is a command, not the filename), then press enter.
  • Copy-paste the text at 2. Save the file and exit.
  • Use sudo micro with the filename at 3.
  • Copy-paste the text at 4. Save the file and exit.
  • Reboot.
3 Likes

I did as described but it still doesn't go :sleepy:

The answer @jonathon linked is a few months old, perhaps those files are no longer required on the newest mainline kernel. I would install and test the linux-mainline kernel as it's possible it may now have better support for your adapter.

To install the linux-mainline kernel and headers:

sudo pacman -Syu linux-mainline linux-mainline-headers

You can switch to the newly installed kernel after a reboot via the grub "Advanced" boot menu. After installing a new kernel it is best not to uninstall your old kernel. It is always best to have at least two kernels installed in case one kernel experiences a problem booting. The LTS kernel is the recommended choice to keep installed as a backup kernel.

If the kernel change doesn't help then I guess it's back to creating the udev/modprobe rules. This Archwiki contains an entry on your adapter with far simpler instructions to implement the workaround:

https://wiki.archlinux.org/title/AYA_NEO_2021

modprobe rule

echo alias pci:v000014C3d00000608sv*sd*bc*sc*i* mt7921e >> /etc/modprobe.d/rz608.conf

udev rule

echo SUBSYSTEM=="drivers", DEVPATH=="/bus/pci/drivers/mt7921e", ATTR{new_id}="14c3 0608" >> /etc/udev/rules.d/99-rz608.rules

Simply execute both of those commands as root (su to root) and the files will automagically be created for you, (then reboot).

4 Likes

Can confirm it's in 5.17rc5: kernel/git/torvalds/linux.git - Linux kernel source tree

(It's not in 5.16.10: pci.c « mt7921 « mt76 « mediatek « wireless « net « drivers - kernel/git/stable/linux.git - Linux kernel stable tree)

3 Likes

Also worth mentioning, this particular wifi card, the hardware and/or the driver, in both Windows and Linux, is notoriously buggy.

Why would Asus put a crappy Wifi card on a premium-ish laptop?? Supply shortage? Intel AX210/201 is better.

2 Likes

from the terminal I ran these commands but it gives me an error

[email protected] in ~
λ echo alias pci:v000014C3d00000608svsdbcsci* mt7921e >> /etc/modprobe.d/rz608.conf
fish: No matches for wildcard 'pci:v000014C3d00000608svsdbcsci*'. See help expand.
echo alias pci:v000014C3d00000608svsdbcsci* mt7921e >> /etc/modprobe.d/rz608.conf

roberto @ roberto in ~
λ sudo roberto @ roberto in ~
[:red_circle:] × sudo echo SUBSYSTEM == "drivers", DEVPATH == "/ bus / pci / drivers / mt7921e", ATTR {new_id} = "14c3 0608" >> /etc/udev/rules.d/99-rz608 .rules
warning: An error occurred while redirecting file '/etc/udev/rules.d/99-rz608.rules'
open: Permission denied

First of all I don't have a laptop but a desktop with ASUSTeK motherboard model: ROG STRIX B550-F GAMING WIFI II
then on windows also the band 6 works perfectly

This means you did not execute the command as "root" as I instructed you to do.

Do not use sudo, use su. Enter su in terminal first, then the root password, then run the commands.

I'm sorry you're right
So I ran the two commands as indicated, but I still can't see the wifi, only ethernet works

Your MOBO's Ethernet also has big issues and is not functional in Linux from other posts I'd read while searching your wifi.

ethernet works perfectly, I feel like drivers are missing wifi

You cannot grasp what is going on here. Your wifi to too new to have proper kernel support yet. The "driver" is included in the kernel. The kernels in general usage do not support this wifi adapter yet. Support is coming and is just around the corner.

Wait for kernel support to be added.

We are going around in circles here. There is nothing more to be done ATM. Nothing more can be added to this thread to resolve a lack a lack of kernel support. Research your purchase more carefully regarding full Linux support if you intend to run Linux.

I am closing this thread now as there is nothing further that can be done for you.

3 Likes