How Do I Load a Specific Kernel Module?

I have a piece of hardware that’s supported in the kernel since 2.6.0, but not recognised in NixOS. How do I go about loading the module in the NixOS configuration please? I have Googled this a fair bit, but for some reason I just can’t figure out exactly how to load this specific module.

The module in question is this one: https://linux-hardware.org/?id=pci:104c-823f-104c-823f

You can use boot.kernelModules:

boot.kernelModules = [
  "firewire_core"
  "firewire_ohci"
]

At least, afaict those are the names.

Thanks! Added that to my config, rebuilt and rebooted, and although it didn’t pick up the card straight away, I was able to do modprobe firewire_core and modprobe firewire_ohci which worked perfectly.

Hm, odd, those are instructions for loading the modules at boot. Where did you add the config, are you sure it’s evaluated?

I added it straight to my configuration.nix:

However, a couple of times the module seemed to get removed for some reason. The card is a PCI-e firewire card and I was connecting and disconnecting the camera a few times to switch tapes, and a couple of times after switching a tape the module had been removed and I had to run modprobe again.

So, I suspect that your instructions worked fine, but by the time I actually used the card the modules had been removed by something. I have never used this card before, so it could be a bit iffy.