Storport MSI(X) support in Windows Server 2003 SP2

Hi,

I understand, the IoConnectInterruptEx is used to support MSI(X) interrupts
in WDM driver and this API is available by default only from Vista & above.
The WDM drivers for Windows 2000, Windows XP, or Windows Server 2003 can
instead link to *iointex.lib* to use this API. (
http://msdn.microsoft.com/en-us/library/aa490464.aspx).

Now coming to the Storport miniport part, the WDK documentation for
“PORT_CONFIGURATION_INFORMATION (Storport)”, where it asks miniport to fill
MSI(x) ISR name in “HwMSInterruptRoutine” field, has *not* mentioned that it
is available from Vista & above only!
http://msdn.microsoft.com/en-us/library/ms810325.aspx
http://msdn.microsoft.com/en-us/library/aa907194.aspx

Also my understanding is all Storport extended functions, is supported from
the hotfix KB943295 for Windows Server 2003 SP2. Also I could able to
compile StorPortGetMSIInfo for WindowsServer 2003 without any errors or
warnings! (I’m waiting for my hardware to verify this, which can generate
MSI(X) interrupts.)

In that case, the doubt is whether the StorPortGetMSIInfo (a storport
extended function) and other storport MSI(x) related APIs are supported for
Windows Server 2003 or not? Whether the storport supports MSI(X) or not?

>Keith told:
>I don’t have details as to what amount of MSI support existed in Windows
Server 2003 SP2. I’ll have to defer to WDK support on >>that one. However, I
wouldn’t assume that it’s supported. Just from scanning the WDK
documentation, it looks like certain >>MSI-related Storport functions (e.g.
StorPortGetMSIInfo) is available only from Windows Vista and later.

> Peter told:
>Keith is right: MSI(x) requires Vista or later.

Thanks & Regards,
T.V.Gokul.

Hi,

From MSDN: StorPortGetMSIInfo can return STOR_STATUS_NOT_IMPLEMENTED if not supported by OS. I would expect this to be returned on OS prior to Vista.

S.

That is correct: by design, all Storport extended functions can be called regardless of support on a given OS, with the function returning “not implemented” as appropriate.

– Keith

Thanks everyone for your inputs.

Regards,
T.V.Gokul.