On Mon, Feb 18, 2002 at 06:58:28PM -0500, Roland King wrote:

> This is a little similar to the discussion we were having last
> week about how to do interrupt transfers on the usbdevfs
> interface. The answer seemed to end up being that you should
> just do bulk transfers.
> 
> I have read the USB spec several times now and see that there
> are 4 sorts of endpoint and assumed that they required different
> calls into the hardware to use them. Is that infact not the case?
> 
> What is an interrupt transfer really? Is it just a transfer which is
> sent again and again by the driver, or do you submit an interrupt
> transfer to the hardware as an interrupt and it actually interrupts
> you (hardware interrupt) on a regular basis? I initially thought it
> was the latter, I'm now starting to think think that it's the former
> and it's the driver which continually resubmits the transfer every
> <interrupt period>.
> 
> How is that supposed to work with output transfers then? If you
> schedule an interrupt transfer and the driver continues to resubmit
> it, doesn't that just mean that, as the initial writer in this thread
> noted, you get the same data sent to the endpoint again and again?
> What are interrupt outputs supposed to do? If you have just one
> thing to send are you better off always just sending a bulk one even
> to an interrupt endpoint?

As far as I know the only difference between one-shot out interrupt and
an out bulk is that the interrupt should have guaranteed bandwidth - the
USB core should allocate enough bandwidth on the bus to allow it to go
through immediately or fail with a 'not enough bandwidth' error if it
isn't possible. With bulk it simply waits until the bandwidth is
available and then sends it.

-- 
Vojtech Pavlik
SuSE Labs

_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to