参见英文答案 > Custom kernel: fails to load firmware when module built-in 1个
我了解到固件子系统使用udevd将固件复制到创建的sysfs’data’条目.
但是,如果内置的驱动程序模块udevd还没有启动,它是如何工作的?
我使用的是3.14内核.
TIA!
解决方法:
我仔细阅读了内核源代码,特别是drivers / base / firmware_class.c,并发现了这一点
CONFIG_FW_LOADER_USER_HELPER
将激活udev固件加载变量(显然仅在udev运行时可用于可加载模块).但正如LKML所述,这似乎是一种过时的方法.
此外,内置模块所需的固件通过fw_get_filesystem_firmware()通过kernel_read()从initramfs加载,确切地说.