提交 af93f2c7 编写于 作者: F Felipe Balbi

usb: gadget: net2272: use generic map/umap routines

those routines have everything we need to map/unmap
USB requests and it's better to use them.
Signed-off-by: NFelipe Balbi <balbi@ti.com>
上级 05d00fbe
...@@ -385,12 +385,9 @@ net2272_done(struct net2272_ep *ep, struct net2272_request *req, int status) ...@@ -385,12 +385,9 @@ net2272_done(struct net2272_ep *ep, struct net2272_request *req, int status)
status = req->req.status; status = req->req.status;
dev = ep->dev; dev = ep->dev;
if (use_dma && req->mapped) { if (use_dma && ep->dma)
dma_unmap_single(dev->dev, req->req.dma, req->req.length, usb_gadget_unmap_request(&dev->gadget, &req->req,
ep->is_in ? DMA_TO_DEVICE : DMA_FROM_DEVICE); ep->is_in);
req->req.dma = DMA_ADDR_INVALID;
req->mapped = 0;
}
if (status && status != -ESHUTDOWN) if (status && status != -ESHUTDOWN)
dev_vdbg(dev->dev, "complete %s req %p stat %d len %u/%u buf %p\n", dev_vdbg(dev->dev, "complete %s req %p stat %d len %u/%u buf %p\n",
...@@ -850,10 +847,11 @@ net2272_queue(struct usb_ep *_ep, struct usb_request *_req, gfp_t gfp_flags) ...@@ -850,10 +847,11 @@ net2272_queue(struct usb_ep *_ep, struct usb_request *_req, gfp_t gfp_flags)
return -ESHUTDOWN; return -ESHUTDOWN;
/* set up dma mapping in case the caller didn't */ /* set up dma mapping in case the caller didn't */
if (use_dma && ep->dma && _req->dma == DMA_ADDR_INVALID) { if (use_dma && ep->dma) {
_req->dma = dma_map_single(dev->dev, _req->buf, _req->length, status = usb_gadget_map_request(&dev->gadget, _req,
ep->is_in ? DMA_TO_DEVICE : DMA_FROM_DEVICE); ep->is_in);
req->mapped = 1; if (status)
return status;
} }
dev_vdbg(dev->dev, "%s queue req %p, len %d buf %p dma %08llx %s\n", dev_vdbg(dev->dev, "%s queue req %p, len %d buf %p dma %08llx %s\n",
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册