Alan Stern wrote: >>> The code that takes care of setting up the transfer buffer addresses >>> should be split out and EXPORTed, because any HCD that supports sg will >>> want to use it. >> I'm not sure what code you're referring to? > > I'm talking about all this stuff, which (rightly) got left out of > usb_sg_init_with_sg(): > > /* > * Some systems need to revert to PIO when DMA is temporarily > * unavailable. For their sakes, both transfer_buffer and > * transfer_dma are set when possible. However this can only > * work on systems without: > [...] > Ah, but you're forgetting the possibile cases in which the controller > doesn't support DMA. I don't think it's useful to speculate on possible hardware. If hardware like this is produced then we can revisit this. For now, I would say that any HCD claiming sg-list support must always support DMA. It is unfortunate that neither myself nor Sarah can talk about the specifics of the hardware where this sg list support is useful. David -- David Vrabel, Senior Software Engineer, Drivers CSR, Churchill House, Cambridge Business Park, Tel: +44 (0)1223 692562 Cowley Road, Cambridge, CB4 0WZ http://www.csr.com/ -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html