Add our firmware path to the in-kernel lookup path
Newer kernels (since torvalds/linux@abb139e75c2cdbb955e840d6331cb5863e409d0e) try to read firmware directly from the filesystem before falling back to a userspace helper (udev) if firmware cannot be found (in even newer kernels, the fallback path can be disabled altogether). By default, only certain paths in /lib/firmware* are searched, so this was initially not helpful for NixOS. Since torvalds/linux@27602842060484b564cd725241b402b0bddfb830 (which, based on the commit message, was implemented just for NixOS, go us!), though, an extra path can be dynamically prepended to the search path. So do that, in three ways: 1. Pass a kernel command line option in case the module is built-in 2. Add a line to modprobe.conf in case the module isn't yet loaded by activation-time 3. Add an activation script to set the option in /sys in case the module is already loaded by activation-time.
parent
5737604b
Please register or sign in to comment