On Tue, Sep 18, 2001, David Brownell <[EMAIL PROTECTED]> wrote:
> > > So... has anyone thought about what it would take for Linux to support a
> > > single URB with multiple scatter-gather elements?
> > >
> > > AFAIK, an URB needs a single continuous memory block for a transfer. It
> > > would be nice if we could use scatter-gather instead.
> > >
> > > Any thoughts?
>
> Shouldn't request queuing be able to solve that problem? Just
> create one URB per s/g segment (e.g. from the SCSI layer),
> queue, and be done. It's just a question of which level you
> do the s/g at ... I'd rather keep it out of usbcore, that's quite
> complex enough as it is!!
At endpoint sized chunks, that would work.
> > Scatter-gather with chunks of multiples of endpoint size wouldn't be a
> > problem for UHCI.
> >
> > OHCI I imagine would need some work but it should be done.
>
> Should be no different. Though the "multiples of endpoint size"
> restriction seems unnecessary to me ... "short packet" handling for
> each of a series of URBs should work transparently. The HCDs
> already have the infrastructure to do that.
Not really, since for lots of devices, short packets mean something
special if we send one.
Or if we say we can only accept 3 bytes and the device wants to send 8,
I wouldn't place any bets all devices would handle that gracefully.
JE
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel