Hello,
I wrote a KMDF driver for our USB device using an AT91SAM7X256. When we plug the device, the FPGA firmware of our device is uploaded thru a bulk pipe and it works fine. Unfortunately, when we boot the PC the upload doesn’t work any more. The 2 first call to WdfRequestSend() in the driver goes well (one for each bank since we use a 2 banks pipe), but the third one never returns (I didn’t define any time out). If I look with the logical analyzer one the wire, I can see that the 2 first packets (I set them to 64 bytes) leave the host. For an unknown reason the corresponding interrupt in the AT91SAM7X256 is never raised and the FIFO are therefore never emptied.
If I upload the firmware thru the control pipe instead of the bulk, it works fine in all cases.
Does someone have any idea what happens?
Thanks for your help!