lycchqcxy 发表于 2017-11-16 14:37

PCI 请教

主要是针对linux系统。
#define pci_resource_start(dev,bar)   ((dev)->resource[(bar)].start)

设备的resource是在什么时候被初始化的?这个值又是从哪里得到的呢?
根据网上一些资料我说一下我的理解:linux系统启动时pci核心模块扫描到外面的PCI设备然后根据其配置空间基地址得到要申请的内存空间大小,然后CPU根据pci_resource_start返回的物理地址映射到一块内存空间,之后CPU操作该内存空间就可以操作pci的寄存器了。那么现在的问题就是,pci_dev中的resource 字段是怎么得来的呢???




开发环境是嵌入式平台:PowerPC+Linux.
页: [1]
查看完整版本: PCI 请教