【PCIe 总线及设备入门学习专栏 10 -- pci linux driver】
文章目录
- Overview
-
- pci_dev 结构体介绍
- pci_resource 相关函数
-
- struct resource
- pci_read_bases
-
- __pci_read_base
- pcibios_bus_to_resource
- PCIe 常用函数
-
- pci_resource_start
- pci_resource_end
- pci_resource_len
- PCIe driver example
Overview
PCI体系结构的拓扑关系如图所示,而图中的不同数据结构就是用于来描述对应的模块;
- Host Bridge 连接 CPU 和PCI系统,由
struct pci_host_bridge
描述; struct pci_dev
描述PCI设备,以及 PCI-to-PCI 桥设备;struct pci_bus
用于描述 PCI总线;struct pci_slot
用于描述总线上的物理插槽;
本篇文章主要是介绍 PCIe device, 所以主要是介绍 pci_dev
结构体,以及使用这个结构体的常见函数。
pci_dev 结构体介绍
每种类的PCI设备都可以用结构类型 pci_dev
来描述。更为准确地说,应该是每一个PCI 功能,即 PCI 逻辑设备都唯一地对应有一个 pci_dev
设备描述符。该数据结构的