UMDF and threading

Is is possible, and permissable, to use a thread in a UMDF USB driver to ‘simulate’ a continuous reader for a USB input pipe, or do I have to use KMDF.

My device receives data via an input pipe, but I lose chunks of the data. I have tried tweaking the PIPE_TRANSFER_TIMEOUT value, and have ALLOW_PARTIAL_READS set in order to minimise data loss, but I still lose a fair amount of the data. I am guessing that there is a timing issue involved. I did have the device controlled directly from the app via WinUSB.dll and got less data loss than I currently do.

Are you pending multiple reads at a time? I don’t think that having a dedicated thread doing the reads is going to be any faster than asynchronously sending reads and processing the results in the completion routine

d

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@highwater.co.uk
Sent: Wednesday, December 05, 2007 9:17 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] UMDF and threading

Is is possible, and permissable, to use a thread in a UMDF USB driver to ‘simulate’ a continuous reader for a USB input pipe, or do I have to use KMDF.

My device receives data via an input pipe, but I lose chunks of the data. I have tried tweaking the PIPE_TRANSFER_TIMEOUT value, and have ALLOW_PARTIAL_READS set in order to minimise data loss, but I still lose a fair amount of the data. I am guessing that there is a timing issue involved. I did have the device controlled directly from the app via WinUSB.dll and got less data loss than I currently do.


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer