Public bug reported: SUMMARY On a Lenovo IdeaPad Slim 5 16AGP11 (MediaTek MT7925, driver mt7925e) in Canada, Ubuntu 26.04 can't connect to any Wi-Fi network whose access point advertises a Wi-Fi 7 Basic Multi-Link element. The kernel refuses every authentication attempt before a single frame is sent, and wpa_supplicant never falls back to a normal (non-MLO) connection. These networks are therefore unusable. About 30 other devices connect to the same access point without trouble, including other Ubuntu laptops. This laptop connects normally to networks that don't advertise a Multi-Link element. Cause, in short: the BIOS disables 802.11be (Wi-Fi 7) for Canada in its ACPI MTCL table, so mt7925e marks every channel NO_EHT. But mt7925e still advertises MLO support (WIPHY_FLAG_SUPPORTS_MLO), and its EHT capabilities stay advertised too. wpa_supplicant therefore requests an MLO authentication. mac80211 drops the connection to HE because of NO_EHT, stops seeing the AP's Multi-Link element, and rejects the request with "Rejecting MLO as it is not supported by AP". HARDWARE AND SOFTWARE - Lenovo IdeaPad Slim 5 16AGP11, machine type 83S2, BIOS TGCN13WW (02/28/2026) - MEDIATEK MT7925 802.11be PCIe [14c3:7925], subsystem Lenovo [17aa:e0ff], driver mt7925e - Ubuntu 26.04.1 LTS - Kernels: 7.0.0-30-generic (7.0.0-30.30, upstream 7.0.12) and 7.0.0-38-generic (7.0.0-38.38, upstream 7.0.14). Both are affected. - Firmware: linux-firmware-mediatek 20260319.git217ca6e4-0ubuntu1.2 (WM firmware build 20260605184805). The newer upstream build 20260813113118 fails the same way. - wpasupplicant 2:2.11-0ubuntu5, network-manager 1.54.3-2ubuntu3.1 - Regulatory domain: CA, set by the driver ("CTRL-EVENT-REGDOM-CHANGE init=DRIVER type=COUNTRY alpha2=CA") - Access point: a Wi-Fi 7 router with a Basic Multi-Link element on every SSID. <SSID-1> is a separate single-link MLD per band (5745 MHz and 2432 MHz). <SSID-2> is one 2-link MLD (link 0 on 5745 MHz, link 1 on 2432 MHz). STEPS TO REPRODUCE 1. Use this laptop (BIOS TGCN13WW) somewhere the regulatory country becomes CA ("iw reg get" shows "country CA"). 2. With the default NetworkManager + wpa_supplicant, connect to a Wi-Fi 7 access point that advertises a Multi-Link element (an MLO SSID, or a single-link MLD). 3. Watch "journalctl -f". EXPECTED RESULT The laptop connects: with MLO if Wi-Fi 7 is allowed, otherwise as a normal non-MLO Wi-Fi 6 (HE) connection. iwd does the latter on the same machine. ACTUAL RESULT No connection. Each BSS fails within about 60 ms: the kernel logs "regulatory prevented using AP config, downgraded" and "Rejecting MLO as it is not supported by AP", then wpa_supplicant logs "SME: Authentication request to the driver failed". No authentication frame is sent. wpa_supplicant ignore-lists the BSSID, tries the next one (again with MLO), and after that temporarily disables the network. This repeats on every attempt, on both kernels and with both firmware builds. LOGS (redacted) 7.0.0-38-generic, 2-link MLD SSID: [ 259.994810] wpa_supplicant[6403]: wlo1: SME: Trying to authenticate with <BSSID-2a> (SSID='<SSID-2>' freq=5745 MHz) [ 260.060118] kernel: wlo1: [link 0] regulatory prevented using AP config, downgraded [ 260.060318] kernel: wlo1: Rejecting MLO as it is not supported by AP [ 260.063602] wpa_supplicant[6403]: wlo1: SME: Authentication request to the driver failed [ 260.063628] wpa_supplicant[6403]: wlo1: Added BSSID <BSSID-2a> into ignore list, ignoring for 10 seconds [ 260.367503] wpa_supplicant[6403]: wlo1: SME: Trying to authenticate with <BSSID-2b> (SSID='<SSID-2>' freq=2432 MHz) [ 260.418124] kernel: wlo1: [link 1] regulatory prevented using AP config, downgraded [ 260.418326] kernel: wlo1: Rejecting MLO as it is not supported by AP [ 260.421295] wpa_supplicant[6403]: wlo1: SME: Authentication request to the driver failed [ 260.421316] wpa_supplicant[6403]: wlo1: Added BSSID <BSSID-2b> into ignore list, ignoring for 10 seconds 7.0.0-30-generic, SSID with a single-link MLD per band: [ 4.284069] kernel: mt7925e 0000:03:00.0: WM Firmware Version: ____000000, Build Time: 20260605184805 [ 9.670529] wpa_supplicant[1611]: wlo1: CTRL-EVENT-REGDOM-CHANGE init=DRIVER type=COUNTRY alpha2=CA [ 13.698595] wpa_supplicant[1611]: wlo1: SME: Trying to authenticate with <BSSID-1a> (SSID='<SSID-1>' freq=5745 MHz) [ 13.762101] kernel: wlo1: [link 0] regulatory prevented using AP config, downgraded [ 13.762266] kernel: wlo1: Rejecting MLO as it is not supported by AP [ 13.769397] wpa_supplicant[1611]: wlo1: SME: Authentication request to the driver failed [ 14.077020] wpa_supplicant[1611]: wlo1: SME: Trying to authenticate with <BSSID-1b> (SSID='<SSID-1>' freq=2432 MHz) [ 14.139096] kernel: wlo1: [link 0] regulatory prevented using AP config, downgraded [ 14.139250] kernel: wlo1: Rejecting MLO as it is not supported by AP [ 14.142303] wpa_supplicant[1611]: wlo1: SME: Authentication request to the driver failed 7.0.0-38-generic with upstream firmware build 20260813113118: the same sequence. Driver state while affected (7.0.0-30-generic): - "iw reg get": country CA: DFS-FCC, both global and for phy#0 - Channel flags read through nl80211: NO_EHT on 14/14 2.4 GHz, 28/28 5 GHz and 59/59 6 GHz channels; NO_HE on none - "iw phy": "EHT Iftypes: managed" is still listed in all three bands ANALYSIS (from the v7.0.12 source; the logic is the same in mainline v7.3-rc7, wireless-next and the mt76 tree) 1. mt792x_acpi_get_mtcl_conf() reads the BIOS ACPI MTCL v3 table. CA is in cc_list_be, and its 802.11be bits (4-5) are 0, so mt7925_regd_be_ctrl() sets dev->has_eht = false. The firmware's CLC BE_CTRL list is HK ZA IQ UA RU PK, without CA, so the restriction comes from the BIOS. 2. mt7925_regd_channel_update() then sets IEEE80211_CHAN_NO_EHT on every channel. 3. mt7925_init_mlo_caps() sets WIPHY_FLAG_SUPPORTS_MLO at registration, and nothing clears it. mt7925_init_eht_caps() returns early without clearing the EHT capabilities set earlier, so those stay advertised too. 4. wpa_supplicant sees MLO support and the AP's Multi-Link element, and requests an MLD authentication. 5. In mac80211, ieee80211_determine_chan_mode() lowers the mode from EHT to HE because of NO_EHT and re-parses the AP's elements without the Multi-Link element. ieee80211_prep_channel() then returns -EINVAL ("Rejecting MLO as it is not supported by AP"). 6. wpa_supplicant 2.11 has no fallback to a non-MLO connection for this case. Suggested fixes (sent upstream): mt7925 shouldn't advertise MLO or EHT while has_eht is false. mac80211 and/or wpa_supplicant should fall back to a non-MLO association when EHT can't be used on the channel. WORKAROUND Switch NetworkManager to the iwd backend. iwd 3.10 never requests MLO and connects as Wi-Fi 6 (HE, 80 MHz). sudo apt install iwd network-manager-iwd sudo systemctl mask --now wpa_supplicant /etc/iwd/main.conf (both lines were needed with this chip; the first keeps the wlo1 interface that the saved NetworkManager profiles are tied to, and the second avoids about 10% packet loss and about 380 ms latency with power save on): [DriverQuirks] DefaultInterface=mt7925e PowerSaveDisable=mt7925e /etc/NetworkManager/conf.d/90-wifi-backend-iwd.conf: [device] wifi.backend=iwd Then: sudo systemctl enable --now iwd sudo systemctl restart NetworkManager Note: with the iwd backend, NetworkManager only matched a WPA3-only (SAE) profile after its key-mgmt was changed to wpa-psk. iwd still uses SAE for it. UPSTREAM AND RELATED - Upstream report: linux-wireless@vger.kernel.org, <lore.kernel.org link> - Lenovo has been asked whether a BIOS update enables 802.11be for Canada in the MTCL table. - Related: LP: #2121342 (Enable Wi-Fi 7 MLO on MTK MT7925) - Not tested on a mainline kernel build; the relevant code is unchanged in v7.3-rc7. ProblemType: Bug DistroRelease: Ubuntu 26.04 Package: linux-image-7.0.0-30-generic 7.0.0-30.30 ProcVersionSignature: Ubuntu 7.0.0-30.30-generic 7.0.12 Uname: Linux 7.0.0-30-generic x86_64 ApportVersion: 2.34.1-0ubuntu0.1 Architecture: amd64 CasperMD5CheckResult: unknown CurrentDesktop: ubuntu:GNOME CurrentDmesg: Error: command ['pkexec', 'dmesg'] failed with exit code 1: skipped: root access not used when collecting this report Date: Fri Oct 16 12:31:24 2026 InstallationDate: Installed on 2026-10-15 (1 days ago) InstallationMedia: Ubuntu 26.04.1 LTS "Resolute Raccoon" - Release amd64 (20260826) MachineType: LENOVO 83S2 ProcEnviron: LANG=en_US.UTF-8 PATH=(custom, user) SHELL=/bin/bash XDG_RUNTIME_DIR=<set> ProcFB: 0 amdgpudrmfb ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-7.0.0-30-generic root=UUID=<uuid> ro quiet splash crashkernel=2G-4G:320M,4G-32G:512M,32G-64G:1024M,64G-128G:2048M,128G-:4096M SourcePackage: linux UpgradeStatus: No upgrade log present (probably fresh install) acpidump: Error: command ['pkexec', '/usr/share/apport/dump_acpi_tables.py'] failed with exit code 1: skipped: root access not used when collecting this report dmi.bios.date: 02/28/2026 dmi.bios.release: 1.13 dmi.bios.vendor: LENOVO dmi.bios.version: TGCN13WW dmi.board.asset.tag: NO Asset Tag dmi.board.name: LNVNB161216 dmi.board.vendor: LENOVO dmi.board.version: SDK0T76574 WIN dmi.chassis.asset.tag: NO Asset Tag dmi.chassis.type: 10 dmi.chassis.vendor: LENOVO dmi.chassis.version: IdeaPad Slim 5 16AGP11 dmi.ec.firmware.release: 1.13 dmi.modalias: dmi:bvnLENOVO:bvrTGCN13WW:bd02/28/2026:br1.13:efr1.13:svnLENOVO:pn83S2:pvrIdeaPadSlim516AGP11:rvnLENOVO:rnLNVNB161216:rvrSDK0T76574WIN:cvnLENOVO:ct10:cvrIdeaPadSlim516AGP11:skuLENOVO_MT_83S2_BU_idea_FM_IdeaPadSlim516AGP11:pfaIdeaPadSlim516AGP11: dmi.product.family: IdeaPad Slim 5 16AGP11 dmi.product.name: 83S2 dmi.product.sku: LENOVO_MT_83S2_BU_idea_FM_IdeaPad Slim 5 16AGP11 dmi.product.version: IdeaPad Slim 5 16AGP11 dmi.sys.vendor: LENOVO ** Affects: linux (Ubuntu) Importance: Undecided Status: New ** Tags: amd64 apport-bug resolute wayland-session -- You received this bug notification because you are subscribed to linux in Ubuntu. Matching subscriptions: Bgg, Bmail, Nb https://bugs.launchpad.net/bugs/2171313 Title: mt7925e can't connect to Wi-Fi 7 (MLO) access points when the BIOS disables 802.11be for the country (Canada) Status in linux package in Ubuntu: New Bug description: SUMMARY On a Lenovo IdeaPad Slim 5 16AGP11 (MediaTek MT7925, driver mt7925e) in Canada, Ubuntu 26.04 can't connect to any Wi-Fi network whose access point advertises a Wi-Fi 7 Basic Multi-Link element. The kernel refuses every authentication attempt before a single frame is sent, and wpa_supplicant never falls back to a normal (non-MLO) connection. These networks are therefore unusable. About 30 other devices connect to the same access point without trouble, including other Ubuntu laptops. This laptop connects normally to networks that don't advertise a Multi-Link element. Cause, in short: the BIOS disables 802.11be (Wi-Fi 7) for Canada in its ACPI MTCL table, so mt7925e marks every channel NO_EHT. But mt7925e still advertises MLO support (WIPHY_FLAG_SUPPORTS_MLO), and its EHT capabilities stay advertised too. wpa_supplicant therefore requests an MLO authentication. mac80211 drops the connection to HE because of NO_EHT, stops seeing the AP's Multi-Link element, and rejects the request with "Rejecting MLO as it is not supported by AP". HARDWARE AND SOFTWARE - Lenovo IdeaPad Slim 5 16AGP11, machine type 83S2, BIOS TGCN13WW (02/28/2026) - MEDIATEK MT7925 802.11be PCIe [14c3:7925], subsystem Lenovo [17aa:e0ff], driver mt7925e - Ubuntu 26.04.1 LTS - Kernels: 7.0.0-30-generic (7.0.0-30.30, upstream 7.0.12) and 7.0.0-38-generic (7.0.0-38.38, upstream 7.0.14). Both are affected. - Firmware: linux-firmware-mediatek 20260319.git217ca6e4-0ubuntu1.2 (WM firmware build 20260605184805). The newer upstream build 20260813113118 fails the same way. - wpasupplicant 2:2.11-0ubuntu5, network-manager 1.54.3-2ubuntu3.1 - Regulatory domain: CA, set by the driver ("CTRL-EVENT-REGDOM-CHANGE init=DRIVER type=COUNTRY alpha2=CA") - Access point: a Wi-Fi 7 router with a Basic Multi-Link element on every SSID. <SSID-1> is a separate single-link MLD per band (5745 MHz and 2432 MHz). <SSID-2> is one 2-link MLD (link 0 on 5745 MHz, link 1 on 2432 MHz). STEPS TO REPRODUCE 1. Use this laptop (BIOS TGCN13WW) somewhere the regulatory country becomes CA ("iw reg get" shows "country CA"). 2. With the default NetworkManager + wpa_supplicant, connect to a Wi-Fi 7 access point that advertises a Multi-Link element (an MLO SSID, or a single-link MLD). 3. Watch "journalctl -f". EXPECTED RESULT The laptop connects: with MLO if Wi-Fi 7 is allowed, otherwise as a normal non-MLO Wi-Fi 6 (HE) connection. iwd does the latter on the same machine. ACTUAL RESULT No connection. Each BSS fails within about 60 ms: the kernel logs "regulatory prevented using AP config, downgraded" and "Rejecting MLO as it is not supported by AP", then wpa_supplicant logs "SME: Authentication request to the driver failed". No authentication frame is sent. wpa_supplicant ignore-lists the BSSID, tries the next one (again with MLO), and after that temporarily disables the network. This repeats on every attempt, on both kernels and with both firmware builds. LOGS (redacted) 7.0.0-38-generic, 2-link MLD SSID: [ 259.994810] wpa_supplicant[6403]: wlo1: SME: Trying to authenticate with <BSSID-2a> (SSID='<SSID-2>' freq=5745 MHz) [ 260.060118] kernel: wlo1: [link 0] regulatory prevented using AP config, downgraded [ 260.060318] kernel: wlo1: Rejecting MLO as it is not supported by AP [ 260.063602] wpa_supplicant[6403]: wlo1: SME: Authentication request to the driver failed [ 260.063628] wpa_supplicant[6403]: wlo1: Added BSSID <BSSID-2a> into ignore list, ignoring for 10 seconds [ 260.367503] wpa_supplicant[6403]: wlo1: SME: Trying to authenticate with <BSSID-2b> (SSID='<SSID-2>' freq=2432 MHz) [ 260.418124] kernel: wlo1: [link 1] regulatory prevented using AP config, downgraded [ 260.418326] kernel: wlo1: Rejecting MLO as it is not supported by AP [ 260.421295] wpa_supplicant[6403]: wlo1: SME: Authentication request to the driver failed [ 260.421316] wpa_supplicant[6403]: wlo1: Added BSSID <BSSID-2b> into ignore list, ignoring for 10 seconds 7.0.0-30-generic, SSID with a single-link MLD per band: [ 4.284069] kernel: mt7925e 0000:03:00.0: WM Firmware Version: ____000000, Build Time: 20260605184805 [ 9.670529] wpa_supplicant[1611]: wlo1: CTRL-EVENT-REGDOM-CHANGE init=DRIVER type=COUNTRY alpha2=CA [ 13.698595] wpa_supplicant[1611]: wlo1: SME: Trying to authenticate with <BSSID-1a> (SSID='<SSID-1>' freq=5745 MHz) [ 13.762101] kernel: wlo1: [link 0] regulatory prevented using AP config, downgraded [ 13.762266] kernel: wlo1: Rejecting MLO as it is not supported by AP [ 13.769397] wpa_supplicant[1611]: wlo1: SME: Authentication request to the driver failed [ 14.077020] wpa_supplicant[1611]: wlo1: SME: Trying to authenticate with <BSSID-1b> (SSID='<SSID-1>' freq=2432 MHz) [ 14.139096] kernel: wlo1: [link 0] regulatory prevented using AP config, downgraded [ 14.139250] kernel: wlo1: Rejecting MLO as it is not supported by AP [ 14.142303] wpa_supplicant[1611]: wlo1: SME: Authentication request to the driver failed 7.0.0-38-generic with upstream firmware build 20260813113118: the same sequence. Driver state while affected (7.0.0-30-generic): - "iw reg get": country CA: DFS-FCC, both global and for phy#0 - Channel flags read through nl80211: NO_EHT on 14/14 2.4 GHz, 28/28 5 GHz and 59/59 6 GHz channels; NO_HE on none - "iw phy": "EHT Iftypes: managed" is still listed in all three bands ANALYSIS (from the v7.0.12 source; the logic is the same in mainline v7.3-rc7, wireless-next and the mt76 tree) 1. mt792x_acpi_get_mtcl_conf() reads the BIOS ACPI MTCL v3 table. CA is in cc_list_be, and its 802.11be bits (4-5) are 0, so mt7925_regd_be_ctrl() sets dev->has_eht = false. The firmware's CLC BE_CTRL list is HK ZA IQ UA RU PK, without CA, so the restriction comes from the BIOS. 2. mt7925_regd_channel_update() then sets IEEE80211_CHAN_NO_EHT on every channel. 3. mt7925_init_mlo_caps() sets WIPHY_FLAG_SUPPORTS_MLO at registration, and nothing clears it. mt7925_init_eht_caps() returns early without clearing the EHT capabilities set earlier, so those stay advertised too. 4. wpa_supplicant sees MLO support and the AP's Multi-Link element, and requests an MLD authentication. 5. In mac80211, ieee80211_determine_chan_mode() lowers the mode from EHT to HE because of NO_EHT and re-parses the AP's elements without the Multi-Link element. ieee80211_prep_channel() then returns -EINVAL ("Rejecting MLO as it is not supported by AP"). 6. wpa_supplicant 2.11 has no fallback to a non-MLO connection for this case. Suggested fixes (sent upstream): mt7925 shouldn't advertise MLO or EHT while has_eht is false. mac80211 and/or wpa_supplicant should fall back to a non-MLO association when EHT can't be used on the channel. WORKAROUND Switch NetworkManager to the iwd backend. iwd 3.10 never requests MLO and connects as Wi-Fi 6 (HE, 80 MHz). sudo apt install iwd network-manager-iwd sudo systemctl mask --now wpa_supplicant /etc/iwd/main.conf (both lines were needed with this chip; the first keeps the wlo1 interface that the saved NetworkManager profiles are tied to, and the second avoids about 10% packet loss and about 380 ms latency with power save on): [DriverQuirks] DefaultInterface=mt7925e PowerSaveDisable=mt7925e /etc/NetworkManager/conf.d/90-wifi-backend-iwd.conf: [device] wifi.backend=iwd Then: sudo systemctl enable --now iwd sudo systemctl restart NetworkManager Note: with the iwd backend, NetworkManager only matched a WPA3-only (SAE) profile after its key-mgmt was changed to wpa-psk. iwd still uses SAE for it. UPSTREAM AND RELATED - Upstream report: linux-wireless@vger.kernel.org, <lore.kernel.org link> - Lenovo has been asked whether a BIOS update enables 802.11be for Canada in the MTCL table. - Related: LP: #2121342 (Enable Wi-Fi 7 MLO on MTK MT7925) - Not tested on a mainline kernel build; the relevant code is unchanged in v7.3-rc7. ProblemType: Bug DistroRelease: Ubuntu 26.04 Package: linux-image-7.0.0-30-generic 7.0.0-30.30 ProcVersionSignature: Ubuntu 7.0.0-30.30-generic 7.0.12 Uname: Linux 7.0.0-30-generic x86_64 ApportVersion: 2.34.1-0ubuntu0.1 Architecture: amd64 CasperMD5CheckResult: unknown CurrentDesktop: ubuntu:GNOME CurrentDmesg: Error: command ['pkexec', 'dmesg'] failed with exit code 1: skipped: root access not used when collecting this report Date: Fri Oct 16 12:31:24 2026 InstallationDate: Installed on 2026-10-15 (1 days ago) InstallationMedia: Ubuntu 26.04.1 LTS "Resolute Raccoon" - Release amd64 (20260826) MachineType: LENOVO 83S2 ProcEnviron: LANG=en_US.UTF-8 PATH=(custom, user) SHELL=/bin/bash XDG_RUNTIME_DIR=<set> ProcFB: 0 amdgpudrmfb ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-7.0.0-30-generic root=UUID=<uuid> ro quiet splash crashkernel=2G-4G:320M,4G-32G:512M,32G-64G:1024M,64G-128G:2048M,128G-:4096M SourcePackage: linux UpgradeStatus: No upgrade log present (probably fresh install) acpidump: Error: command ['pkexec', '/usr/share/apport/dump_acpi_tables.py'] failed with exit code 1: skipped: root access not used when collecting this report dmi.bios.date: 02/28/2026 dmi.bios.release: 1.13 dmi.bios.vendor: LENOVO dmi.bios.version: TGCN13WW dmi.board.asset.tag: NO Asset Tag dmi.board.name: LNVNB161216 dmi.board.vendor: LENOVO dmi.board.version: SDK0T76574 WIN dmi.chassis.asset.tag: NO Asset Tag dmi.chassis.type: 10 dmi.chassis.vendor: LENOVO dmi.chassis.version: IdeaPad Slim 5 16AGP11 dmi.ec.firmware.release: 1.13 dmi.modalias: dmi:bvnLENOVO:bvrTGCN13WW:bd02/28/2026:br1.13:efr1.13:svnLENOVO:pn83S2:pvrIdeaPadSlim516AGP11:rvnLENOVO:rnLNVNB161216:rvrSDK0T76574WIN:cvnLENOVO:ct10:cvrIdeaPadSlim516AGP11:skuLENOVO_MT_83S2_BU_idea_FM_IdeaPadSlim516AGP11:pfaIdeaPadSlim516AGP11: dmi.product.family: IdeaPad Slim 5 16AGP11 dmi.product.name: 83S2 dmi.product.sku: LENOVO_MT_83S2_BU_idea_FM_IdeaPad Slim 5 16AGP11 dmi.product.version: IdeaPad Slim 5 16AGP11 dmi.sys.vendor: LENOVO To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2171313/+subscriptions
Комментариев нет:
Отправить комментарий