A guide for intel wireless adapter AC 9260 and 9560 driver installation on Freebsd 12.1

Raffeale Thank you for this guide. I was able to get my wlan more or less working but some steps were needed (in my case)

From a fresh 12.1-RELEASE install

1.- I did a svnlite checkout from releng/12.1 and according to svnlite info /usr/src I got revision 359156
2.- There wasn't a iwm9260fw folder inside /usr/src/sys/modules/iwmfw so I did a checkout from stable/12 and then overwrote the content of /usr/src/sys/modules/iwmfw

After successfully compiling the modules and manually loading them the system recognized the card and attached the driver but for some reason using if_iwm_load="YES" in /boot/loader.conf will load the module from /boot/kernel instead of /boot/modules
kldstat -v -n if_iwm.ko
Id Refs Address Size Name
16 1 0xffffffff8361d000 15d20 if_iwm.ko (/boot/kernel/if_iwm.ko)
Contains modules:
Id Name
526 pci/iwm


looks like I need to do some cleanup
find / -iname if_iwm.ko
/boot/kernel.old/if_iwm.ko
/boot/modules/if_iwm.ko
/boot/kernel/if_iwm.ko


anyway, I just added kld_list="/boot/modules/if_iwm.ko" to /etc/rc.conf and so far the card is automatically recognized and the corresponding firmware module /boot/modules/iwm9260fw.ko is also loaded. The card seem to be working.

Again, thanks for the guide

edit: I have checked the value of module_path and it appears to be correct...
cat /boot/defaults/loader.conf | grep module_path=
module_path="/boot/modules;/boot/dtb;/boot/dtb/overlays" # Set the module search path[CODE]
 
You are welcome,thanks for testing, remove the if_iwm.ko from kernel directory, The guide has this step.
 
I'm backkkkkk,
i put a working wifi card in and finidhed installing a desktop and all of that stuff. then i just got to doing that driver again, and booted it up and it was giving me files not foound
legal.intel_iwi.license_ack=1 not foiund, commented it out and still not getting it in ifconfig. it was going me

iwmbt_fw_read: open: ibt-18-16-1.sfi : No such file or directory
that is for the Intel 9260AC Bluetools can't load. right? that that person posted on , and I am using the 9000 / 95xx one. still same message though.
 
iwm module just for ac9260 and 9560 wireless card.it dont include Bluetooth,r u trying to install Bluetooth driver?
if iwm not work, try using kldload to load iwm and look at dmesg
 
Hi userxbw as indicated in Vladimir Kondratyev comment on that bug report, try installing iwmbt-firmware from ports. (I got iwmbt-firmware-20190717_1 installed)

I think you can check for bluetooth kernel messages with dmesg |grep ng_ubt

Now according to a bug report I found in Ubuntu's launchpad the firmware you need is called ibt-19-32-1.sfi which should be inside /usr/local/share/iwmbt-firmware/ after iwmbt-firmware gets installed, don't quote me on the name of the firmware though xD

best regards
edit: iwmbt_fw_read: open: ibt-18-16-1.sfi : No such file or directory indicates that the system is trying to load that file... as I said previously the firmware should be inside /usr/local/share/iwmbt-firmware/ after iwmbt-firmware gets installed
 
iwm module just for ac9260 and 9560 wireless card.it dont include Bluetooth,r u trying to install Bluetooth driver?
if iwm not work, try using kldload to load iwm and look at dmesg
no that is just what was on that bug report for a reference to what is on it. still that message is the same iwmbt_fw_read: open: ibt-18-16-1.sfi : No such file or directory
kldload_iwm=yes ??

in boot.conf or rc.conf

---
nope that did not work in either file, I just get that message on the boot screen.

IMGWIFI.JPG
 
no that is just what was on that bug report for a reference to what is on it. still that message is the same iwmbt_fw_read: open: ibt-18-16-1.sfi : No such file or directory
kldload_iwm=yes ??

in boot.conf or rc.conf

---
nope that did not work in either file, I just get that message on the boot screen.

View attachment 7672

make sure the file exist find /usr/local -iname "ibt-18-16-1.sfi"
if that returns empty or nothing then you need to install iwmbt-firmware by using binary packages pkg install iwmbt-firmware or compile it from ports
 
make sure the file exist find /usr/local -iname "ibt-18-16-1.sfi"
if that returns empty or nothing then you need to install iwmbt-firmware by using binary packages pkg install iwmbt-firmware or compile it from ports
oh I just checked for the absolute dir and it is not there. let me go back in when I get a chance and run find of the file itself.

iwmbt-firmware or compile it from ports will be from ports seeing how I got no more wifi or net work to it until I get this resolved.
 
yeah I found that iwmbt-firmware in ports I run make it it goes whooo I got something missing let me go get it, nope can't no connection out.

which makes me go stupid disto. I already downloaded ports extracted it updated it before changing the card out of my laptop, and still it does not have everything it needs to compile what is in it. ... where is the logic in that... sorry for wasting your time. for something out of my control.

right now, I really don't feel like swapping out that card each time until I get this thing to work on that one card it doesn't.
 
yeah I found that iwmbt-firmware in ports I run make it it goes whooo I got something missing let me go get it, nope can't no connection out.

which makes me go stupid disto. I already downloaded ports extracted it updated it before changing the card out of my laptop, and still it does not have everything it needs to compile what is in it. ... where is the logic in that... sorry for wasting your time. for something out of my control.

right now, I really don't feel like swapping out that card each time until I get this thing to work on that one card it doesn't.
My apologies, I thought you already got the wireless driver working for your intel 9560.

The wireless portion of the card should work without the bluetooth firmware installed, mine does work without the bluetooth firmware but I got a 9260AC...

I would say: ignore anything related to iwmbt and check if the wireless card is working, ifconfig and check if wlan0 is present... and might be dmesg |grep iwm and check if the driver is finding the card.

About the ports: Yeah it sucks but AFAIK this is due to licensing issues... the port is just a bunch of Makefiles and some stuff that tells the computer how to adquire the source code for the port and how to compile... but the source resides elsewhere... in case of iwmbt-firmware I think is downloaded directly from Intel's servers (don't quote me on that though... I could be wrong)

regards
 
now that I'm a bit sledded down I could try to find it download it in Linux and mount my partition and maybe go from there. where does it put the source, I could try slipping it in there and see if it picks it up from there then runs with it.

ifconfig comes up with just lo and nothing else. so yeah it is not picking it up on boot.
 
now that I'm a bit seddled down I could try to find it download it in linux and mount my parition and maybe go from there. where does it put the source, I could try slipping it in there and see if it picks it up from there then runs with it.
Let's forget about bluetooth for now... and focus the wireless thing. Please post the output of the following commands

pciconf -lv
dmesg |grep iwm
kldstat -v -n if_iwm.ko

the last command will tell us if iwm is loaded and the path from which is being loaded. My installation already had an old version of if_iwm.ko installed in /boot/kernel/ so I needed to explicitly load the one from /boot/modules
 
kldstat says no such file or directory, but when I ls the /boot/modules it comes up /boot/modules/if_iwm.ko
dmesg grep comes up empty.
pciconf -lv tells me I got a Wireless-AC 9260 ... wtf now I m feeling stupid. I think I got that what's needed on my linux side to copy over to FreeBSD
 
now its telling me it does not know how to make if_iwm_9000.c no matter which one I try to compile in /usr/src/sys/modules/iwm. I commwnted out the reference to 9000 95xx in config.h and the files file. and still it tells me the above.
everything else it set for that 9260 if_iwm.ko is in /boot/modules and kldstat says no such file or directory.

this thing is cursed.
 
if the module exist but is not being loaded I would check that if_iwm_load="YES" is present in /boot/loader.conf
but No need to tamper with your file system just yet
try loading the module, as root: kldload /boot/modules/if_iwm.ko if the module loads and the firmware is available(iwm9260fw.ko I think is the name) you should see a message about the card being detected and assigned to iwm0 or something like that....
 
here is what you should see when manually loading the module with kldload /boot/modules/if_iwm.ko (granted that the module was not previously loaded)

iwm0: <Intel(R) Dual Band Wireless AC 9260> at device 0.0 on pci3
iwm0: hw rev 0x320, fw ver 34.0.0, address xx:xx:xx:xx:xx:xx
 
now its telling me it does not know how to make if_iwm_9000.c no matter which one I try to compile in /usr/src/sys/modules/iwm. I commwnted out the reference to 9000 95xx in config.h and the files file. and still it tells me the above.
everything else it set for that 9260 if_iwm.ko is in /boot/modules and kldstat says no such file or directory.

this thing is cursed.
did you compiled iwm and iwmfw9560 firmware successfully ?
post your compilation information here. I will help you .
 
the first line for the both of them compile and install, I seen to errors or warnings so I'd say yes. it is the second line for

# cd /usr/src/sys/modules/iwm
# make clean all install
==> /boot/modules/if_iwm.ko

when it comes back install -m 755 whatever whatever then right after that it says if_iwm.ko no file or directory.

okay they both compiled, kldload /boot/modules/if_iwm.ko and rc.conf set, boot screen is still showing that ibt.xxx.xxx. missing cannot download error. and I do not have any means to turn off bluetooth on this laptop.

I think it is giving me a catch 22, it will not load the wifi card because bluetooth is missing and it cannot download the source because it has no witi (network out).



which one would I download they are debs and I have no idea how to handle that let alone any part of where does hte source go .. 8260
 
the first line for the both of them compile and install, I seen to errors or warnings so I'd say yes. it is the second line for

# cd /usr/src/sys/modules/iwm
# make clean all install
==> /boot/modules/if_iwm.ko

when it comes back install -m 755 whatever whatever then right after that it says if_iwm.ko no file or directory.

okay they both compiled, kldload /boot/modules/if_iwm.ko and rc.conf set, boot screen is still showing that ibt.xxx.xxx. missing cannot download error. and I do not have any means to turn off bluetooth on this laptop.

I think it is giving me a catch 22, it will not load the wifi card because bluetooth is missing and it cannot download the source because it has no witi (network out).



which one would I download they are debs and I have no idea how to handle that let alone any part of where does hte source go .. 8260

This is really weird... my 9260AC work just fine without the bluetooth firmware and I have bluetooth enabled on uefi/bios.
anyway you don't need the whole source code but just the binary blob for the firmware

######## PLEASE SEE MY NEXT POST ###################
##### THIS IS NOT THE CORRECT ANWSER TO YOUR ISSUE BUT JUST A WAY TO TEST#######
https://git.kernel.org/pub/scm/linu...inux-firmware.git/plain/intel/ibt-18-16-1.sfi

I just downloaded that file and then ran as root mkdir -pv /usr/local/share/iwmbt-firmware/ and copied ibt-18-16-1.sfi to /usr/local/share/iwmbt-firmware/
after rebooting the system I can see ubt0 comes up

##### AFTER TESTING IT MIGHT BE A GOOD IDEA TO DELETE THE FOLDER ####
rm -rf /usr/local/share/iwmbt-firmware/
and turn off the system so the firmware gets unloaded (just rebooting won't unload the firmware)
 
the first line for the both of them compile and install, I seen to errors or warnings so I'd say yes. it is the second line for

# cd /usr/src/sys/modules/iwm
# make clean all install
==> /boot/modules/if_iwm.ko

when it comes back install -m 755 whatever whatever then right after that it says if_iwm.ko no file or directory.

okay they both compiled, kldload /boot/modules/if_iwm.ko and rc.conf set, boot screen is still showing that ibt.xxx.xxx. missing cannot download error. and I do not have any means to turn off bluetooth on this laptop.

I think it is giving me a catch 22, it will not load the wifi card because bluetooth is missing and it cannot download the source because it has no witi (network out).



which one would I download they are debs and I have no idea how to handle that let alone any part of where does hte source go .. 8260
Interesting... I was able to replicate your issue
if I try to compile using make clean all install i get the error make: don't know how to make device_if.h. Stop

instead try compile in three separated steps... let every step finish before issuing the next command
cd /usr/src/sys/modules/iwm
make clean
make all
make install
 
the first line for the both of them compile and install, I seen to errors or warnings so I'd say yes. it is the second line for

# cd /usr/src/sys/modules/iwm
# make clean all install
==> /boot/modules/if_iwm.ko

when it comes back install -m 755 whatever whatever then right after that it says if_iwm.ko no file or directory.

okay they both compiled, kldload /boot/modules/if_iwm.ko and rc.conf set, boot screen is still showing that ibt.xxx.xxx. missing cannot download error. and I do not have any means to turn off bluetooth on this laptop.

I think it is giving me a catch 22, it will not load the wifi card because bluetooth is missing and it cannot download the source because it has no witi (network out).



which one would I download they are debs and I have no idea how to handle that let alone any part of where does hte source go .. 8260

could you post your dmesg message here in detail. I found the source didn't
the first line for the both of them compile and install, I seen to errors or warnings so I'd say yes. it is the second line for

# cd /usr/src/sys/modules/iwm
# make clean all install
==> /boot/modules/if_iwm.ko

when it comes back install -m 755 whatever whatever then right after that it says if_iwm.ko no file or directory.

okay they both compiled, kldload /boot/modules/if_iwm.ko and rc.conf set, boot screen is still showing that ibt.xxx.xxx. missing cannot download error. and I do not have any means to turn off bluetooth on this laptop.

I think it is giving me a catch 22, it will not load the wifi card because bluetooth is missing and it cannot download the source because it has no witi (network out).



which one would I download they are debs and I have no idea how to handle that let alone any part of where does hte source go .. 8260
i have just had a glance at module source code,I didn’t find any iwmbt module from FreeBSD svn.could you post your dmesg here in detail.
 
I just swapped cards again (this morning) and now I am going to do the Bluetooth side to try and cut back on all of this hunt and peck and hacking to try to get this thing to work.

Code:
[root@FreeBSD-12 /usr/ports]# find . -type d -iname "iwmbt-firmware" 
./comms/iwmbt-firmware
[root@FreeBSD-12 /usr/ports]# cd ./comms/iwmbt-firmware
[root@FreeBSD-12 /usr/ports/comms/iwmbt-firmware]# make
===>  License INTEL accepted by the user
===>   iwmbt-firmware-20190717_1 depends on file: /usr/local/sbin/pkg - found
=> firmware-iwlwifi_20190717-2_all.deb doesn't seem to exist in /usr/ports/distfiles/.
=> Attempting to fetch http://cdn.debian.net/debian/pool/non-free/f/firmware-nonfree/firmware-iwlwifi_20190717-2_all.deb
firmware-iwlwifi_20190717-2_all.deb                   6630 kB 1980 kBps    03s
===> Fetching all distfiles required by iwmbt-firmware-20190717_1 for building
===>  Extracting for iwmbt-firmware-20190717_1
=> SHA256 Checksum OK for firmware-iwlwifi_20190717-2_all.deb.
===>  Patching for iwmbt-firmware-20190717_1
===>  Configuring for iwmbt-firmware-20190717_1
===>  Staging for iwmbt-firmware-20190717_1
===>   Generating temporary packing list
cd /usr/ports/comms/iwmbt-firmware/work/lib/firmware/intel && /bin/sh -c '(/usr/bin/find -Ed $1 $3 | /usr/bin/cpio -dumpl $2 >/dev/null 2>&1) &&  /usr/bin/find -Ed $1 $3 \(   -type d -exec /bin/sh -c '\''cd '\''$2'\'' && chmod 755 "$@"'\'' . {} +  -o -type f -exec /bin/sh -c '\''cd '\''$2'\'' && chmod 0644 "$@"'\'' . {} + \)' COPYTREE_SHARE . /usr/ports/comms/iwmbt-firmware/work/stage/usr/local/share/iwmbt-firmware
====> Compressing man pages (compress-man)
[root@FreeBSD-12 /usr/ports/comms/iwmbt-firmware]# make install
===>  Installing for iwmbt-firmware-20190717_1
===>  Checking if iwmbt-firmware is already installed
===>   Registering installation for iwmbt-firmware-20190717_1
Installing iwmbt-firmware-20190717_1...
[root@FreeBSD-12 /usr/ports/comms/iwmbt-firmware]#

########################################

could this be due to your solution is made for ver 12 and I am running 12.1 relese. the next step in that process fail.

Code:
# cd /usr/src/sys/modules/iwmfw/iwm9260fw
# make clean all install
==> /boot/modules/iwm9260fw.ko

# cd /usr/src/sys/modules/iwm
# make clean all install
==> /boot/modules/if_iwm.ko

# cd /usr/src/sys/modules/iwm
# make clean all install
# kldload /boot/modules/iwm9260fw.ko
# kldload /boot/modules/if_iwm.ko
when I remve the 9000 reference it then get to 9260 and then fails there too.
in /usr/src/sys/modules/iwm]# nano Makefile
Code:
#SRCS+= if_iwm_7000.c if_iwm_8000.c if_iwm_9000.c if_iwm_fw.c if_iwm_9260.c

SRCS+=  if_iwm_7000.c if_iwm_8000.c if_iwm_fw.c if_iwm_9260.c
after clean then make
Code:
[root@FreeBSD-12 /usr/src/sys/modules/iwm]# make
machine -> /usr/src/sys/amd64/include
x86 -> /usr/src/sys/x86/include
make: don't know how to make if_iwm_9260.c. Stop
 
Back
Top