Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6440093f authored by Felipe Balbi's avatar Felipe Balbi
Browse files

usb: gadget: goku: use generic map/unmap routines



those routines have everything we need to map/unmap
USB requests and it's better to use them.

Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
parent ae4d7933
Loading
Loading
Loading
Loading
+8 −10
Original line number Diff line number Diff line
@@ -311,12 +311,9 @@ done(struct goku_ep *ep, struct goku_request *req, int status)
		status = req->req.status;

	dev = ep->dev;
	if (req->mapped) {
		pci_unmap_single(dev->pdev, req->req.dma, req->req.length,
			ep->is_in ? PCI_DMA_TODEVICE : PCI_DMA_FROMDEVICE);
		req->req.dma = DMA_ADDR_INVALID;
		req->mapped = 0;
	}

	if (ep->dma)
		usb_gadget_unmap_request(&dev->gadget, &req->req, ep->is_in);

#ifndef USB_TRACE
	if (status && status != -ESHUTDOWN)
@@ -737,10 +734,11 @@ goku_queue(struct usb_ep *_ep, struct usb_request *_req, gfp_t gfp_flags)
		return -EBUSY;

	/* set up dma mapping in case the caller didn't */
	if (ep->dma && _req->dma == DMA_ADDR_INVALID) {
		_req->dma = pci_map_single(dev->pdev, _req->buf, _req->length,
			ep->is_in ? PCI_DMA_TODEVICE : PCI_DMA_FROMDEVICE);
		req->mapped = 1;
	if (ep->dma) {
		status = usb_gadget_map_request(&dev->gadget, &req->req,
				ep->is_in);
		if (status)
			return status;
	}

#ifdef USB_TRACE