• Jack Pham's avatar
    usb: gadget: core: unmap request from DMA only if previously mapped · 31fe084f
    Jack Pham authored
    In the SG case this is already handled since a non-zero
    request->num_mapped_sgs is a clear indicator that dma_map_sg()
    had been called. While it would be nice to do the same for the
    singly mapped case by simply checking for non-zero request->dma,
    it's conceivable that 0 is a valid dma_addr_t handle. Hence add
    a flag 'dma_mapped' to struct usb_request and use this to
    determine the need to call dma_unmap_single(). Otherwise, if a
    request is not DMA mapped then the result of calling
    usb_request_unmap_request() would safely be a no-op.
    Signed-off-by: default avatarJack Pham <jackp@codeaurora.org>
    Signed-off-by: default avatarFelipe Balbi <felipe.balbi@linux.intel.com>
    31fe084f
core.c 43 KB