i use a small wdf driver to read device reg and mem space. i install it to device that i interested in.but there is some problem. i have a machine that have intel 82580 and x552 spf network card.
if i install my driver on 82580 every thing is ok ,but irq is changed from multiple negtive value to one positive value. i think it may because the driver can't handle MSI interrupt and system fallback to treat the device as a pci device that use legacy 8259 interrupt .
the real problem is when i use it in intel x552 spf ,the driver installed but system say it need reboot and driver have a yellow flag.when i reboot system say the driver cant alloc resource it required,and yellow flag stay.
i debug it through serial comm port ,i found driver called the device_add successfully ,and not call prepare_hardware.
i use another driver develop program to identify the problem.i use windriver to generate two inf and install it on x552.the only diffrence is one disable the MSI. i got exact situation on the windriver inf install. the MSI one is ok ,but non-MSI version is cant install because of same problem and same system message.
how to add some code to my driver to resolve this?