X86主板驱动开发:使用DDK函数读写主板芯片组寄存器出错
使用AMD的最新X86 APU做驱动开发:使用DDK函数读写主板芯片组寄存器出错,请教
安装了XP+SP3,使用200的DDK进行驱动开发,
对于读写I/O映射空间的以下函数
8位输入:UCHAR READ_PORT_UCHAR((PUCHAR)port)
16位输入:USHORT READ_PORT_USHORT((PUSHORT)port)
32位输入:ULONG READ_PORT_ULONG((PULONG)port)
8位输出:WRITE_PORT_UCHAR((PUCHAR)port,(UCHAR)value)
16位输出:WRITE_PORT_USHORT((PUSHORT)port,(USHORT)value)
32位输出:WRITE_PORT_ULONG((PULONG)port,(ULONG)value)
可以正常使用;
对于蜂鸣器可以操作(操作端口0x40h-0x43h和ox61h),可以通过oxCF8h和0xCFC端口读出挂载在内部PCI线上的Configuration Register区域数据。
但是如果我要读写芯片组上的寄存器{对与内存映射的空间的读写},在自己编写的驱动程序中使用READ_REGISTER_ULONG函数,在应用程序上使用DeviceIoControl调用驱动程序的READ_REGISTER_ULONG函数,在DriverMonitor软件中提示:
1853.922 Win32 RTL: RtlNtStatusToDosError(0xc0000232): No Valid Win32 Error Mapping
1853.922 Default Enter HelloDDKDispatchRoutin
1853.922 Win32 RTL: Edit ntos\rtl\generr.c to correct the problem
1853.922 Default IRP_MJ_CREATE
1853.922 Win32 RTL: ERROR_MR_MID_NOT_FOUND is being returned
1853.922 Default Leave HelloDDKDispatchRoutin
1853.922 Win32 RTL: RtlNtStatusToDosError(0xc0000232): No Valid Win32 Error Mapping
1853.922 Default Enter HelloDDKDeviceIOControl
1853.922 Win32 RTL: Edit ntos\rtl\generr.c to correct the problem
1853.922 Default Leave HelloDDKDeviceIOControl
1853.922 Win32 RTL: ERROR_MR_MID_NOT_FOUND is being returned
1853.922 Default Enter HelloDDKDeviceIOControl
1853.922 Default Leave HelloDDKDeviceIOControl
1853.938 Win32 RTL: RtlNtStatusToDosError(0xc0000232): No Valid Win32 Error Mapping
这样的信息,
请教这些对于内存映射的空间的读写的DDK函数,关于函数的参数问题,使用上要注意啥?
最好给出个实际例子
安装了XP+SP3,使用200的DDK进行驱动开发,
对于读写I/O映射空间的以下函数
8位输入:UCHAR READ_PORT_UCHAR((PUCHAR)port)
16位输入:USHORT READ_PORT_USHORT((PUSHORT)port)
32位输入:ULONG READ_PORT_ULONG((PULONG)port)
8位输出:WRITE_PORT_UCHAR((PUCHAR)port,(UCHAR)value)
16位输出:WRITE_PORT_USHORT((PUSHORT)port,(USHORT)value)
32位输出:WRITE_PORT_ULONG((PULONG)port,(ULONG)value)
可以正常使用;
对于蜂鸣器可以操作(操作端口0x40h-0x43h和ox61h),可以通过oxCF8h和0xCFC端口读出挂载在内部PCI线上的Configuration Register区域数据。
但是如果我要读写芯片组上的寄存器{对与内存映射的空间的读写},在自己编写的驱动程序中使用READ_REGISTER_ULONG函数,在应用程序上使用DeviceIoControl调用驱动程序的READ_REGISTER_ULONG函数,在DriverMonitor软件中提示:
1853.922 Win32 RTL: RtlNtStatusToDosError(0xc0000232): No Valid Win32 Error Mapping
1853.922 Default Enter HelloDDKDispatchRoutin
1853.922 Win32 RTL: Edit ntos\rtl\generr.c to correct the problem
1853.922 Default IRP_MJ_CREATE
1853.922 Win32 RTL: ERROR_MR_MID_NOT_FOUND is being returned
1853.922 Default Leave HelloDDKDispatchRoutin
1853.922 Win32 RTL: RtlNtStatusToDosError(0xc0000232): No Valid Win32 Error Mapping
1853.922 Default Enter HelloDDKDeviceIOControl
1853.922 Win32 RTL: Edit ntos\rtl\generr.c to correct the problem
1853.922 Default Leave HelloDDKDeviceIOControl
1853.922 Win32 RTL: ERROR_MR_MID_NOT_FOUND is being returned
1853.922 Default Enter HelloDDKDeviceIOControl
1853.922 Default Leave HelloDDKDeviceIOControl
1853.938 Win32 RTL: RtlNtStatusToDosError(0xc0000232): No Valid Win32 Error Mapping
这样的信息,
请教这些对于内存映射的空间的读写的DDK函数,关于函数的参数问题,使用上要注意啥?
最好给出个实际例子
...全文
相关推荐
windows xp server sp1 (1)DDK
好资料,可以在开始 程序 development kit >Build Environments->Windows 2000->Windows 2000 Checked Build Environment查看
WinIo 3.0 for 32位和64位系统
本仓库提供了WinIo 3.0的完整资源包,专为需要底层硬件访问能力的开发者设计。WinIo库允许用户在Windows操作系统环境下直接对I/O端口、内存地址以及中断进行存取操作,非常适合于驱动开发、嵌入式应用、硬件测试等领域
示例驱动程序
获得Windows内核未导出全局变量地址
si32.rar_驱动编程_Windows_Unix_
PCI modem Windows_SM56_6.12.07_DFV Cis32
从汇编语言到Windows内核编程_Windows编程_
《从汇编语言到Windows内核编程》这是一本关于Windows内核编程的书籍


驱动开发/核心开发
