Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 04 Jul 2020 15:34:23 +0000
From:      "Bjoern A. Zeeb" <bz@FreeBSD.org>
To:        freebsd-wireless <freebsd-wireless@freebsd.org>
Subject:   status-report 11ac, Intel - request for testing Intel Wireless PCI attach
Message-ID:  <E236651C-0E4B-418D-A41E-B598A9FF755B@FreeBSD.org>

next in thread | raw e-mail | index | archive | help
Hi,

it’s about time for an update on the Intel WiFi and 11ac client 
project.

As you can read in the 2020Q2 status report [2] (once its out) as well,
the decision was to port over the dual-licensed native Linux driver
under BSD license and using linuxkpi rather than extending iwm(4) as
a first step.

By now most of the lower bits work fine enough so that we attach, can
load and run the firmware.  There is NO WIFI in this snapshot yet.

If you currently have a supported iwm(4) or unsupported Intel Wireless
card of the 7k/8k/9k/22k series (not the iwn(4) models) and want to help
testing you can use the branch at

https://github.com/bzfbd/freebsd-base/tree/iwlwifi

which is a FreeBSD CURRENT from July 4th, or download the last two 
commit
from there and apply them locally to your tree, compile, install, and
boot the new kernel, and then

kldload if_iwl

The driver will not be loaded automatically for you as we already do for
other drivers to avoid problems or conflicts.  Firmware will be loaded
automatically for you when you load the driver.  You’ll hopefully see 
a
message (with a typo or two) like:

# kldload if_iwl
HOORAY IWLWIFI LOADED. Check dmesg for:
   iwlwifi0: loaded firmware version ...ucode op_mode iwlmvm
   iwlwifi0: Detected..
   iwlwifi0: base HW address..
lines. If you cannot find them please report back.
#

If you don’t get this printed something went wrong.  If everything 
goes
well, you’ll find your hardware address at the end of dmesg printed 
out,
which means the card was detected, a firmware loaded, and we can talk to
the hardware.  That also means if your card was not yet supported, 
it’ll
be once the WiFi parts are done.

I have two sample dmesg outputs at the end of the email for you.  There
are a few “Failed”/“TODO” messages in there which you can ignore 
at this
time.  It’ll also try to load some firmware which doesn’t exist and 
that
is fine as well.


If you test and this does not work, that’s what I am really interested 
in
at the moment.  In that case can you please make sure to have 
bootverbose
enabled [1] and send me the output of dmesg and `pciconf -lvBbceV` for 
the
Intel wireless card entry.


We are currently still leaking PCI resources on module unload, so you if
you unload and try to load another driver or reload if_iwl.ko it’ll 
fail.
I suggest to do a reboot to clear up the test and then use FreeBSD as 
you
normally would.


Just to repeat again, there is no WiFi working yet in this snapshot, so
please don’t expect it yet.  I’ll update-you when there is more to 
test
for that.


Thanks you any feedback!

Bjoern


[1] 
https://www.freebsd.org/doc/handbook/boot-introduction.html#boot-kernel
[2] https://www.freebsd.org/news/status/


dmesg sample outputs:


If you check dmesg you’ll see something along the lines of:

sysctl_warn_reuse: can't re-use a leaf (compat.linuxkpi.debug)!
Intel(R) Wireless WiFi driver for FreeBSD
iwlwifi0: <iwlwifi> mem 0x9e200000-0x9e203fff at device 0.0 on pci2
iwlwifi0: Failed to set affinity mask for IRQ 1
iwlwifi0: Failed to set affinity mask for IRQ 2
iwlwifi0: Failed to set affinity mask for IRQ 3
iwlwifi0: Failed to set affinity mask for IRQ 4
iwlwifi0: Failed to set affinity mask for IRQ 5
iwlwifi0: Failed to set affinity mask for IRQ 6
iwlwifi0: Failed to set affinity mask for IRQ 7
iwlwifi0: Failed to set affinity mask for IRQ 8
iwlwifi0: Failed to set affinity mask for IRQ 9
iwlwifi0: Failed to set affinity mask for IRQ 10
iwlwifi0: Failed to set affinity mask for IRQ 11
iwlwifi0: Failed to set affinity mask for IRQ 12
iwlwifi-cc-a0-56.ucode: could not load firmware image, error 2
iwlwifi0: File size way too small!
iwlwifi0: api flags index 2 larger than supported by driver
iwlwifi0: TLV_FW_FSEQ_VERSION: FSEQ Version: 89.3.35.22
iwlwifi0: Found debug destination: EXTERNAL_DRAM
iwlwifi0: Found debug configuration: 0
iwlwifi0: loaded firmware version 55.d9698065.0 cc-a0-55.ucode op_mode 
iwlmvm
iwl-debug-yoyo.bin: could not load firmware image, error 2
iwl_mvm_rate_control_register XXX TODO
iwlwifi0: Detected Intel(R) Wi-Fi 6 AX200 160MHz, REV=0x340
iwlwifi0: base HW address: xx:xx:xx:xx:xx:xx
ng_ubt: HCI command 0xfc05 timed out


or (another card) on a machine with bootverbose=1 on the console you’d 
see:

# kldload if_iwl
sysctl_warn_reuse: can't re-use a leaf (compat.linuxkpi.debug)!
pci0: driver added
found-> vendor=0x8086, dev=0x2930, revid=0x02
         domain=0, bus=0, slot=31, func=3
         class=0c-05-00, hdrtype=0x00, mfdev=0
         cmdreg=0x0003, statreg=0x0280, cachelnsz=0 (dwords)
         lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns)
         intpin=c, irq=18
pci0:0:31:3: reprobing on driver added
pci1: driver added
found-> vendor=0x8086, dev=0x2723, revid=0x1a
         domain=0, bus=1, slot=0, func=0
         class=02-80-00, hdrtype=0x00, mfdev=0
         cmdreg=0x0006, statreg=0x0010, cachelnsz=8 (dwords)
         lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns)
         intpin=a, irq=16
         powerspec 3  supports D0 D3  current D0
         MSI supports 1 message, 64 bit
         MSI-X supports 16 messages in map 0x10
pci0:1:0:0: reprobing on driver added
iwlwifi0: <iwlwifi> mem 0xfe8fc000-0xfe8fffff irq 16 at device 0.0 on 
pci1
iwlwifi0: attempting to allocate 6 MSI-X vectors (16 supported)
msi: routing MSI-X IRQ 46 to local APIC 0 vector 55
msi: routing MSI-X IRQ 47 to local APIC 2 vector 52
msi: routing MSI-X IRQ 48 to local APIC 0 vector 56
msi: routing MSI-X IRQ 49 to local APIC 2 vector 53
msi: routing MSI-X IRQ 50 to local APIC 0 vector 57
msi: routing MSI-X IRQ 51 to local APIC 2 vector 54
iwlwifi0: using IRQs 46-51 for MSI-X
iwlwifi0: Failed to set affinity mask for IRQ 1
iwlwifi0: Failed to set affinity mask for IRQ 2
iwlwifi0: Failed to set affinity mask for IRQ 3
iwlwifi0: Failed to set affinity mask for IRQ 4
iwlwifi-cc-a0-56.ucode: could not load firmware image, error 2
iwlwifi0: File size way too small!
firmware: 'iwlwifi-cc-a0-55.ucode' version 55: 1219356 bytes loaded at 
0xffffffff823a3000
iwlwifi0: api flags index 2 larger than supported by driver
iwlwifi0: TLV_FW_FSEQ_VERSION: FSEQ Version: 89.3.35.22
iwlwifi0: Found debug destination: EXTERNAL_DRAM
iwlwifi0: Found debug configuration: 0
iwlwifi0: loaded firmware version 55.d9698065.0 cc-a0-55.ucode op_mode 
iwlmvm
iwl-debug-yoyo.bin: could not load firmware image, error 2
pci2: driver added
pci3: driver added
pci4: driver added
iwl_mvm_rate_control_register XXX TODO
Hiwlwifi0: Detected Intel(R) Wi-Fi 6 AX200 160MHz, REV=0x340
OORAY IWLWIFI LOADED. Check dmesg for:
   iwlwifi0: loaded firmware version ...ucode op_mode iwlmvm
   iwlwifi0: Detcted..
   iwlwifi0: base HW address..
lines. If you cannot find them please report back.
iwlwifi0: base HW address: xx:xx:xx:xx:xx:xx






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E236651C-0E4B-418D-A41E-B598A9FF755B>