内置固件¶
固件可以内置到内核中,这意味着将固件直接构建到 vmlinux 中,以便避免必须从文件系统查找固件。相反,可以直接在内核内部查找固件。您可以使用内核配置选项启用内置固件
CONFIG_EXTRA_FIRMWARE
CONFIG_EXTRA_FIRMWARE_DIR
有几个原因可能会让您考虑使用 CONFIG_EXTRA_FIRMWARE 将固件构建到内核中
速度
访问启动设备需要固件,并且用户不希望将固件塞入启动 initramfs 中。
即使您有这些需求,也有几个原因可能会使您无法使用内置固件
法律 - 固件与 GPL 不兼容
某些固件可能是可选的
固件升级是可能的,因此新的固件将意味着完全重建内核。
某些固件文件可能非常大。远程处理子系统是处理此类固件的子系统的一个示例
固件可能需要从某些特定设备的动态位置抓取,例如某些 WiFi 芯片组的校准数据。此校准数据对于每个售出的设备可能是唯一的。