Firmware loading and suspend/resume
Posted Aug 16, 2012 6:28 UTC (Thu) by JohnLenz
In reply to: Firmware loading and suspend/resume
Parent article: Firmware loading and suspend/resume
Firmware loading happens through udev. The kernel raises a hotplug event which udev sees. See this README. On Ubuntu, /lib/udev/rules.d/50-firmware contains the udev rule, which runs the /lib/udev/firmware binary whenever the kernel requests a firmware file.
The reason is because the kernel can run in strange environments: read only root file system, running with containers with locked down root filesystems, etc. With filesystem namespaces, there is no single filesystem so the kernel has no idea where to look for files. Even calling into custom filesystem code from somewhere else in the kernel is somewhat icky. Instead the kernel just requests userspace take care of it.
to post comments)