Hi Experts,
I am new to windows driver. Am trying to develop a KMDF bus driver for a FILE_DEVICE_BUS_EXTENDER device.
I need to implement the MSI-X in my driver. I have gone through so many posts and links.
From that what I should follow to achieve the MSI-X in KMDF is :
- Enable the MSI-X in INF file.
- Create the interrupt object for each MSI vector.
While creating the Interrupt Object,we also needs to consider the followings:
i. Initialize the WDF_INTERRUPT_CONFIG_INIT with ISR(EvtInterruptIsr) and DPC(EvtInterruptDPC) if needed.
ii. Register EvtInterruptEnable and EvtInterruptDisable to enable/disable the interrupts by accessing the hardware registries.
iii. Create the Interrupt Object. - Handle the Interrupt resources under CmResourceTypeInterrupt.(As framework handles this by default,we no need to do anything).
This is the basic idea which i have known so far. And also still I need clear understanding about this EvtInterruptIsr and EvtInterruptDpc callback functions.
As these callbacks are used to handle the device interrupts,what I should do here. Please if anyone knews about these callback function,make a brief note of it.
Also please make sure that the steps I gave above is enough to achieve MSI-X for my FILE_DEVICE_BUS_EXTENDER device. Is there anything that seems to
be missing in the steps I mentioned above,also please make a note of it.
Thanks in ADVANCE…