URB for Pipe Io Policy

The WDK header usb.h has two new URB functions for Vista,
URB_FUNCTION_GET_PIPE_IO_POLICY and URB_FUNCTION_SET_PIPE_IO_POLICY. Anyone
have any info on their use? Know of any devices/drivers that use them?

Thanks,

Stan Mitchell

SourceQuest, Inc.


No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.441 / Virus Database: 268.17.39/687 - Release Date: 2/14/2007
4:17 PM

Stan, check soft’s web site they have a “code sample” that will help problem is it’s in meta-code written in as a series of unrelated chunks the vars they use are often pull from thin air [or somewhere else] so it’s hard to read just as well anything you learn you’ll probably remember since it’s a total pain - DBB

YES !,
thank god I set my browser history to 30 days sounds like I am about 2 weeks ahead of you on this stuff here are some links to get you going :
http://msdn2.microsoft.com/en-gb/library/aa476426.aspx ; WinUsb ‘home’
http://msdn2.microsoft.com/en-gb/library/aa476413.aspx ; “code” sample
http://msdn2.microsoft.com/en-gb/library/aa476450.aspx ; WinUsb_SetPipePolicy
http://msdn2.microsoft.com/en-gb/library/aa476439.aspx ; WinUsb_GetPipePolicy
once you are in there should be links to data structs and all manner of gruesome details to read up on this should help you thru or destroy any traces of sanity you may have - ENJOY my guess is you need about 100k - 200k of docs to really understand what gives with this winusb stuff. Maybe you should surf the forum as well my thread “WinUsb mounts but fails to connect device” could save you some time/hair/etc… & there are others that will point you in the right direction as far as .inf file stuff, getting WinUsb on your machine (eg. you wust install KMDF/WDF to use WinUsb etc…)
ps. be prepaired to rename many vars as they reuse some for unrelated objects an so on.
good luck DBB

Douglas, the pipe policy URBs are not the same as WinUSB’s policy APIs. The WinUSB policy APIs tell winusb how to handle traffic on the pipe at its layer, this is something completely transparent to the usb core. The pipe policy URBs are a private URB interface that unfortunately made it into a public header, these will be removed in the next WDK release. These URBs are not actually implemented in the usb core, so there is nothing lost here on there removal.

d

Thanks DBB!
The names of the Winusb APIs are tantalizingly similar to the URB functions.
However, the URB functions appear to control the host controller’s
allocation of bandwidth to an endpoint; this doesn’t match any of the Winusb
API options.

Doron,
The header file in the WDK provides details on the URB structures used by
GET_PIPE_IO_POLICY and SET_PIPE_IO_POLICY. Rather than completely removing
all info, why not just add a note, “The XXX URB is for system use only. Do
not use!” My 2 cents.

Regards, -Stan


No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.441 / Virus Database: 268.18.1/690 - Release Date: 2/16/2007
2:25 PM

I wondered what you meant by “URB” since I had not seen that it was not posted for a reason. The stuff I pointed you to was what you should have had instead, glad Doron was able to clear that up for you. At least you now have the correct stuff to get started. good luck with all this. DBB