1

I have tried bot ubuntu 22.04 and 23.04, both with the same problem. lspci lists my wlan device as an AX201 but iwlwifi wants to load a firmware for an AX101 card.

lspci output:

00:00.0 Host bridge: Intel Corporation Device 4e12
00:02.0 VGA compatible controller: Intel Corporation JasperLake [UHD Graphics] (rev 01)
00:04.0 Signal processing controller: Intel Corporation Dynamic Tuning service
00:14.0 USB controller: Intel Corporation Device 4ded (rev 01)
00:14.2 RAM memory: Intel Corporation Device 4def (rev 01)
00:14.3 Network controller: Intel Corporation Wi-Fi 6 AX201 160MHz (rev 01)
00:15.0 Serial bus controller: Intel Corporation Serial IO I2C Host Controller (rev 01)
00:15.1 Serial bus controller: Intel Corporation Serial IO I2C Host Controller (rev 01)
00:15.2 Serial bus controller: Intel Corporation Device 4dea (rev 01)
00:15.3 Serial bus controller: Intel Corporation Device 4deb (rev 01)
00:16.0 Communication controller: Intel Corporation Management Engine Interface (rev 01)
00:17.0 SATA controller: Intel Corporation Device 4dd3 (rev 01)
00:19.0 Serial bus controller: Intel Corporation Device 4dc5 (rev 01)
00:1e.0 Communication controller: Intel Corporation Device 4da8 (rev 01)
00:1e.3 Serial bus controller: Intel Corporation Device 4dab (rev 01)
00:1f.0 ISA bridge: Intel Corporation Device 4d87 (rev 01)
00:1f.3 Multimedia audio controller: Intel Corporation Jasper Lake HD Audio (rev 01)
00:1f.4 SMBus: Intel Corporation Jasper Lake SMBus (rev 01)
00:1f.5 Serial bus controller: Intel Corporation Jasper Lake SPI Controller (rev 01)

dmesg output:

[    7.262257] iwlwifi 0000:00:14.3: Detected Intel(R) Wi-Fi 6 AX101, REV=0x351
[    7.262359] thermal thermal_zone4: failed to read out thermal zone (-61)
[    7.344988] loop8: detected capacity change from 0 to 8
[    8.395377] iwlwifi 0000:00:14.3: WRT: Collecting data: ini trigger 13 fired (delay=0ms).
[    8.396512] iwlwifi 0000:00:14.3: Start IWL Error Log Dump:
[    8.396517] iwlwifi 0000:00:14.3: Transport status: 0x0000004A, valid: 6
[    8.396520] iwlwifi 0000:00:14.3: Loaded firmware version: 72.daa05125.0 QuZ-a0-hr-b0-72.ucode
[    8.396523] iwlwifi 0000:00:14.3: 0x00000084 | NMI_INTERRUPT_UNKNOWN       
[    8.396525] iwlwifi 0000:00:14.3: 0x000022F0 | trm_hw_status0
[    8.396527] iwlwifi 0000:00:14.3: 0x00000000 | trm_hw_status1
[    8.396529] iwlwifi 0000:00:14.3: 0x004CC13E | branchlink2
[    8.396531] iwlwifi 0000:00:14.3: 0x004C25DE | interruptlink1
[    8.396532] iwlwifi 0000:00:14.3: 0x004C25DE | interruptlink2
[    8.396534] iwlwifi 0000:00:14.3: 0x004CADF8 | data1
[    8.396536] iwlwifi 0000:00:14.3: 0x01000000 | data2
[    8.396537] iwlwifi 0000:00:14.3: 0x00000000 | data3
[    8.396539] iwlwifi 0000:00:14.3: 0x00000000 | beacon time
[    8.396541] iwlwifi 0000:00:14.3: 0x0010B6B3 | tsf low
[    8.396542] iwlwifi 0000:00:14.3: 0x00000000 | tsf hi
[    8.396544] iwlwifi 0000:00:14.3: 0x00000000 | time gp1
[    8.396545] iwlwifi 0000:00:14.3: 0x00111249 | time gp2
[    8.396547] iwlwifi 0000:00:14.3: 0x00000001 | uCode revision type
[    8.396548] iwlwifi 0000:00:14.3: 0x00000048 | uCode version major
[    8.396550] iwlwifi 0000:00:14.3: 0xDAA05125 | uCode version minor
[    8.396552] iwlwifi 0000:00:14.3: 0x00000351 | hw version
[    8.396553] iwlwifi 0000:00:14.3: 0x18C89001 | board version
[    8.396555] iwlwifi 0000:00:14.3: 0x8002FC12 | hcmd
[    8.396557] iwlwifi 0000:00:14.3: 0x00020000 | isr0
[    8.396558] iwlwifi 0000:00:14.3: 0x00000000 | isr1
[    8.396560] iwlwifi 0000:00:14.3: 0x08F00002 | isr2
[    8.396561] iwlwifi 0000:00:14.3: 0x00C0000C | isr3
[    8.396563] iwlwifi 0000:00:14.3: 0x00000000 | isr4
[    8.396564] iwlwifi 0000:00:14.3: 0x00000000 | last cmd Id
[    8.396566] iwlwifi 0000:00:14.3: 0x004CADF8 | wait_event
[    8.396568] iwlwifi 0000:00:14.3: 0x00000000 | l2p_control
[    8.396569] iwlwifi 0000:00:14.3: 0x00000000 | l2p_duration
[    8.396571] iwlwifi 0000:00:14.3: 0x00000000 | l2p_mhvalid
[    8.396572] iwlwifi 0000:00:14.3: 0x00000000 | l2p_addr_match
[    8.396574] iwlwifi 0000:00:14.3: 0x0000000B | lmpm_pmg_sel
[    8.396575] iwlwifi 0000:00:14.3: 0x00000000 | timestamp
[    8.396577] iwlwifi 0000:00:14.3: 0x00000020 | flow_handler
[    8.396631] iwlwifi 0000:00:14.3: Start IWL Error Log Dump:
[    8.396633] iwlwifi 0000:00:14.3: Transport status: 0x0000004A, valid: 7
[    8.396635] iwlwifi 0000:00:14.3: 0x20000066 | NMI_INTERRUPT_HOST
[    8.396637] iwlwifi 0000:00:14.3: 0x00000000 | umac branchlink1
[    8.396638] iwlwifi 0000:00:14.3: 0x80455E9C | umac branchlink2
[    8.396640] iwlwifi 0000:00:14.3: 0x8047257E | umac interruptlink1
[    8.396642] iwlwifi 0000:00:14.3: 0xC0081524 | umac interruptlink2
[    8.396643] iwlwifi 0000:00:14.3: 0x01000000 | umac data1
[    8.396645] iwlwifi 0000:00:14.3: 0xC0081524 | umac data2
[    8.396646] iwlwifi 0000:00:14.3: 0x00000000 | umac data3
[    8.396648] iwlwifi 0000:00:14.3: 0x00000048 | umac major
[    8.396649] iwlwifi 0000:00:14.3: 0xDAA05125 | umac minor
[    8.396651] iwlwifi 0000:00:14.3: 0x00111247 | frame pointer
[    8.396653] iwlwifi 0000:00:14.3: 0xC0887EFC | stack pointer
[    8.396654] iwlwifi 0000:00:14.3: 0x00010C00 | last host cmd
[    8.396656] iwlwifi 0000:00:14.3: 0x00000004 | isr status reg
[    8.396691] iwlwifi 0000:00:14.3: IML/ROM dump:
[    8.396693] iwlwifi 0000:00:14.3: 0x00000003 | IML/ROM error/state
[    8.396729] iwlwifi 0000:00:14.3: 0x000056EF | IML/ROM data1
[    8.396738] iwlwifi 0000:00:14.3: 0x00000080 | IML/ROM WFPM_AUTH_KEY_0
[    8.396744] iwlwifi 0000:00:14.3: Fseq Registers:
[    8.396764] iwlwifi 0000:00:14.3: 0x60000000 | FSEQ_ERROR_CODE
[    8.396786] iwlwifi 0000:00:14.3: 0x80290033 | FSEQ_TOP_INIT_VERSION
[    8.396807] iwlwifi 0000:00:14.3: 0x00090006 | FSEQ_CNVIO_INIT_VERSION
[    8.396829] iwlwifi 0000:00:14.3: 0x0000A482 | FSEQ_OTP_VERSION
[    8.396851] iwlwifi 0000:00:14.3: 0x00000003 | FSEQ_TOP_CONTENT_VERSION
[    8.396872] iwlwifi 0000:00:14.3: 0x4552414E | FSEQ_ALIVE_TOKEN
[    8.396894] iwlwifi 0000:00:14.3: 0x20000302 | FSEQ_CNVI_ID
[    8.396916] iwlwifi 0000:00:14.3: 0x00000501 | FSEQ_CNVR_ID
[    8.396937] iwlwifi 0000:00:14.3: 0x20000302 | CNVI_AUX_MISC_CHIP
[    8.396961] iwlwifi 0000:00:14.3: 0x00000501 | CNVR_AUX_MISC_CHIP
[    8.396982] iwlwifi 0000:00:14.3: 0x05B0905B | CNVR_SCU_SD_REGS_SD_REG_DIG_DCDC_VTRIM
[    8.397004] iwlwifi 0000:00:14.3: 0x0000025B | CNVR_SCU_SD_REGS_SD_REG_ACTIVE_VDIG_MIRROR
[    8.753035] iwlwifi 0000:00:14.3: Failed to run INIT ucode: -110
[    8.765571] iwlwifi 0000:00:14.3: retry init count 2

what can i do to solve this? can i somehow convince iwlwifi to load an AX201 firmware? Thanks in advance.

Roku
  • 29
  • 1
    Is this working? https://askubuntu.com/questions/1352653/intel-ax201-wi-fi-6-is-not-working-on-ubuntu-21-04 – nobody Apr 28 '23 at 14:34
  • trying that gives me some sort of stacktrace in dmesg after iwlwifi loads...thanks tho – Roku Apr 28 '23 at 17:29

2 Answers2

1

got it working. I reinstalled ubuntu 22.04 and downloaded the kernel source. I then made changes to drivers/net/wireless/intel/iwlwifi/pcie/drv.c

First i commented out the following lines starting from line number 989 which detected the card as an AX101, although this might not be neccessary:

    /* QuZ */
    _IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
              IWL_CFG_MAC_TYPE_QUZ, IWL_CFG_ANY,
              IWL_CFG_RF_TYPE_HR1, IWL_CFG_ANY,
              IWL_CFG_ANY, IWL_CFG_ANY, IWL_CFG_NO_CDB, IWL_CFG_ANY,
              iwl_quz_a0_hr1_b0, iwl_ax101_name),

then i added an entry for my card, which has the pci id 0x4df0 0x0244. Starting at line number 255 there are entries for AX201 cards. I added to the bottom of the block which says "Qu with Hr". The block starts like this:

/* AX200 */
    IWL_DEV_INFO(0x2723, IWL_CFG_ANY, iwl_ax200_cfg_cc, iwl_ax200_name),
    IWL_DEV_INFO(0x2723, 0x1653, iwl_ax200_cfg_cc, iwl_ax200_killer_1650w_name),
    IWL_DEV_INFO(0x2723, 0x1654, iwl_ax200_cfg_cc, iwl_ax200_killer_1650x_name),
/* Qu with Hr */
IWL_DEV_INFO(0x43F0, 0x0070, iwl_ax201_cfg_qu_hr, NULL),
IWL_DEV_INFO(0x43F0, 0x0074, iwl_ax201_cfg_qu_hr, NULL),
IWL_DEV_INFO(0x43F0, 0x0078, iwl_ax201_cfg_qu_hr, NULL),
IWL_DEV_INFO(0x43F0, 0x007C, iwl_ax201_cfg_qu_hr, NULL),

The line which I added is this:

    IWL_DEV_INFO(0x4DF0, 0x0244, iwl_ax201_cfg_qu_hr, NULL),

which is my card ID.

The rest was just building the kernel with

make bindeb-pkg

and installing the packages with

dpkg -i 
Roku
  • 29
0

Thanks to Roku answering their own question, I was able to get this to work also on Ubuntu 20.04.6 LTS, Linux kernel v5.15.0-72-generic.

NOTE: It is absolutely required to remove the _IWL_DEV_INFO entry, or the device gets detected as AX101 and will fail. The entry to remove, as seen in Roku's answer, is the one with IWL_CFG_MAC_TYPE_QUZ and IWL_CFG_RF_TYPE_HR1.

I now have WiFi on my BeeLink, yay!

The Bluetooth wasn't working, in dmesg it complained about missing firmware at /lib/firmware/intel/ibt-19-0-3.sfi. I went to https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/intel and got both the sfi and ddc files. Then I used "sudo" to copy them into the /lib/firmware/intel directory.

After a reboot, Bluetooth is working. My Bose headphones are dropping the connection though, so perhaps more work is needed.

kpapdx
  • 17