Is the Broadcom BCM957414A4142CC (BCM57414) 25G NIC supported?
-
Recompiling a kernel to use in pfSense is a lot more involved. You need to build against the full pfSense sources.
Steve
yeah this is where i would have given up. but if i can just replace the module. i am very happy :-) to try that out and make a small "idiot" tutorial after
-
@stephenw10 said in Is the Broadcom BCM957414A4142CC (BCM57414) 25G NIC supported?:
No you can probably load the module in preference to the in kerne driver. Most drivers allow that.
Create /boot/loader.conf.local and add to it:if_bnxt_load="YES" if_bnxt_name="/path/to/module/if_bnxt.ko"
Recompiling a kernel to use in pfSense is a lot more involved. You need to build against the full pfSense sources.
Steve
so if I understand you correctly I should not replace the if_bnxt.ko in /boot/kernel... I should put the new .ko file somewhere and tell the loader.conf (i don't have a loader.conf.local) to load this new driver?
-
Create loader.conf.local and use that. It won't be overwritten by other config changes.
You can either replace the existing module or put it somewhere else and give it the path. I prefer the latter.
Steve
-
@stephenw10 Okay, I have done it the quick and dirty way. Just name the existing if_bnxt.ko to if_bnxt.ko.old and insert the newly compiled into /boot/kernel/if_bnxt.ko. I still had to run ifconfig bnxt0 promisc to make the system work again :-( can I somehow check what pfSense loaded? Maybe it ignored if_bnxt.ko and it is somehow in the kernel after all?
-
@yves_ update! replacing does not work... because the module is built into /boot/kernel/kernel
Now I tried to load it with kldload /boot/kernel/if_bnxt.ko
KLD if_bnxt.ko: depends on kernel - not available or version mismatch linker_load_file: /boot/kernel/if_bnxt.ko - unsupported file type
I guess back to squer one ;-)
-
At the console you should see it report that loading at boot before the kernel boots. Or an error if it can't load. You might also try changing a description line in the driver so you can see that in thr boot logs or sysctls where it reports it.
-
Ah, yes, like that!
Mmm, definitely not a 32bit module?
-
@stephenw10 well I used FreeBSD 12.3 Stable amd64 should I use FreeBSD 12.0 i386?
-
No, it should be 64bit but if you'd accidentally used 32bit it would have presented similarly to that.
Try building against 12.3-release instead, assuming you are running 2.6?
Or update to a 2.7 snapshot and try the 12-stable module there.
Steve
-
@stephenw10 I made a little mistake I used 12.3-Release amd64... if I do it with that one. Which I did. Can it happen that I mistakely compiled it 32bit? is just ran "make kernel"
-
No it will have built a 64bit module.
Do you actually see an updated module though? The file dates from when you compiled it?
The default install will already have the old module?I would just try whatever you can. It might be that driver requires an absolute specific kernel version in which case you're probably out of luck.
Steve
-
@stephenw10 said in Is the Broadcom BCM957414A4142CC (BCM57414) 25G NIC supported?:
Do you actually see an updated module though? The file dates from when you compiled it?
The default install will already have the old module?I would just try whatever you can. It might be that driver requires an absolute specific kernel version in which case you're probably out of luck.
Steve
I see the new date on the if_bnxt.ko so I guess this means it compiled the new module. But I did it on 12.3 Release now I downloaded 12.3 Stable and will do it again.
-
@yves_ Soooo I recompiled the driver again. With 12.3-Stable AMD64, the version 12.0-Stable I could not find.
-r-xr-xr-x 1 root wheel 225K Jul 27 18:33 if_bnxt.ko
Unfortunatly same result:
KLD if_bnxt.ko: depends on kernel - not available or version mismatch linker_load_file: /boot/kernel/if_bnxt.ko - unsupported file type
-
Hmm, damn. Can you try loading any of those into a 2.7 snapshot?
-
@stephenw10 This is from the system I used to compile the driver
root@freebsd-12-3-stable:~ # kldload /boot/kernel/if_bnxt.ko root@freebsd-12-3-stable:~ # kldstat -v | grep if_bnxt 5 1 0xffffffff82725000 162a0 if_bnxt.ko (/boot/kernel/if_bnxt.ko) root@freebsd-12-3-stable:~ # ls -lh /boot/kernel/if_bn* -r-xr-xr-x 1 root wheel 225K Jul 27 18:33 /boot/kernel/if_bnxt.ko
As you can see it worked to load it on this system the drivers was compiled :-(
I will start a VM with 2.7 snapshot and try to load it into that one.
-
@yves_ Or you can try the file yourself if_bnxt.ko
-
Shows as deleted. What was/is that compiled against?
-
@stephenw10 sorry, stupid file provider :-) here you go: if_bnxt.zip its compiled against
FreeBSD freebsd-12-3-stable 12.3-STABLE FreeBSD 12.3-STABLE GENERIC amd64
-
@yves_ can I compile it on 2.6.0? some how? how do I get the source inside of the /usr/src folder? its currently empty
-
Mmm, still fails in 2.7.
Compiling pfSense is non-trivial. There are some guides about if you search but it's not something I can go into detail on here.
Steve