有关PCI设备初始化的说明

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有关PCI设备初始化的说明相关的知识,希望对你有一定的参考价值。

维基百科说:

要寻址PCI设备,必须通过映射到系统的I / O端口地址空间或内存映射地址空间来启用它。系统的固件,设备驱动程序或操作系统编程基地址寄存器(通常称为BAR),通过将配置命令写入PCI控制器来通知设备其地址映射。

这是否意味着当地址写入BAR时,PCI设备会被初始化?我正试图通过裸机初始化Qemu Aarch64上的Bochs VGA卡,这就是我要问的原因。谢谢!

答案

写入BAR只会告诉设备应该响应的地址范围。 (它甚至不允许设备响应地址;为此您需要设置MSE [存储空间启用]。)初始化设备通常需要许多步骤。某些步骤对于不同的PCI设备是通用的,而其他步骤完全是设备特定的。

以上是关于有关PCI设备初始化的说明的主要内容,如果未能解决你的问题,请参考以下文章

Linux下PCI设备驱动程序开发 --- PCI驱动程序实现

linux pci 驱动小结

pci枚举初始化部分

Linux驱动之PCI

DPDK igb_uio驱动分析

pcie和pci有啥区别?