At least it doesn’t for me. After some digging into the kernel code, it looks like a new mechanism (CLC, country location control) was implemented in the kernel driver for 6.7 (driver’s name is mt7921e), but it didn’t work at all for me.
Anyway, the solution on my system was to disable CLC like this:
echo "options mt7921_common disable_clc=1" | sudo tee /etc/modprobe.d/mt7921-kernel67-fix.conf
There are a ton of patches on the linux-wireless mailing list regarding the mt7921 and this mechanism, so maybe this will be fixed in later releases.
Same issue, but this fix didn’t work for me. I’m not sure how long wifi 6 hasn’t been working.
I have 2 kernels installed (stock and custom). Tried booting into each, but to no avail.
When I look at the band options in iw and nmcli, I only have a(5g) and b/g (2.4)
nmcli and iw detects my wifi 6 network, but reports it to be on channel 0. In my router config, I have set the wifi channel to 165, but it still reports as 0. I’ve tried renaming/separating my wifi 6 network in router settings, tried to connect using iw and nmcli in terminal and both fail with a network not found error.
I’ve tried for weeks searching for a solution to this, but the results are very limited. I would really appreciate some help with this.
I figured it out.
Even though you can set your region with sudo iw reg set US
and it appears to be set when I checked. I found that in /sys/module/cfg80211/parameters/ieee80211_regdom
it was set to world (00)
Using the aforementioned echo "options mt7921_common disable_clc=1" | sudo tee /etc/modprobe.d/mt7921-kernel67-fix.conf
Didn’t seem to do anything to help
Using echo "options cfg80211 ieee80211_regdom=US" | sudo tee /etc/modprobe.d/mt7921-kernel67-fix.conf
and then reboot
Did the trick
Not sure why the region isn’t getting set correctly, but this has survived several reboots.
Hope this helps someone else.