/*
* Firmware loading works like this:
* - kernel sets FIRMWARE env var
* - userspace checks /lib/firmware/$FIRMWARE
* - userspace waits for /sys/$DEVPATH/loading to appear
* - userspace writes "1" to /sys/$DEVPATH/loading
* - userspace copies /lib/firmware/$FIRMWARE into /sys/$DEVPATH/data
* - userspace writes "0" (worked) or "-1" (failed) to /sys/$DEVPATH/loading
* - kernel loads firmware into device
*/
FIRMWAREentries in theUEventAddtry to load the firmware according tolinux/Documentation/firmware_class/READMEmdev summarizes it this way: