USB: HCD: Add driver hooks for (un)?map_urb_for_dma
authorRobert Morell <rmorell@nvidia.com>
Thu, 27 Jan 2011 03:06:48 +0000 (19:06 -0800)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 4 Feb 2011 19:48:55 +0000 (11:48 -0800)
commit2694a48d9007a8bdf1731c1b97d4942c9cc49296
tree9f5394c7aca54d6ee0565428e91c12f240be89bd
parentc8cf203a1d228fa001b95534f639ffb7a23d5386
USB: HCD: Add driver hooks for (un)?map_urb_for_dma

Provide optional hooks for the host controller driver to override the
default DMA mapping and unmapping routines.  In general, these shouldn't
be necessary unless the host controller has special DMA requirements,
such as alignment contraints.  If these are not specified, the
general usb_hcd_(un)?map_urb_for_dma functions will be used instead.
Also, pass the status to unmap_urb_for_dma so it can know whether the
DMA buffer has been overwritten.

Finally, add a flag to be used by these implementations if they
allocated a temporary buffer so it can be freed properly when unmapping.

Signed-off-by: Robert Morell <rmorell@nvidia.com>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/core/hcd.c
include/linux/usb.h
include/linux/usb/hcd.h