Bug 244261 - Add support for Intel AX200 (iwx) wireless devices
Summary: Add support for Intel AX200 (iwx) wireless devices
Status: Open
Alias: None
Product: Base System
Classification: Unclassified
Component: wireless (show other bugs)
Version: 12.1-RELEASE
Hardware: Any Any
: --- Affects Only Me
Assignee: Bjoern A. Zeeb
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-02-21 05:41 UTC by Brian Zou
Modified: 2020-11-11 12:04 UTC (History)
13 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Brian Zou 2020-02-21 05:41:50 UTC
OpenBSD be supported https://man.openbsd.org/man4/iwx.4
Comment 1 vidwer+fbsdbugs 2020-02-21 12:06:42 UTC
There are plans to port if_iwx, yes. I have ordered an adapter to work on, unless others beat me to it, in the (nearby) future. Might arrive somewhere in the next two months.

In the meanwhile, can you elaborate on 1) which laptop (or desktop) ships with AX200, and 2) provide some PCI ID details?
Comment 2 Gavin Atkinson freebsd_committer freebsd_triage 2020-02-21 15:02:12 UTC
Containing AX200 160MHz with PCI vendor 0x8086 device 0x2723:

- HP EliteBook HSN-122C
- HP EliteBook HSN-123C
- HP EliteBook HSN-124C-5
Comment 3 nomoo 2020-02-21 20:30:31 UTC
Good news! I'm ready to test with the following hardware:

Lenovo X1 Extreme Gen 2

AX200 160MHz: vendor 0x8086 device 0x2723
Comment 4 vidwer+fbsdbugs 2020-02-21 21:13:03 UTC
(In reply to Gavin Atkinson from comment #2)
Are those SKUs? Because HP's website doesn't retrieve those models: https://www8.hp.com/uk/en/search/search.html?nores=true&qt=HP%20EliteBook%20HSN-122C
Comment 5 Brian Zou 2020-02-23 10:20:51 UTC
Laptop:
ThinkPad X1 2019 Extreme Gen 2

Computer motherboard:
GIGABYTE TRX40 AORUS XTREME
ASUS ROG STRIX TRX40-E GAMING
ASUS ROG CROSSHAIR VIII IMPACT
ASUS ROG ZENITH II EXTREME
ASUS ROG ZENITH II EXTREME ALPHA
MSI Creator TRX40
MSI Creator X299

WIFI chip:
https://www.amazon.com/WiFi-AX200-PCs-802-11AX-Bluetooth-NGW/dp/B07TLBNSZQ
Comment 6 vidwer+fbsdbugs 2020-02-25 14:55:10 UTC
(In reply to vidwer+fbsdbugs from comment #4)
Quoting Gavin: "HSN-122: "EliteBook x360 830 G6"  HSN-123: "EliteBook 850 G6" and HSN-124: "EliteBook 840 G6""
Comment 7 vidwer+fbsdbugs 2020-03-24 11:20:01 UTC
Still working on the port.
Comment 8 vidwer+fbsdbugs 2020-03-24 11:21:25 UTC
Still working on the driver. Currently, while loading if_iwx it comes 'up' in dmesg with:

iwx0: <iwx22000_cfg, in need of a better name /* Intel(R) Dual Band Wireless AC 9260 */> mem 0xf0000000-0xf0003fff at device 0.0 on pci2
bus_dmamem_alloc failed to align memory properly.
bus_dmamem_alloc failed to align memory properly.
bus_dmamem_alloc failed to align memory properly.
bus_dmamem_alloc failed to align memory properly.
bus_dmamem_alloc failed to align memory properly.
bus_dmamem_alloc failed to align memory properly.
bus_dmamem_alloc failed to align memory properly.
bus_dmamem_alloc failed to align memory properly.
bus_dmamem_alloc failed to align memory properly.
iwx0: iwx_read_firmware: unknown firmware section 55, abort
iwx0: firmware parse error 22, section type 55
device_attach: iwx0 attach returned 6
Comment 9 vidwer+fbsdbugs 2020-04-21 11:27:20 UTC
Hi, I could use your help to make sc_debug actually show log output from IWX_DPRINTF().
sc_debug is (locally) set to 1 in iwx_attach(), in the SYSCTL_ADD_INT() macro and through dev.iwx.debug in /boot/loader.conf
Comment 10 delleceste 2020-04-25 10:17:53 UTC
Hello! 
Is there already a way to test the driver?
Will it support only G or also N / AX ?
Thanks.
Comment 11 vidwer+fbsdbugs 2020-04-25 21:04:19 UTC
(In reply to delleceste from comment #10)
Please contact the project leadership to move support for this particular hardware forward.
Comment 12 vidwer+fbsdbugs 2020-04-26 01:03:35 UTC
(In reply to vidwer+fbsdbugs from comment #9)

This is taken care of.
Comment 13 delleceste 2020-04-28 11:13:57 UTC
(In reply to vidwer+fbsdbugs from comment #11)
Thanks. I'm sorry I did not understand whom I should address to get this information. Is it wireless@freebsd.org?
Thank You
Kind regards
Comment 14 Bjoern A. Zeeb freebsd_committer 2020-05-20 16:33:47 UTC
I should probably take this given I am tasked to do 11ac for it which also means adding newer bits to the driver.  Don't hold your breath just yet.  I'll be a few weeks out at least.
Comment 15 Andreas 2020-11-10 11:53:14 UTC
Will support for AX200 also include support for AX201?

From https://www.intel.com/content/www/us/en/support/articles/000054819/network-and-i-o/wireless.html:

----
The main difference between the two is that the Intel® Wi-Fi 6 AX201 is a CRF module that uses the Intel proprietary interface, and thus can only be used with select Intel chipsets and platforms.
----

Side-by-side comparison of AX200 and AX201: https://ark.intel.com/content/www/us/en/ark/compare.html?productIds=189347,130293

Waiting for FreeBSD to support AX201.
Comment 16 Bjoern A. Zeeb freebsd_committer 2020-11-10 12:14:25 UTC
(In reply to Andreas from comment #15)

yes it should support AX201 cards once the driver is finished.  If you have a chance to see if the old snapshot mentioned here[1] does attach and load firmware then we'd know for sure (it will not give any wifi!).
I don't have a AX201 to test with sadly.

[1] https://lists.freebsd.org/pipermail/freebsd-wireless/2020-July/009233.html
Comment 17 Andreas 2020-11-10 13:02:19 UTC
(In reply to Bjoern A. Zeeb from comment #16)

Bjoern, thank you. I'm currently running 13.0-CURRENT, and doing a pciconf -vl gives me this:

none3@pci0:0:20:3:	class=0x028000 rev=0x00 hdr=0x00 vendor=0x8086 device=0x02f0 subvendor=0x8086 subdevice=0x0074
    vendor     = 'Intel Corporation'
    device     = 'Comet Lake PCH-LP CNVi WiFi'
    class      = network
Comment 18 Andreas 2020-11-10 14:39:48 UTC
(In reply to Bjoern A. Zeeb from comment #16)
I assume that running 13.0-CURRENT would be the same (or better) as testing the old snaptshot that you linked to. Please correct me if this is wrong. I'll be happy to test.

I'm on a NUC10i7FNK (https://ark.intel.com/content/www/us/en/ark/products/188808/intel-nuc-10-performance-kit-nuc10i7fnk.html).
Comment 19 Bjoern A. Zeeb freebsd_committer 2020-11-10 14:56:50 UTC
(In reply to Andreas from comment #18)

The snapshot bits have mostly not yet been merged to head.  DRM is currently going in to linuxkpi and while we have conflicting bits DRM takes precedence at the moment.  I'll try and see if I can update the snapshot next weekend to a recent head.
Comment 20 Bjoern A. Zeeb freebsd_committer 2020-11-10 14:58:39 UTC
(In reply to Andreas from comment #17)

PCI IDs look supported;  basically everything in terms of HW interface that the Linux iwlwifi driver supports in the mvm parts (not the dwm which is iwn(4) in FreeBSD) is supposed to work.  All WiFi nits and bops and hooks and workarounds will take a bit longer.
Comment 21 Andreas 2020-11-11 12:04:09 UTC
(In reply to Bjoern A. Zeeb from comment #16)

Bjoern, I 1)cloned the git repo to /usr/src (did cd /usr/src && rm -rf * to clean beforehand), then 2)make buildkernel KERNCONF=GENERIC and 3)make installkernel KERNCONF=GENERIC.

When I try to load, I get:

kldload if_iwl
kldload: can't load if_iwl: No such file or directory

I guess I didn't build it. Could you give me some directions what I have to change? My first kernel compilation ever (yay).