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

From: David Brownell (
Date: Wed Jan 02 2002 - 13:37:41 EST

> > 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.

  - Add some kind of "page + offset" addressing model.

Discussion of details can be taken off LKML, it'd seem. Though I'm
curious when the scatterlist->address field will vanish, making these
changes a requirement. Is that a 2.5.2 thing?

Also, I noticed that include/asm-sparc/pci.h doesn't include the
standard pci_map_page() call ... what's up with that? That surely
causes portability problems.

- Dave


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

This archive was generated by hypermail 2b29 : Mon Jan 07 2002 - 21:00:17 EST