Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想通过将新的(页面对齐的)地址写入 BAR0/1 来更改 PCI 设备的 IOaddress。当我使用 BIOS 功能执行此操作时,我无法访问新地址的 PCI 设备。
是否还需要做其他事情才能让它发挥作用?我在实模式下使用汇编程序。
如果您的端点设备位于网桥后面,则适当更改 Pre-fetchable Base Upper 32 Bit 和 Pre-fetchable Limit Upper 32 Bit 寄存器。我认为您无需担心根复合体。
覆盖 BAR 应该会更改设备的地址。(只要你做得对。)
设备是否位于网桥后面?如果是这样,您还需要更新网桥配置寄存器。
此外,芯片组/根复合体可能有自己的总线解码配置。检查芯片组数据表。