Re: MSI and MSI-X support in NIDS60
- From: "Alireza Dabagh [MS]" <alid@xxxxxxxxxxxxxxxxxxxx>
- Date: Sat, 5 May 2007 03:53:38 -0700
Aniketa, If you are still following this thread, please post a response and I will try to answer your questions the best I can.
-ali
"Aniketa K S" <aniketaks@xxxxxxxxxxxxxx> wrote in message news:1177668244.337221.68350@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Hi folks,
I have a couple of questions related to MSI/MSI-X:
How can I differentiate between MSI and MSI-X resources in
MiniportFilterResourceRequirements()? Lets consider a case where NIC
supports both MSI and MSI-X. Also let us say NIC supports only one
vector in both MSI and MSI-X. Now I want to support only MSI or MSI-X
in my Miniport Driver. How do I know which one to filter out in the
resource list?
Miniport Driver has to register message interrupt disable/enable
routines with the NDIS in the call to NdisMRegisterInterruptEx(). But
in order to achieve MSI/MSI-X vector enable/disable, one need to read/
write from NIC config space using NdisMGet/SetBusData() APIs. The
catch here is DDK says NDIS calls message interrupt enable/disable
routines from DIRQL. But the NdisMGet/SetBusData routines should be
called at DISPATCH_LEVEL. What am I missing here? Are there any NDIS
supported APIs to enable/disable individual MSI/MSI-X vectors?
Also It looks like Windows categorizes the interrupts as either line
based or message based. But not between MSI and MSI-X inside message
based (from NIC Miniport Driver perspective). Why is that?
Thanks,
Aniketa
.
- Follow-Ups:
- Re: MSI and MSI-X support in NIDS60
- From: Aniketa K S
- Re: MSI and MSI-X support in NIDS60
- Prev by Date: Re: Physical Address Problem... Help me.
- Next by Date: Memory allocation in windows kernel driver
- Previous by thread: Registering device interface in EvtDevicePrepareHardware
- Next by thread: Re: MSI and MSI-X support in NIDS60
- Index(es):
Relevant Pages
|