From: Kabir on
I need to pend an IRP on the ISO IN pipe with a completion routine, which
will get invoked when the driver below (USB) has some data on the pipe. My
problem is that i have been unable to pend an IRP (Created using
IoAllocateIrp) on the ISO read (IN) pipe. I have tried with the sample
provided in DDK (\WinDDK\6000\src\usb\isousb\sys) as well as the sample
provided by Walter Oney (\Samples\Chap12\usbiso\sys).

I am using the alternate setting number 5 provide by my device on interface
1, wherein the maximum packet size is 0x33 (51) bytes.

Whenever i call to IoCallDriver to send the IRP to the next driver below, i
get a failure with code 0xC000000D(STATUS_INVALID_PARAMETER). If at all the
call returns STATUS_PENDING, the completion routine for the sub IRP's is
getting called.

Any help in this regard will be great.

Thanks in advance.