Opened 4 years ago
Closed 3 years ago
#16970 closed enhancement (fixed)
Intel WIFI 6 AX200 / ax201 not functioning
Reported by: | mbrumbelow | Owned by: | waddlesplash |
---|---|---|---|
Priority: | normal | Milestone: | R1/beta4 |
Component: | Drivers/Network/iaxwifi200 | Version: | R1/Development |
Keywords: | Cc: | ||
Blocked By: | Blocking: | #16937 | |
Platform: | All |
Description
All of my NUC's have an Intel AX200 WIFI 6 card. Haiku boots up with no problems. When it is time to select the Wi-Fi network in preferences no Wi-Fi icon is displayed up. See attached for Listdev, et al.
It is my understanding that Intel WIFI 6 cards are supported in OpenBSD but not in FreeBSD. A port is in Progress, but the work is not complete. Intel WIFI 6 cards are in most NUC's today (System76 as an example).
Attachments (3)
Change History (18)
by , 4 years ago
Attachment: | listdev_image2.jpg added |
---|
comment:2 by , 4 years ago
FreeBSD driver is not ready yet:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=244261
https://bsd-hardware.info/index.php?id=pci:8086-2723-8086-0084
comment:3 by , 4 years ago
Component: | Network & Internet/Wireless → Drivers/Network |
---|---|
Keywords: | WiFi Intel removed |
Owner: | changed from | to
Priority: | high → normal |
Type: | bug → enhancement |
Version: | R1/beta2 → R1/Development |
comment:4 by , 3 years ago
According to
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=244261#c46
and
https://wiki.freebsd.org/WiFi/Iwlwifi
AX200, AX201 and AX210 devices are now supported by FreeBSD.
comment:5 by , 3 years ago
They are only supported experimentally, with many caveats, and through the "linuxkpi" compatibility layer, not as native FreeBSD drivers, as far as I'm aware.
comment:6 by , 3 years ago
Blocking: | 16937 added |
---|
comment:7 by , 3 years ago
Summary: | Intel WIFI 6 AX200 not functioning → Intel WIFI 6 AX200 / ax201 not functioning |
---|
comment:8 by , 3 years ago
So, the situation is, as far as I can tell:
- FreeBSD is experimenting with a Linux compatibility layer for the linux iwlwifi driver (and possibly later on for other wifi drivers as well) (links already posted in comments above). The good news is it will allow them to share drivers with Linux. The bad news is it probably won't work so easily with our own compatibility layer to FreeBSD. Also, that work is not finished and still experimental, and does not support wifi-ac and wifi-n (so it will be slower than it could).
- On the other hand, OpenBSD has a native driver (https://man.openbsd.org/iwx.4), based on the Linux one as well, but with a lot of changes to adjust it to their API. This one supports Wifi-N and Wifi-AC already, but it will be less easy to synchronize with the Linux driver in the future, so if we use this one, we will depend on OpenBSD to provide us driver updates.
I don't know how easy it is to get the Linux driver running, and how much effort the FreeBSD porting efforts remove from that. I also don't know how easy it is to get an OpenBSD compatibility layer in addition to our FreeBSD compatibility layer.
The Linux driver has its own homepage: https://wireless.wiki.kernel.org/en/users/Drivers/iwlwifi
Firmware is needed, it can be found here: http://firmware.openbsd.org/firmware/7.1/iwx-firmware-20211101.tgz or in the linux-firmare git repository. The license allows redistribution in un-modified forms, that should be fine for us.
comment:9 by , 3 years ago
OpenBSD has been maintaining their WiFi drivers pretty seriously. FreeBSD on the other hand has not in recent years; they do not have any drivers with 802.11AC support, and now OpenBSD has at least 3 that I know of. The OpenBSD drivers tend to be very high-quality and very carefully tested (commits often note precisely what devices something was tested on.) The code is also very readable. On the other hand, Linux drivers are ... well, they're Linux drivers.
The OpenBSD WiFi stack and the FreeBSD one come from a common origin, but have diverged sharply in the last decade or so. Porting drivers between the two is possible but a huge pain. On the other hand, the ioctl surface between the two is not quite so different, and so implementing an "ioctl compatibility layer" to let the OpenBSD WiFi stack handle FreeBSD ioctls may be possible.
Considering I know the most about all the moving parts here and am the maintainer of most of this code in our tree, I probably should be the one to attempt such a thing, or at least get started with it.
comment:10 by , 3 years ago
If I understand the plans on FreeBSD side, the goal is to migrate everything to LinuxKPI and use Linux drivers directly, and deprecate the other drivers.
For us this more or less means FreeBSD isn't really an interesting option anymore, so we have a choice of either OpenBSD or Linux. OpenBSD is a better choice not only because of cleaner code, but also because of licensing, I guess.
Now the question is, how do we migrate? Indeed some compatibility so we don'tneed to replace all our existing drivers at once would be nice
comment:11 by , 3 years ago
Well, the problem is, while OpenBSD supports newer hardware better than FreeBSD (e.g. iwm, iwx, bwfm), they don't support older hardware nearly as well (e.g. rtwn, ath; our drivers from FreeBSD support e.g. 8812/8821AU and AR93xx/94xx device families respectively while the OpenBSD equivalents do not.) Hence we at least for a time need to support both and not just transition (or we spend time upstreaming lots of new code into OpenBSD...)
comment:12 by , 3 years ago
Component: | Drivers/Network → Drivers/Network/iaxwifi200 |
---|---|
Owner: | changed from | to
Platform: | x86-64 → All |
Good news: I have a prototype port of this driver which PulkoMandy tested; it successfully scans for networks and even tried to connect before it crashed. I made a number of fixes since then and the new version will probably work, but PulkoMandy hasn't yet been available to debug it with me yet. It will be named "iaxwifi200", so I've added a component for it already.
comment:14 by , 3 years ago
Yes. More to the point it supports the 8086, 2723
in your listdev screenshot.
comment:15 by , 3 years ago
Milestone: | Unscheduled → R1/beta4 |
---|---|
Resolution: | → fixed |
Status: | new → closed |
Driver was enabled by default in hrev56171. Any further problems please open a ticket.
Listdev Image