你能在“实模式”下访问PCI卡(32位)吗?“实模式”不是16位吗?我有一个开发人员声称他只能在实模式下访问硬件。但是PCI是32位的。
发布于 2012-03-21 05:06:44
可以,停那儿吧。
IO端口0xCF8和0xCF9用作索引和数据寄存器,用于访问PCI配置空间。要写入索引寄存器的地址(即0xCF8)具有固定的预定义格式(参见PCI规范)。要访问pci配置数据,请先写入索引寄存器,然后从数据寄存器读取。
The Index register is a DWORD (32-bit) register and the format is:
Byte-3 = 0x80
Byte-2 = Bus No
Byte-1 = Upper 5 bits as DEVICE no, and lower 3 bits as FUNCTION no.
Byte-0 = Register no. to read from config space因此,要在实模式下从Bus:0 Device:0 Func:0寄存器:0读取,您可以这样说:
IoPortWrite32(0xCF8, 0x80000000);
ValueRead = IoPortRead32(0xCFC);希望这能有所帮助!
谢谢你,罗希特
https://stackoverflow.com/questions/7535457
复制相似问题