On Tue, 19 Feb 2002, Vojtech Pavlik wrote:
> On Tue, Feb 19, 2002 at 02:59:28AM -0800, David Brownell wrote:
>
> > By the host controller driver. It's a "periodic" transfer,
> > which _by design_ is going to be happening over and
> > over and over again.
>
> Which is a problem. All uses of interrupt out I have met don't need to
> be periodic - they're used for example in HID if the device has an
> output interrupt endpoint for sending output reports, and for I-Force
> devices to send outgoing data.
>
What about usb_resubmit_urb ? The scheme would be as follows:
We usb_submit_urb for an interrupt transfer, the driver allocates the
bandwidth, sends _one_ packet to the device marks the urb as "done", keeps
it in a queue and calls completion routine. The completion routine either
updates the data and calls usb_resubmit_urb to send another packet or
calls usb_unlink_urb to stop the transfer and deallocate the bandwidth.
This way we both get one-shot interrupt transfers (which is the only thing
that makes sense on a computer IMO) and preserve the bandwidth allocation
accross the string of interrupt transfers.
Vladimir Dergachev
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel