阅读:1514回复:0
PCI设备的遍历
看了本站的一篇资料,是遍历PCI设备,颇为受益,只是文中的ReadPCIDeviceDescriptor函数却不知如何实现,哪位高手知道吗?请赐教:
[quote]遍历PCI总线确定IDE控制器端口号 Abstract PCI设备的遍历 如何确定IDE控制器的起始端口号 1 Background 过去我们编码过程中,在确定IDE控制器的端口号时,都是直接使用0x1F0―0x1F7(主IDE控制器)或0x170―0x177(副IDE控制器)。对于不使用这些端口的机器(比如Goalia),就会出现初始化失败的情况,原因是无法访问硬盘。 其实这个0x1F0―0x1F7由来于ISA总线系统,并不能适应纯PCI设备的要求。 纯PCI设备希望可以不使用固定的IO端口,即要求系统对它进行动态配置, 这个时候它所占用的端口就不一定是0x1F0―0x1F7了。为解决这个问题, 我们需要遍历一下PCI总线, 从PCI bus配置空间中找到我们要访问的设备,然后再从设备的配置信息中得到IDE控制器使用哪些端口。 2 Mainbody 2.1 配置空间简介。 每 |
|
最新喜欢:mao050... |