根据 PCIe FW 规范 3.1 说
在将控制权返回给 BIOS 之前,扩展 ROM 代码会移动运行时代码
我目前正在做的是将扩展 ROM 二进制文件从临时位置复制到运行时位置(这两个位置分别由 CS 和 BX 中的 BIOS 提供),并且我在此复制期间禁用中断并在完成后启用,我我还在更新字节校验和,以便 BIOS 将其视为有效映像,正在发生的事情是在处理一些初始 BIOS 调用之后,系统正在重新启动,所以我怀疑二进制损坏,但根据 PCIe FW 规范 3.1
系统固件必须对 PCI 扩展 ROM 运行时代码驻留在新范围内的区域进行写保护。
那么在将扩展 ROM 复制到运行时位置时,是否需要一些步骤或需要注意什么?
问候,
阿尔卡