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


    





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

Reply via email to