阅读:1310回复:5
关于PCI基地址的问题
我用driverwork编写PCI在win2000下的驱动,驱动安装已经完成,通过KPciConfiguration获得的配置信息都正确,两个基地址分别为:
f0800000和f0000000。自动生成了两个KMemoryRange类的变量:m_MemoryRange0和m_MemoryRange1,可是我通过m_MemoryRange0.Base()和m_MemoryRange1.Base()获得的地址不是f0800000和f0000000,却是ebad9000和ebada000,请教各位大虾究竟是怎么回事? |
|
|
沙发#
发布于:2004-01-14 11:30
一个是翻译后的地址
|
|
|
板凳#
发布于:2004-01-14 11:59
I/O映射下,使用KIoRange的变量的Base函数才能看到和KPciConfiguration一致的结果
|
|
地板#
发布于:2004-01-14 13:05
KPciConfiguration获得的是物理地址吗?
|
|
|
地下室#
发布于:2004-01-14 17:03
KPciConfiguration读取的是PCI配置空间的值,在基址积存器中得到的物理地址。
|
|
5楼#
发布于:2004-01-15 08:30
求救啊:最近开发一个老ISA接口的驱动,想精确定时5ms,但老是连不到IRQ0,不知何故?哪位大侠能给点意见?
还有,如果用DDK里的软件定时,如何实现?那个KTIMER和自定义的DCP结构不大懂,哪位有这方面的源码借参考一下可以吗? 那个卡上有一个寄存器的地址是0xF000,不是说ISA下最多只认识10位地址吗?怎么出了个这么长的地址?我还没对它访问,想先搞清楚一下。 |
|
|