I reproduced this on the same DUT (lenovo-thinkpad-p1-gen-8-c37972, testflinger
job
3042aaf4-0b6c-43b9-86f1-fbaf638e3ebb) and it looks like a firmware regression
rather than
a driver one: the same 7.0.0-43 kernel works when it loads the previous
firmware.
7.0 and 6.17 load different firmware files for this device:
- 7.0 uses the new "c<core>" file naming and BZ core 101 (upstream commits
5f708cccde9d
"wifi: iwlwifi: add a new FW file numbering scheme", 50d0cafec60c and
0d0e8149c6d7
"wifi: iwlwifi: bump core version for BZ/SC/DR"), so it loads
iwlwifi-bz-b0-fm-c0-c101.ucode = linux-firmware "core101-82" release,
101.6e695a70.0.
- 6.17.0-1033-oem loads the old-scheme iwlwifi-bz-b0-fm-c0-101.ucode =
linux-firmware
"core98-161" release, 101.6ef20b19.0 (the leading 101 is the API number in
both).
The A/B in the description therefore changes kernel and firmware at the
same time.
Test, all on 7.0.0-43-generic (7.0.0-43.43~24.04.1), op_mode iwlmld,
linux-firmware-intel-wireless 20240318.git3b128b60-0ubuntu3.1, reloading
iwlwifi each time:
A) default firmware (c101): FAIL
[ 98.633768] iwlwifi 0000:00:14.3: PCI dev 7740/00e0, rev=0x461,
rfid=0x20112200
[ 98.633770] iwlwifi 0000:00:14.3: Detected Intel(R) Wi-Fi 7 BE201 320MHz
[ 98.637625] iwlwifi 0000:00:14.3: loaded firmware version 101.6e695a70.0
bz-b0-fm-c0-c101.ucode op_mode iwlmld
[ 99.116900] iwlwifi 0000:00:14.3: Microcode SW error detected. Restarting
0x0.
[ 99.116971] iwlwifi 0000:00:14.3: Loaded firmware version: 101.6e695a70.0
bz-b0-fm-c0-c101.ucode
[ 99.116976] iwlwifi 0000:00:14.3: 0x00000071 | NMI_INTERRUPT_UMAC_FATAL
[ 99.116981] iwlwifi 0000:00:14.3: 0x000002F0 | trm_hw_status0
[ 99.116988] iwlwifi 0000:00:14.3: 0x002C3EAE | branchlink2
[ 99.116991] iwlwifi 0000:00:14.3: 0x002A402C | interruptlink1
[ 99.116997] iwlwifi 0000:00:14.3: 0x002A715E | data1
[ 99.117000] iwlwifi 0000:00:14.3: 0x00000010 | data2
[ 99.117035] iwlwifi 0000:00:14.3: 0x18480002 | board version
[ 99.117038] iwlwifi 0000:00:14.3: 0x8007FF05 | hcmd
3 microcode SW errors, PHY_CONFIGURATION_CMD fails, no wireless
interface.
B) iwlwifi-bz-b0-fm-c0-c101.ucode.zst moved out of
/lib/firmware/intel/iwlwifi/: PASS
[ 120.862409] iwlwifi 0000:00:14.3: PCI dev 7740/00e0, rev=0x461,
rfid=0x20112200
[ 120.862410] iwlwifi 0000:00:14.3: Detected Intel(R) Wi-Fi 7 BE201 320MHz
[ 120.862896] iwlwifi 0000:00:14.3: Direct firmware load for
iwlwifi-bz-b0-fm-c0-c101.ucode failed with error -2
[ 120.873327] iwlwifi 0000:00:14.3: Direct firmware load for
iwlwifi-bz-b0-fm-c0-c100.ucode failed with error -2
[ 120.873354] iwlwifi 0000:00:14.3: Direct firmware load for
iwlwifi-bz-b0-fm-c0-102.ucode failed with error -2
[ 120.878342] iwlwifi 0000:00:14.3: loaded firmware version 101.6ef20b19.0
bz-b0-fm-c0-101.ucode op_mode iwlmld
[ 121.524188] iwlwifi 0000:00:14.3 wlp0s20f3: renamed from wlan0
No SW errors, wlp0s20f3 registered, a scan returns 124 BSS.
So the 7.0 driver works with the core-98 firmware, and the core-101 firmware
asserts on
this SKU (8086:7740 subsystem 8086:00e0, BE201 320MHz). That matches the
cross-machine data
in the description: the 8086:00e4 L14 Gen 6 runs the same c101 file without
problems.
Upstream linux-firmware has a single version of c101 (core101-82), and 7.0
cannot load the
newer c102/c103 files that noble already ships.
Workaround: move /lib/firmware/intel/iwlwifi/iwlwifi-bz-b0-fm-c0-c101.ucode.zst
aside and
reload iwlwifi (or reboot); 7.0 then falls back to the core-98 file.
** Also affects: linux-firmware
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2173379
Title:
Intel BE201 fails firmware initialization with PHY_CONFIGURATION_CMD
error on linux-oem-24.04d 7.0.0-43
To manage notifications about this bug go to:
https://bugs.launchpad.net/linux-firmware/+bug/2173379/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs