Intel AX200 card on SiFive Unmatched board can't work

Hi,

I am using an Sifive Unmatched board (RISC-V), which runs the offcially built Openwrt image (23.05.3, r23809-234f1a2efa). I tried to plug an Intel AX200 based M.2 card in the board, and booted the OpenWRT image successfully, but the ax200 card can not work.

I also found some posts in this forum about ax200, which informed that a Linux firmware is needed to make the ax200 card work. I tried some firmware files in the directory (https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/), however, it still can't work.

The ax200 card can be detected by lspci:

root@OpenWrt:~# lspci
00:00.0 PCI bridge: SiFive, Inc. FU740-C000 RISC-V SoC PCI Express x8 to AXI4 Bridge
01:00.0 PCI bridge: ASMedia Technology Inc. ASM2824 PCIe Gen3 Packet Switch (rev 01)
02:00.0 PCI bridge: ASMedia Technology Inc. ASM2824 PCIe Gen3 Packet Switch (rev 01)
02:02.0 PCI bridge: ASMedia Technology Inc. ASM2824 PCIe Gen3 Packet Switch (rev 01)
02:03.0 PCI bridge: ASMedia Technology Inc. ASM2824 PCIe Gen3 Packet Switch (rev 01)
02:04.0 PCI bridge: ASMedia Technology Inc. ASM2824 PCIe Gen3 Packet Switch (rev 01)
02:08.0 PCI bridge: ASMedia Technology Inc. ASM2824 PCIe Gen3 Packet Switch (rev 01)
04:00.0 USB controller: ASMedia Technology Inc. ASM1042A USB 3.0 Host Controller
05:00.0 Network controller: Intel Corporation Wi-Fi 6 AX200 (rev 1a)

So, which kernel firmware file(s) should be loaded to make the ax200 card work with the SiFive Unmatched board? Or, there are more steps to be done?

Thanks,
dsw

Did you install kmod-iwlwifi? That adds the required kernel module.
Where did you copy the firmware files to?

The system log usually contains the required messages to debug this, look for references to "iwlwifi" and/or the firmware.

Please note that Intel AX cards cannot be used in AP mode (or only in a limited 2.4GHz mode, see here).

1 Like

...and be aware that ax200/ ax210/ be200 can be quite picky about the PCIe slots, even on Intel systems - and that no one at Intel will have tested it on other platforms.

1 Like

Hi, thank you!

I missed the kmod-iwlwifi package. After installing it, the wifi card worked!

The firamware is placed at /lib/firmware

root@OpenWrt:~# ls /lib/firmware/
iwlwifi-cc-a0-59.ucode

Thank you for your reply. In SiFive's document, they say the ax200 can be used with the Unmatched board. :heart:

CONFIG_PACKAGE_kmod-iwlwifi=y
CONFIG_PACKAGE_iwlwifi-firmware-ax200=y
CONFIG_PACKAGE_wpad-openssl=y

is all you strictly need (respectively your preferred wpad/ hostapd provider).

I can only give ax200 a quick test on x86_64 and a system that's normally not running OpenWrt booted from USB, there it is working for me:

Host/Kernel/OS "OpenWrt" running Linux 6.6.30 x86_64 UEFI64 [ OpenWrt SNAPSHOT r26207-ce4da3cf41 ]
CPU Info       4x Intel Core i5-7400 @ 6144 KB cache flags( sse3 ht nx lm vmx ) clocked at [ 3367.741 MHz ]
Videocard      Intel HD Graphics 630  tty resolution (  )
Network cards  Intel Wi-Fi 6 AX200
               Realtek RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet Controller, at port: d000 
               Realtek RTL8125 2.5GbE Controller, at port: e000 
Processes 136 | Uptime 1min | Memory 175.9/15727.9MB | HDD SKHynix_HFS256GEJ4X112N,CT500MX500SSD1,SAMSUNG HD103UJ Size 1502GB (0%used) | Infobash v3.60
# iwinfo radio0 scan | grep ^Cell | wc -l
18

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.