You are not logged in.

#1 2019-12-16 10:18:10

sha1sum
Member
Registered: 2019-12-14
Posts: 5

[WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

Adapter: Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW), REV=0x338
Using vanilla kernel: 5.4.3-arch1-1

No wifi adapter showing up:

# 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: enp0s13f0u3u2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 34:48:ed:73:7b:4d brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.71/24 brd 192.168.1.255 scope global dynamic noprefixroute enp0s13f0u3u2
       valid_lft 85249sec preferred_lft 85249sec
    inet6 fe80::658b:476:3530:da11/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

iwlwifi module seems to be loaded:

# cat /proc/modules|grep iwlwifi
iwlwifi 372736 1 iwlmvm, Live 0xffffffffc0cfc000
cfg80211 851968 3 iwlmvm,mac80211,iwlwifi, Live 0xffffffffc0bf5000

# lspci -nnk  
00:14.3 Network controller [0280]: Intel Corporation Killer Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW) [8086:34f0] (rev 30)
        Subsystem: Bigfoot Networks, Inc. Killer Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW) [1a56:1651]
        Kernel driver in use: iwlwifi
        Kernel modules: iwlwifi

Firmware fails to load:

# dmesg|grep iwlwifi
[   16.948351] iwlwifi 0000:00:14.3: enabling device (0000 -> 0002)
[   16.949538] iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-Qu-b0-hr-b0-50.ucode failed with error -2
[   16.949551] iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-Qu-b0-hr-b0-49.ucode failed with error -2
[   16.951181] iwlwifi 0000:00:14.3: TLV_FW_FSEQ_VERSION: FSEQ Version: 43.2.23.17
[   16.951184] iwlwifi 0000:00:14.3: Found debug destination: EXTERNAL_DRAM
[   16.951185] iwlwifi 0000:00:14.3: Found debug configuration: 0
[   16.951413] iwlwifi 0000:00:14.3: loaded firmware version 48.4fa0041f.0 op_mode iwlmvm
[   17.057271] iwlwifi 0000:00:14.3: Detected Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW), REV=0x338
[   17.064181] iwlwifi 0000:00:14.3: Applying debug destination EXTERNAL_DRAM
[   17.064729] iwlwifi 0000:00:14.3: Allocated 0x00400000 bytes for firmware monitor.
[   18.081301] iwlwifi 0000:00:14.3: Collecting data: trigger 15 fired.
[   18.081512] iwlwifi 0000:00:14.3: Start IWL Error Log Dump:
[   18.081557] iwlwifi 0000:00:14.3: Status: 0x00000000, count: 805152605
[   18.081593] iwlwifi 0000:00:14.3: Loaded firmware version: 48.4fa0041f.0
[   18.081642] iwlwifi 0000:00:14.3: 0x39E36DE5 | ADVANCED_SYSASSERT          
[   18.081702] iwlwifi 0000:00:14.3: 0xD80188D9 | trm_hw_status0
[   18.081749] iwlwifi 0000:00:14.3: 0xB457195D | trm_hw_status1
[   18.081797] iwlwifi 0000:00:14.3: 0xE3F2F31A | branchlink2
[   18.081841] iwlwifi 0000:00:14.3: 0xDE5D7E8D | interruptlink1
[   18.081890] iwlwifi 0000:00:14.3: 0x05488234 | interruptlink2
[   18.081985] iwlwifi 0000:00:14.3: 0xFB0C235E | data1
[   18.082026] iwlwifi 0000:00:14.3: 0x76FE92B7 | data2
[   18.082065] iwlwifi 0000:00:14.3: 0xB3FAF5FF | data3
[   18.082107] iwlwifi 0000:00:14.3: 0xDAC28743 | beacon time
[   18.082153] iwlwifi 0000:00:14.3: 0x900BB90F | tsf low
[   18.082191] iwlwifi 0000:00:14.3: 0xF6D78FD4 | tsf hi
[   18.082229] iwlwifi 0000:00:14.3: 0x5FFD1BAF | time gp1
[   18.082265] iwlwifi 0000:00:14.3: 0x72A32AA7 | time gp2
[   18.082301] iwlwifi 0000:00:14.3: 0x000110E4 | uCode revision type
[   18.082343] iwlwifi 0000:00:14.3: 0x9BBB8DB9 | uCode version major
[   18.082384] iwlwifi 0000:00:14.3: 0xFEAFBE58 | uCode version minor
[   18.082426] iwlwifi 0000:00:14.3: 0x60681470 | hw version
[   18.082463] iwlwifi 0000:00:14.3: 0x00970067 | board version
[   18.082501] iwlwifi 0000:00:14.3: 0x13063C0A | hcmd
[   18.082535] iwlwifi 0000:00:14.3: 0xB66F3FE7 | isr0
[   18.082569] iwlwifi 0000:00:14.3: 0x46EFFEEB | isr1
[   18.082602] iwlwifi 0000:00:14.3: 0x001A91AC | isr2
[   18.082645] iwlwifi 0000:00:14.3: 0x1187024B | isr3
[   18.082668] iwlwifi 0000:00:14.3: 0xF93FF65F | isr4
[   18.082691] iwlwifi 0000:00:14.3: 0x46AA9C9D | last cmd Id
[   18.082716] iwlwifi 0000:00:14.3: 0x2991DDD3 | wait_event
[   18.082741] iwlwifi 0000:00:14.3: 0x170F004B | l2p_control
[   18.082765] iwlwifi 0000:00:14.3: 0x6C824F70 | l2p_duration
[   18.082790] iwlwifi 0000:00:14.3: 0x63B228E1 | l2p_mhvalid
[   18.082816] iwlwifi 0000:00:14.3: 0xC5B20CB2 | l2p_addr_match
[   18.082842] iwlwifi 0000:00:14.3: 0x19639834 | lmpm_pmg_sel
[   18.082867] iwlwifi 0000:00:14.3: 0x275FFFBC | timestamp
[   18.082894] iwlwifi 0000:00:14.3: 0x99FDCA63 | flow_handler
[   18.083000] iwlwifi 0000:00:14.3: Start IWL Error Log Dump:
[   18.083026] iwlwifi 0000:00:14.3: Status: 0x00000000, count: 7
[   18.083053] iwlwifi 0000:00:14.3: 0x201013F1 | ADVANCED_SYSASSERT
[   18.083080] iwlwifi 0000:00:14.3: 0x00000000 | umac branchlink1
[   18.083107] iwlwifi 0000:00:14.3: 0xC008D49C | umac branchlink2
[   18.083134] iwlwifi 0000:00:14.3: 0x00000000 | umac interruptlink1
[   18.084243] iwlwifi 0000:00:14.3: 0x00000000 | umac interruptlink2
[   18.085563] iwlwifi 0000:00:14.3: 0x00000003 | umac data1
[   18.087036] iwlwifi 0000:00:14.3: 0x02000300 | umac data2
[   18.088471] iwlwifi 0000:00:14.3: 0x01300504 | umac data3
[   18.089698] iwlwifi 0000:00:14.3: 0x00000030 | umac major
[   18.091625] iwlwifi 0000:00:14.3: 0x4FA0041F | umac minor
[   18.092755] iwlwifi 0000:00:14.3: 0x00006134 | frame pointer
[   18.094055] iwlwifi 0000:00:14.3: 0xC0887F58 | stack pointer
[   18.095260] iwlwifi 0000:00:14.3: 0x00000000 | last host cmd
[   18.096678] iwlwifi 0000:00:14.3: 0x00000000 | isr status reg
[   18.097792] iwlwifi 0000:00:14.3: Fseq Registers:
[   18.099337] iwlwifi 0000:00:14.3: 0x00000003 | FSEQ_ERROR_CODE
[   18.100746] iwlwifi 0000:00:14.3: 0x00290033 | FSEQ_TOP_INIT_VERSION
[   18.102219] iwlwifi 0000:00:14.3: 0x00000000 | FSEQ_CNVIO_INIT_VERSION
[   18.103675] iwlwifi 0000:00:14.3: 0x0000A481 | FSEQ_OTP_VERSION
[   18.105075] iwlwifi 0000:00:14.3: 0x00000003 | FSEQ_TOP_CONTENT_VERSION
[   18.106463] iwlwifi 0000:00:14.3: 0x4552414E | FSEQ_ALIVE_TOKEN
[   18.107817] iwlwifi 0000:00:14.3: 0x02000300 | FSEQ_CNVI_ID
[   18.109191] iwlwifi 0000:00:14.3: 0x01300504 | FSEQ_CNVR_ID
[   18.110460] iwlwifi 0000:00:14.3: 0x02000300 | CNVI_AUX_MISC_CHIP
[   18.111762] iwlwifi 0000:00:14.3: 0x01300504 | CNVR_AUX_MISC_CHIP
[   18.113055] iwlwifi 0000:00:14.3: 0x05B0905B | CNVR_SCU_SD_REGS_SD_REG_DIG_DCDC_VTRIM
[   18.114396] iwlwifi 0000:00:14.3: 0x0000025B | CNVR_SCU_SD_REGS_SD_REG_ACTIVE_VDIG_MIRROR
[   18.115813] iwlwifi 0000:00:14.3: SecBoot CPU1 Status: 0x6084, CPU2 Status: 0x3
[   18.116709] iwlwifi 0000:00:14.3: Failed to start RT ucode: -110
[   18.117903] iwlwifi 0000:00:14.3: Firmware not running - cannot dump error
[   18.130815] iwlwifi 0000:00:14.3: Failed to run INIT ucode: -110

Related issue: https://bugs.archlinux.org/task/64703
Related posts:
https://bbs.archlinux.org/viewtopic.php?id=251122

Replacing the firmware files with newer version:

rm /lib/firmare/iwlwifi-*
wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/snapshot/linux-firmware-20191215.tar.gz
tar xfz linux-firmware-20191215.tar.gz
cp linux-firmware-20191215/iwlwifi-*.ucode /lib/firmware

Rebooted, same issue:

[   19.067556] iwlwifi 0000:00:14.3: Collecting data: trigger 15 fired.
[   19.068032] iwlwifi 0000:00:14.3: Start IWL Error Log Dump:
[   19.068035] iwlwifi 0000:00:14.3: Status: 0x00000000, count: 805135709
[   19.068036] iwlwifi 0000:00:14.3: Loaded firmware version: 48.4fa0041f.0
[   19.068037] iwlwifi 0000:00:14.3: 0x39E36DD7 | ADVANCED_SYSASSERT          
[   19.068038] iwlwifi 0000:00:14.3: 0x9A01C2D1 | trm_hw_status0
[   19.068039] iwlwifi 0000:00:14.3: 0xB4CD3C5D | trm_hw_status1
[   19.068040] iwlwifi 0000:00:14.3: 0xA3EEF3FE | branchlink2
[   19.068041] iwlwifi 0000:00:14.3: 0xDE5D7EA5 | interruptlink1
[   19.068042] iwlwifi 0000:00:14.3: 0x85488234 | interruptlink2
[   19.068043] iwlwifi 0000:00:14.3: 0xFBB42116 | data1
[   19.068044] iwlwifi 0000:00:14.3: 0xF3FE92B3 | data2
[   19.068045] iwlwifi 0000:00:14.3: 0xB3A8F5FF | data3
[   19.068047] iwlwifi 0000:00:14.3: 0xDAA28781 | beacon time
[   19.068047] iwlwifi 0000:00:14.3: 0x892B2902 | tsf low
[   19.068048] iwlwifi 0000:00:14.3: 0xFBD78FA4 | tsf hi
[   19.068049] iwlwifi 0000:00:14.3: 0x76FF1BAF | time gp1
[   19.068050] iwlwifi 0000:00:14.3: 0x720322AC | time gp2
[   19.068051] iwlwifi 0000:00:14.3: 0x040118C2 | uCode revision type
[   19.068052] iwlwifi 0000:00:14.3: 0x8BB8ACB9 | uCode version major
[   19.068053] iwlwifi 0000:00:14.3: 0xFEAFBE57 | uCode version minor
[   19.068054] iwlwifi 0000:00:14.3: 0x63681470 | hw version
[   19.068055] iwlwifi 0000:00:14.3: 0x11870067 | board version
[   19.068055] iwlwifi 0000:00:14.3: 0x12861C1A | hcmd
[   19.068056] iwlwifi 0000:00:14.3: 0xB66F3FF5 | isr0
[   19.068057] iwlwifi 0000:00:14.3: 0x46EFD7EB | isr1
[   19.068058] iwlwifi 0000:00:14.3: 0x901A916E | isr2
[   19.068059] iwlwifi 0000:00:14.3: 0x1187046B | isr3
[   19.068060] iwlwifi 0000:00:14.3: 0xFB3FF65D | isr4
[   19.068060] iwlwifi 0000:00:14.3: 0x46AB9CFD | last cmd Id
[   19.068061] iwlwifi 0000:00:14.3: 0x2B9155D0 | wait_event
[   19.068062] iwlwifi 0000:00:14.3: 0x150F086F | l2p_control
[   19.068063] iwlwifi 0000:00:14.3: 0x6C9B5F74 | l2p_duration
[   19.068064] iwlwifi 0000:00:14.3: 0xE7B0A4A1 | l2p_mhvalid
[   19.068065] iwlwifi 0000:00:14.3: 0x81B28C3A | l2p_addr_match
[   19.068066] iwlwifi 0000:00:14.3: 0x39611834 | lmpm_pmg_sel
[   19.068066] iwlwifi 0000:00:14.3: 0x635FB7BC | timestamp
[   19.068067] iwlwifi 0000:00:14.3: 0x99DDCA63 | flow_handler
[   19.068117] iwlwifi 0000:00:14.3: Start IWL Error Log Dump:
[   19.068118] iwlwifi 0000:00:14.3: Status: 0x00000000, count: 7
[   19.068119] iwlwifi 0000:00:14.3: 0x201013F1 | ADVANCED_SYSASSERT
[   19.068120] iwlwifi 0000:00:14.3: 0x00000000 | umac branchlink1
[   19.068121] iwlwifi 0000:00:14.3: 0xC008D49C | umac branchlink2
[   19.068122] iwlwifi 0000:00:14.3: 0x00000000 | umac interruptlink1
[   19.068123] iwlwifi 0000:00:14.3: 0x00000000 | umac interruptlink2
[   19.068124] iwlwifi 0000:00:14.3: 0x00000003 | umac data1
[   19.068125] iwlwifi 0000:00:14.3: 0x02000300 | umac data2
[   19.068125] iwlwifi 0000:00:14.3: 0x01300504 | umac data3
[   19.068126] iwlwifi 0000:00:14.3: 0x00000030 | umac major
[   19.068127] iwlwifi 0000:00:14.3: 0x4FA0041F | umac minor
[   19.068128] iwlwifi 0000:00:14.3: 0x00006089 | frame pointer
[   19.068129] iwlwifi 0000:00:14.3: 0xC0887F58 | stack pointer
[   19.068130] iwlwifi 0000:00:14.3: 0x00000000 | last host cmd
[   19.068131] iwlwifi 0000:00:14.3: 0x00000000 | isr status reg
[   19.068166] iwlwifi 0000:00:14.3: Fseq Registers:
[   19.068189] iwlwifi 0000:00:14.3: 0x00000003 | FSEQ_ERROR_CODE
[   19.068211] iwlwifi 0000:00:14.3: 0x00290033 | FSEQ_TOP_INIT_VERSION
[   19.068232] iwlwifi 0000:00:14.3: 0x00000000 | FSEQ_CNVIO_INIT_VERSION
[   19.068254] iwlwifi 0000:00:14.3: 0x0000A481 | FSEQ_OTP_VERSION
[   19.068275] iwlwifi 0000:00:14.3: 0x00000003 | FSEQ_TOP_CONTENT_VERSION
[   19.068296] iwlwifi 0000:00:14.3: 0x4552414E | FSEQ_ALIVE_TOKEN
[   19.068325] iwlwifi 0000:00:14.3: 0x02000300 | FSEQ_CNVI_ID
[   19.068340] iwlwifi 0000:00:14.3: 0x01300504 | FSEQ_CNVR_ID
[   19.068362] iwlwifi 0000:00:14.3: 0x02000300 | CNVI_AUX_MISC_CHIP
[   19.068369] iwlwifi 0000:00:14.3: 0x01300504 | CNVR_AUX_MISC_CHIP
[   19.068375] iwlwifi 0000:00:14.3: 0x05B0905B | CNVR_SCU_SD_REGS_SD_REG_DIG_DCDC_VTRIM
[   19.068381] iwlwifi 0000:00:14.3: 0x0000025B | CNVR_SCU_SD_REGS_SD_REG_ACTIVE_VDIG_MIRROR
[   19.068463] iwlwifi 0000:00:14.3: SecBoot CPU1 Status: 0x5fef, CPU2 Status: 0x3
[   19.068464] iwlwifi 0000:00:14.3: Failed to start RT ucode: -110
[   19.068467] iwlwifi 0000:00:14.3: Firmware not running - cannot dump error
[   19.074599] i2c_hid i2c-00304238304C4C44:00: i2c-00304238304C4C44:00 supply vdd not found, using dummy regulator
[   19.074611] i2c_hid i2c-00304238304C4C44:00: i2c-00304238304C4C44:00 supply vddl not found, using dummy regulator
[   19.080679] iwlwifi 0000:00:14.3: Failed to run INIT ucode: -110

Installing kernel 5.3 from the kernel-hardened package:

pacman -S kernel-hardened
vim /boot/EFI/syslinux/syslinux.cfg

LABEL Arch Linux Hardened
    MENU LABEL Arch Linux Hardened
    LINUX ../../vmlinuz-linux-hardened
    APPEND root=/dev/mapper/root cryptdevice=/dev/nvme0n1p2:root rw modprobe.blacklist=intel_lpss_pci
    INITRD ../../initramfs-linux-hardened.img

Reboot, select alternative 5.3 kernel and wifi is up-and-running again. Not sure what the steps would be to
fix this for the 5.4 kernel. Any idea?

PS. The blacklist module in 5.3 kernel relates to: https://bbs.archlinux.org/viewtopic.php?id=251366

EDIT: Checkout reply below for a better alternative

Last edited by sha1sum (2019-12-23 17:20:05)

Offline

#2 2019-12-17 14:57:41

jonathanio
Member
From: Cardiff, Wales
Registered: 2019-12-17
Posts: 9
Website

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

I've come across this issue on-and-off as I've been playing with my XPS13 7390 2-in-1 and 5.4 over the last few weeks. I was at re:Invent last week so ended up putting the linux package into IgnorePkg to prevent updates while I was away. However, now I'm back and after a little investigation, the issue seems to centre around the fact that the Kernel is loaded the b0 firmware when it should be loading the c0 version, specifically what this patch fixes: [BUGFIX] iwlwifi: pcie: handle switching killer Qu B0 NICs to C0.

I've not tried applying it to the kernel itself and rebuilding, but a quick-and-dirty fix was to symlink the c0-50 firmware to b0-50 (currently a non-existent version):

$ cd /lib/firmware
$ ln -s iwlwifi-Qu-{c,b}0-hr-b0-50.ucode

A quick rmmod for iwlmvm and iwlwifi modules and modprobe iwlwifi confirmed it loaded and the interface showed in ip link (although the wifi didn't connect, possibly as wpa_supplicated wasn't started due to not finding the interface earlier). A reboot later, and the interface is loaded and working as expected:

$ uname -a
Linux arawn.nwk.io 5.4.3-arch1-1 #1 SMP PREEMPT Fri, 13 Dec 2019 09:39:02 +0000 x86_64 GNU/Linux
$ dmesg | grep iwlwifi
[    8.181448] iwlwifi 0000:00:14.3: enabling device (0000 -> 0002)
[    8.189878] iwlwifi 0000:00:14.3: TLV_FW_FSEQ_VERSION: FSEQ Version: 58.3.35.22
[    8.189882] iwlwifi 0000:00:14.3: Found debug destination: EXTERNAL_DRAM
[    8.189884] iwlwifi 0000:00:14.3: Found debug configuration: 0
[    8.190121] iwlwifi 0000:00:14.3: loaded firmware version 50.527e773b.0 op_mode iwlmvm
[    8.360530] iwlwifi 0000:00:14.3: Detected Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW), REV=0x338
[    8.367503] iwlwifi 0000:00:14.3: Applying debug destination EXTERNAL_DRAM
[    8.367735] iwlwifi 0000:00:14.3: Allocated 0x00200000 bytes for firmware monitor.
[    8.572389] iwlwifi 0000:00:14.3: base HW address: 24:ee:9a:xx:xx:xx
[    8.632702] iwlwifi 0000:00:14.3 wlp0s20f3: renamed from wlan0
$ ip link show wlp0s20f3
3: wlp0s20f3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DORMANT group default qlen 1000
    link/ether 24:ee:9a:xx:xx:xx brd ff:ff:ff:ff:ff:ff

Not the cleanest of workarounds, but it does at least allow me to try and get Thunderbolt up-and-running on my laptop and use the Wifi at the same time. I hope this may help until 5.4.x or 5.5 fixes this bug.

Last edited by jonathanio (2019-12-22 09:15:33)

Offline

#3 2019-12-21 15:39:33

Fandekasp
Member
From: Japan
Registered: 2012-02-12
Posts: 25
Website

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

Thanks jonathanio, I just received the XPS13 7390 2-in-1  and couldn't figure out why I couldn't get the wifi working from the partition (5.4.5) while it worked on the liveusb (5.3.x). Your answer saved me!

A small typo in your instruction: "rmmod for iwlmvn" -> "rmmod for iwlmvm" (-n+m)

I also restarted the computer afterwards, but now believe I should have been able to connect to internet directly after the modprobe iwlwifi if I had run a "systemctl restart iwd" for it to detect the wlan0 device

It might be good to update https://wiki.archlinux.org/index.php/De … n-1_(7390) with these details.

Offline

#4 2019-12-21 20:39:08

loqs
Member
Registered: 2014-03-06
Posts: 17,196

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

jonathanio wrote:

I've come across this issue on-and-off as I've been playing with my XPS13 7390 2-in-1 and 5.4 over the last few weeks. I was at re:Invent last week so ended up putting the linux package into IgnorePkg to prevent updates while I was away. However, now I'm back and after a little investigation, the issue seems to centre around the fact that the Kernel is loaded the b0 firmware when it should be loading the c0 version, specifically what this patch fixes: [BUGFIX] iwlwifi: pcie: handle switching killer Qu B0 NICs to C0.

See https://git.kernel.org/pub/scm/linux/ke … c1d824904e present in 5.3+

Offline

#5 2019-12-22 09:25:07

jonathanio
Member
From: Cardiff, Wales
Registered: 2019-12-17
Posts: 9
Website

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

Fandekasp wrote:

Thanks jonathanio, I just received the XPS13 7390 2-in-1  and couldn't figure out why I couldn't get the wifi working from the partition (5.4.5) while it worked on the liveusb (5.3.x). Your answer saved me!

A small typo in your instruction: "rmmod for iwlmvn" -> "rmmod for iwlmvm" (-n+m)

I also restarted the computer afterwards, but now believe I should have been able to connect to internet directly after the modprobe iwlwifi if I had run a "systemctl restart iwd" for it to detect the wlan0 device

It might be good to update https://wiki.archlinux.org/index.php/De … n-1_(7390) with these details.

Thanks. I've made the fix in the reply, and glad it could help.

loqs wrote:

See https://git.kernel.org/pub/scm/linux/ke … c1d824904e present in 5.3+

Interesting. Looking directly at drivers/net/wireless/intel/iwlwifi/cfg/22000.c it seems there are two entries for the wireless cards:

const struct iwl_cfg iwl_ax1650i_cfg_quz_hr = {
	.name = "Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW)",
	.fw_name_pre = IWL_QUZ_A_HR_B_FW_PRE,
	IWL_DEVICE_22500,
	/*
         * This device doesn't support receiving BlockAck with a large bitmap
         * so we need to restrict the size of transmitted aggregation to the
         * HT size; mac80211 would otherwise pick the HE max (256) by default.
         */
	.max_tx_agg_size = IEEE80211_MAX_AMPDU_BUF_HT,
};

...

const struct iwl_cfg killer1650s_2ax_cfg_qu_c0_hr_b0 = {
	.name = "Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW)",
	.fw_name_pre = IWL_QU_C_HR_B_FW_PRE,
	IWL_DEVICE_22500,
	/*
	 * This device doesn't support receiving BlockAck with a large bitmap
	 * so we need to restrict the size of transmitted aggregation to the
	 * HT size; mac80211 would otherwise pick the HE max (256) by default.
	 */
	.max_tx_agg_size = IEEE80211_MAX_AMPDU_BUF_HT,
};

I ponder if the struct for iwl_ax1650i_cfg_quz_hr is taking preference here...

Offline

#6 2019-12-22 12:36:10

loqs
Member
Registered: 2014-03-06
Posts: 17,196

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

I think the issue may be https://github.com/torvalds/linux/commi … bbc841d1e4 after this commit killer1650s_2ax_cfg_qu_b0_hr_b0 is never used.
Edit:
If you apply the following patch and reverse the change you made to the firmware files is the issue still present?

diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
index 040cec17d3ad..4663e4133878 100644
--- a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
+++ b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
@@ -1123,6 +1123,10 @@ static int iwl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
                        iwl_trans->cfg = &iwl9560_2ac_cfg_quz_a0_jf_b0_soc;
                else if (iwl_trans->cfg == &iwl9560_2ac_160_cfg_qu_b0_jf_b0)
                        iwl_trans->cfg = &iwl9560_2ac_160_cfg_quz_a0_jf_b0_soc;
+               else if (iwl_trans->cfg == &killer1650s_2ax_cfg_qu_b0_hr_b0)
+                       iwl_trans->cfg = &killer1650s_2ax_cfg_qu_c0_hr_b0;
+               else if (iwl_trans->cfg == &killer1650i_2ax_cfg_qu_b0_hr_b0)
+                       iwl_trans->cfg = &killer1650i_2ax_cfg_qu_c0_hr_b0;
        }
 
 #endif

Edit2:
https://git.kernel.org/pub/scm/linux/ke … dd0e151526

Last edited by loqs (2019-12-23 14:13:22)

Offline

#7 2019-12-23 17:14:56

sha1sum
Member
Registered: 2019-12-14
Posts: 5

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

Thanks jonathanio! Glad to be able to switch back to 5.4 kernel in the meantime

Last edited by sha1sum (2019-12-23 17:15:19)

Offline

#8 2019-12-23 17:36:00

6E7368
Member
Registered: 2019-12-23
Posts: 3

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

I have this same laptop and I'd be happy to help if I can with reproducibility but I'd first like to know if the drivers are FOSS before I accept the EULA on it. I see it's an Intel based chip (FOSS) but I was wondering if Killer added binary patches or something. If they did, I'm declining the EULA and returning it because they soldered the card in.

Offline

#9 2019-12-23 17:44:02

jonathanio
Member
From: Cardiff, Wales
Registered: 2019-12-17
Posts: 9
Website

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

loqs wrote:

I think the issue may be https://github.com/torvalds/linux/commi … bbc841d1e4 after this commit killer1650s_2ax_cfg_qu_b0_hr_b0 is never used.
Edit:
If you apply the following patch and reverse the change you made to the firmware files is the issue still present?

diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
index 040cec17d3ad..4663e4133878 100644
--- a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
+++ b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
@@ -1123,6 +1123,10 @@ static int iwl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
                        iwl_trans->cfg = &iwl9560_2ac_cfg_quz_a0_jf_b0_soc;
                else if (iwl_trans->cfg == &iwl9560_2ac_160_cfg_qu_b0_jf_b0)
                        iwl_trans->cfg = &iwl9560_2ac_160_cfg_quz_a0_jf_b0_soc;
+               else if (iwl_trans->cfg == &killer1650s_2ax_cfg_qu_b0_hr_b0)
+                       iwl_trans->cfg = &killer1650s_2ax_cfg_qu_c0_hr_b0;
+               else if (iwl_trans->cfg == &killer1650i_2ax_cfg_qu_b0_hr_b0)
+                       iwl_trans->cfg = &killer1650i_2ax_cfg_qu_c0_hr_b0;
        }
 
 #endif

I haven't tried this yet, but looks interesting, given the following.

Even more interesting! Although I've checked my latest release of linux-git and the kernel output and it looks like this patch doesn't fix it:

$ uname -a
Linux arawn.nwk.io 5.5.0-rc2-1-git-00385-gb8e382a185eb #1 SMP PREEMPT Sun, 22 Dec 2019 10:46:16 +0000 x86_64 GNU/Linux
$ dmesg | grep iwlwifi
[    8.064220] iwlwifi 0000:00:14.3: enabling device (0000 -> 0002)
[    8.065998] iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-Qu-b0-hr-b0-52.ucode failed with error -2
[    8.066014] iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-Qu-b0-hr-b0-51.ucode failed with error -2
[    8.069975] iwlwifi 0000:00:14.3: TLV_FW_FSEQ_VERSION: FSEQ Version: 58.3.35.22
[    8.069978] iwlwifi 0000:00:14.3: Found debug destination: EXTERNAL_DRAM
[    8.069979] iwlwifi 0000:00:14.3: Found debug configuration: 0
[    8.070192] iwlwifi 0000:00:14.3: loaded firmware version 50.527e773b.0 op_mode iwlmvm
[    8.187861] iwlwifi 0000:00:14.3: Detected Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW), REV=0x338
[    8.194698] iwlwifi 0000:00:14.3: Applying debug destination EXTERNAL_DRAM
[    8.194891] iwlwifi 0000:00:14.3: Allocated 0x00200000 bytes for firmware monitor.
[    8.341973] iwlwifi 0000:00:14.3: base HW address: 24:ee:9a:xx:xx:xx
[    8.720609] iwlwifi 0000:00:14.3 wlp0s20f3: renamed from wlan0

Built on Sunday night from the latest commits, it's still loading the b0 firmware type. sad None of the conditions reference iwl_ax1650i_cfg_quz_hr nor killer1650s_2ax_cfg_qu_c0_hr_b0 so it looks like some sort of additional override is needed, or one of the structs needs to be removed (I think iwl_ax1650i_cfg_quz_hr). I'll have a play over the next few days as it's Christmas and see what I can learn and then raise a bug via bugzilla for the Intel WiFi team.

Offline

#10 2019-12-23 17:53:17

jonathanio
Member
From: Cardiff, Wales
Registered: 2019-12-17
Posts: 9
Website

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

6E7368 wrote:

I have this same laptop and I'd be happy to help if I can with reproducibility but I'd first like to know if the drivers are FOSS before I accept the EULA on it. I see it's an Intel-based chip (FOSS) but I was wondering if Killer added binary patches or something. If they did, I'm declining the EULA and returning it because they soldered the card in.

I'm no legal expert, but I'm trying to work only via the mainline kernel. I don't think there is any need, nor should be any need, to try and download the drivers directly from Intel for this.

The drivers themselves look to be part GPL2, part BSD, and all copyright Intel (https://git.kernel.org/pub/scm/linux/ke … pcie/drv.c) and while the firmware itself is not FOSS for its source code, the binary object itself is freely distributable under their own licence (https://github.com/cernekee/linux-firmw … i_firmware).

As for the specific differences between Intel and Killer, I'm not sure. It nonetheless runs under the iwlwifi driver itself and Intel's code does have specific code to run them directly, so this should all just be managed directly with the Intel team I think.

To replicate the issue: If you're on any linux 5.4.X or 5.5rcX release and you get an error much like in the OP (ending with iwlwifi 0000:00:xx.x: Failed to run INIT ucode: -110) then you're suffering from the same issue. I think right now I need to build some test kernels with different code changes to work out if there needs to be some override from the b0 type to the c0 type firmware blob, or if one of the structs needs to be removed, or changed.

Last edited by jonathanio (2019-12-23 23:09:00)

Offline

#11 2019-12-23 17:56:21

progandy
Member
Registered: 2012-05-17
Posts: 5,184

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

6E7368 wrote:

I have this same laptop and I'd be happy to help if I can with reproducibility but I'd first like to know if the drivers are FOSS before I accept the EULA on it. I see it's an Intel based chip (FOSS) but I was wondering if Killer added binary patches or something. If they did, I'm declining the EULA and returning it because they soldered the card in.

All modern Intel wifi cards have firmware blobs. The Killer firmware is provided to the linux kernel by Intel as well.
This is the license:

/usr/share/licenses/linux-firmware/LICENCE.iwlwifi_firmware
https://git.kernel.org/pub/scm/linux/ke … i_firmware


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#12 2019-12-23 18:32:05

6E7368
Member
Registered: 2019-12-23
Posts: 3

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

I've been out of the loop, Intel used to have FOSS drivers! These days I feel like you've got to break out some Z80s and a soldering iron if you really want to trust your machine.

Edit: Not that I ever really trusted Intel, but still.

Last edited by 6E7368 (2019-12-23 18:38:12)

Offline

#13 2019-12-24 11:41:40

loqs
Member
Registered: 2014-03-06
Posts: 17,196

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

Can you reproduce the issue using linux 5.4.6.arch3-1 and linux-firmware 20191220.6871bff-1 currently in testing?

Offline

#14 2019-12-24 13:09:25

jonathanio
Member
From: Cardiff, Wales
Registered: 2019-12-17
Posts: 9
Website

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

loqs wrote:

Can you reproduce the issue using linux 5.4.6.arch3-1 and linux-firmware 20191220.6871bff-1 currently in testing?

Nope. I cannot:

$ uname -a
Linux arawn.nwk.io 5.4.6-arch3-1 #1 SMP PREEMPT Tue, 24 Dec 2019 04:36:53 +0000 x86_64 GNU/Linux
$ dmesg | grep iwlwifi
[    8.276121] iwlwifi 0000:00:14.3: enabling device (0000 -> 0002)
[    8.285073] iwlwifi 0000:00:14.3: TLV_FW_FSEQ_VERSION: FSEQ Version: 58.3.35.22
[    8.285076] iwlwifi 0000:00:14.3: Found debug destination: EXTERNAL_DRAM
[    8.285077] iwlwifi 0000:00:14.3: Found debug configuration: 0
[    8.285269] iwlwifi 0000:00:14.3: loaded firmware version 50.3e391d3e.0 op_mode iwlmvm
[    8.397781] iwlwifi 0000:00:14.3: Detected Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW), REV=0x338
[    8.404508] iwlwifi 0000:00:14.3: Applying debug destination EXTERNAL_DRAM
[    8.404885] iwlwifi 0000:00:14.3: Allocated 0x00400000 bytes for firmware monitor.
[    8.550733] iwlwifi 0000:00:14.3: base HW address: 24:ee:9a:xx:xx:xx
[    8.973672] iwlwifi 0000:00:14.3 wlp0s20f3: renamed from wlan0

What has been changed? It looks like there's a new b0-50 firmware blob there?

Offline

#15 2019-12-24 13:16:35

progandy
Member
Registered: 2012-05-17
Posts: 5,184

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#16 2019-12-24 13:22:07

jonathanio
Member
From: Cardiff, Wales
Registered: 2019-12-17
Posts: 9
Website

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

Awesome! Thanks for this!

Offline

#17 2019-12-24 22:14:03

6E7368
Member
Registered: 2019-12-23
Posts: 3

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

Can somebody walk me through the boot process? I have the 7390 (not 2 in 1) and enabled boot from thunderbolt in UEFI menu and disabled secure boot. I appended 'modprobe.blacklist=intel_lpss_pci' to the arch entry. When I boot to it all I get is a black screen. This is using the USB-A to USB-C conversion cable included with the machine.

Edit: I've also tried all the USB ports. The USB stick blinks for about a second after hitting return and then nothing.

Last edited by 6E7368 (2019-12-24 22:24:31)

Offline

#18 2019-12-30 07:11:13

craigcabrey
Member
Registered: 2012-03-07
Posts: 12

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

seems like this issue is still not fixed in mainline, just installed linux-mainline 5.5rc4-1 for testing my other issue and wifi was broken with firmware loading errors.

Offline

#19 2019-12-30 09:15:42

progandy
Member
Registered: 2012-05-17
Posts: 5,184

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

craigcabrey wrote:

seems like this issue is still not fixed in mainline, just installed linux-mainline 5.5rc4-1 for testing my other issue and wifi was broken with firmware loading errors.

The patch "iwlwifi: pcie: restore support for Killer Qu C0 NICs" hasn't landed in the kernel yet as far as I can see. It is submitted to the mailing list, though.
https://lore.kernel.org/linux-wireless/ … gmail.com/


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#20 2019-12-30 20:49:33

craigcabrey
Member
Registered: 2012-03-07
Posts: 12

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

progandy wrote:
craigcabrey wrote:

seems like this issue is still not fixed in mainline, just installed linux-mainline 5.5rc4-1 for testing my other issue and wifi was broken with firmware loading errors.

The patch "iwlwifi: pcie: restore support for Killer Qu C0 NICs" hasn't landed in the kernel yet as far as I can see. It is submitted to the mailing list, though.
https://lore.kernel.org/linux-wireless/ … gmail.com/

Makes sense, hopefully it's accepted soon. Just patched it locally for now.

Offline

#21 2020-01-02 13:29:59

jonathanio
Member
From: Cardiff, Wales
Registered: 2019-12-17
Posts: 9
Website

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

I've updated the wiki again with the new option for the core/linux package (as of 5.4.6-arch1-1 or greater).

Offline

#22 2020-01-12 02:56:57

Yukiseekyo
Member
Registered: 2017-12-07
Posts: 12

Re: [WORKAROUND] Dell XPS13-7390: iwlwifi firmware fails on kernel 5.4

i think its fixed on 5.4.10, since my wifi works now on the latest kernel now.

Offline

Board footer

Powered by FluxBB