According to the owner of the usb core stack. MaximumTransferSize is pretty much ignored on XP (and he is pretty sure about win2k as well). The purpose of MTS was for the port driver to preallocate TDs for incoming endpoint transfers.
D
This posting is provided “AS IS” with no warranties, and confers no rights
-----Original Message-----
From: Chris Myers [mailto:xxxxx@quatech.com]
Sent: Wednesday, February 26, 2003 5:19 AM
To: NT Developers Interest List
Subject: [ntdev] Re: Bulk transfers using USB bus driver
??? In tests I did about three years ago on Win2K, I found that I could set MaximumTransferSize as high as 2 MB and still function just fine.? I’m actually running with 4 KB, though, as that is plenty to keep the endpoints in my device adequately serviced.
??? This variable is a puzzling one because of its lack of documentation.? From the name, it would appear to be a restriction on the driver set by the USB stack, but it’s actually an input from the driver according to the USBDI.H declaration.? My guess is that USBD uses the value to allocate a nonpaged buffer and that the true limit is simply where ExAllocatePool(NPP) would fail to get the desired block of memory.? I can’t say that I care enough about it to spend the time digging in the kernel to find out for sure, though :-).
Best Regards,
Chris Myers
Senior Project Engineer
Quatech, Inc.
xxxxx@quatech.com
-----Original Message-----
From: Marc Reinig [mailto:xxxxx@nospam.com]
Sent: Tuesday, February 25, 2003 11:36 PM
To: NT Developers Interest List
Subject: [ntdev] Re: Bulk transfers using USB bus driver
I don’t know what the problem to circumvent is.? That’s the
way I do it.
Marc Reinig
System Solutions
“Hariharan Krishnamurthy” wrote in
>message news:xxxxx@ntdev…
>>
>> Hi Marc,
>>
>> Thanks for the reply.? Yes, MaximumTransferSize (represented
>in bytes)
>> member can be used but the value is just 4K.? I deliberately avoided
>> using this field earlier because i would have to do bulk
>transfers of
>> around 1/2 MB in the worst case.? Does this mean that i have
>to submit
>> buffers nearly 256 times if i have to transfer around 1MB of bulk
>> data?? Isnt there a better way to circumvent this problem?
>>
>> Any suggestions will be really helpful.
>>
>> Thanks & Regards,
>> Hari.
>>
>> >The USBD_PIPE_INFORMATION structure for your pipe will contain a
>> >MaximumTransferSize member.? You shouldn’t exceed that in any
>> >transfer. You also probably shouldn’t change it unless since
>> >performance gains with a higher number will be small compared to
>> >overall system degradation due to latency (and other?)? problems.?
>> >Instead, break up large requests into MaximumTransferSize
>pieces and
>> >submit them.
>> >
>> >Marc Reinig
>> >System Solutions
>> >
>> >
>> >
>> >“Hariharan Krishnamurthy” wrote in message
>> >news:xxxxx@ntdev…
>> > >
>> > > Hi,
>> > >
>> > > I have a vendor-specific USB host driver on Windows XP
>which does
>> > > some vendor-specific operations on a USB device.? My host driver
>> > > makes use
>of
>> >the
>> > > bulk pipe to read some vendor-specific information.? This
>functionality
>> > > works fine on desktop PCs running Windows XP.? But if i make use
>> > > of
>the
>> >same
>> > > host driver on laptops or notebook PCs with almost
>similar system
>> > > configuration as that of the desktop PCs then i get blue screen
>> > > with BUGCODE_USB_DRIVER.? Basically, for bulk transfers i submit
>> > > _URB_BULK_OR_INTERRUPT_TRANSFER to the USB bus driver with
>> > > TransferBufferLength of around 2MB.? This works
>perfectly alright
>> > > on
>> >desktop
>> > > PCs but on laptops or notebook PCs if i submit more than
>256KB of
>> > > data
>> >then
>> > > the system shows BSOD.? Anything less than or equal to
>256KB works
>fine
>> >on
>> > > laptops/notebook PCs.
>> > >
>> > > Is there any restriction on the maximum size for the buffer that
>> > > can
>be
>> > > sumbitted for bulk transfers?? Any ideas on this will be highly
>> >appreciated.
>> > >
>> > > Regards,
>> > > Hari.
>> > >
>> > >
>> > > STOP MORE SPAM with the new MSN 8 and get 2 months FREE*
>> > > http://join.msn.com/?page=features/junkmail
>> > >
>> > >
>> > >
>> > >
>> >
>> >
>> >
>> >—
>> >You are currently subscribed to ntdev as: xxxxx@hotmail.com To
>> >unsubscribe send a blank email to xxxxx@lists.osr.com
>>
>>
>>
>> MSN 8 with e-mail virus protection service: 2 months FREE*
>> http://join.msn.com/?page=features/virus
>>
>>
>>
>>
>
>
>
>—
>You are currently subscribed to ntdev as:
>xxxxx@quatech.com To unsubscribe send a blank email to
>xxxxx@lists.osr.com
>
—
You are currently subscribed to ntdev as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com