我一直在/lib/firmware
几台机器上跟踪上游 Linux 固件存储库,对该树进行非常定期的更新。
我思考我在上周进行 git-pull 的机器上启动旧内核时发现固件加载错误。
该存储库是否有关于向后兼容旧内核的策略,或者这不是问题(例如),因为内核所做的只是使用标准接口将二进制文件加载到目标设备上,该接口可能很长时间以来都没有改变时间?
答案1
您可以在内核源代码包中找到政策/指南Documentation/driver-api/firmware/firmware-usage-guidelines.rst
,或者在这里:
https://docs.kernel.org/driver-api/firmware/firmware-usage-guidelines.html
固件指南
切换到较新内核的用户应该不是必须安装更新的固件文件才能保持硬件正常工作。同时,更新的固件文件不得对旧内核版本的用户造成任何影响。
使用 linux-firmware 中的固件的驱动程序应遵循本指南中的规则。 (如果对固件的控制有限,即公司不支持Linux,固件来自其他地方,那么当然这些规则不会严格适用。)
然后,它继续详细介绍如何在各种常见情况下处理固件版本控制。