Determing if a driver and system are using MSI

Since MSI was brought up today, is there any easy way to determine if a
dirver/board/system combination is using MSI? I have a client who needs
to determine this, preferably from user space, worst case from the
debugger (but they do not have the driver source).

Don Burn (MVP, Windows DKD)
Windows Filesystem and Driver Consulting
Website: http://www.windrvr.com
Blog: http://msmvps.com/blogs/WinDrvr

I think that you could look at the
InterruptManagement\MessageSignaledInterruptProperties subkey of the
device’s hardware key for “MSISupported==1” (probably != 0).

mm

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Don Burn
Sent: Friday, January 28, 2011 5:26 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] Determing if a driver and system are using MSI

Since MSI was brought up today, is there any easy way to determine if a
dirver/board/system combination is using MSI? I have a client who needs
to determine this, preferably from user space, worst case from the
debugger (but they do not have the driver source).

Don Burn (MVP, Windows DKD)
Windows Filesystem and Driver Consulting
Website: http://www.windrvr.com
Blog: http://msmvps.com/blogs/WinDrvr


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

Sure Don. If I understand your question correctly, you can look at the
device’s assigned resources. If the IRQ is negative when interpreted as a
32-bit signed integer, then the device is using MSI (or MSI-X or home-rolled
MSI without the config struct.)

Jake Oshins
Hyper-V I/O Architect
Windows Kernel Group

This post implies no warranties and confers no rights.


“Don Burn” wrote in message news:xxxxx@ntdev…

Since MSI was brought up today, is there any easy way to determine if a
dirver/board/system combination is using MSI? I have a client who needs
to determine this, preferably from user space, worst case from the
debugger (but they do not have the driver source).

Don Burn (MVP, Windows DKD)
Windows Filesystem and Driver Consulting
Website: http://www.windrvr.com
Blog: http://msmvps.com/blogs/WinDrvr