Re: [linux-usb-devel] Re: highmem and usb [was "sr: unalignedtransfer" in 2.5.2-pre1]

Oliver.Neukum
2002-01-02T22:35:06Z

On Wed, 2 Jan 2002, Jens Axboe wrote:

> On Wed, Jan 02 2002, David Brownell wrote:
> > > > requirement for drivers is that the transfer buffers can be passed to
> > > > pci_map_single() calls by the Host Controller Drivers (HCDs). The
> > > > device drivers, and URBs, don't expose such mappings, they only
> > > > require that they can be created/destroyed.
> > >
> > > .. which is the requirement that you want to change to use pci_map_page
> > > or pci_map_sg
> >
> > OK, I think I'm clear on this much then: in 2.5, to support block drivers
> > over USB (usb-storage only, for now) there needs to be an addition to
> > the buffer addressing model in usbcore, as exposed by URBs.
> >
> > - Current "transfer_buffer" + "transfer_buffer_length" mode needs to
> > stay, since most drivers aren't block drivers.
>
> Why? Surely USB block drivers are not the only ones that want to support
> highmem.

Probably for a long time they'll be the only ones.
All the char drivers will mainly do a copy_to/from_user
or want memory they can manipulate directly.

Regards
Oliver