usb gadget stack: remove usb_ep_*_buffer(), part 1
Remove usb_ep_{alloc,free}_buffer() calls, for small dma-coherent buffers. This patch just removes the interface and its users; later patches will remove controller driver support. - This interface is invariably not implemented correctly in the controller drivers (e.g. using dma pools, a mechanism which post-dates the interface by several years). - At this point no gadget driver really *needs* to use it. In current kernels, any driver that needs such a mechanism could allocate a dma pool themselves. Removing this interface is thus a simplification and improvement. Note that the gmidi.c driver had a bug in this area; fixed. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
此提交包含在:
@@ -923,7 +923,7 @@ static void clean_req (struct usb_ep *ep, struct usb_request *req)
|
||||
struct dev_data *dev = ep->driver_data;
|
||||
|
||||
if (req->buf != dev->rbuf) {
|
||||
usb_ep_free_buffer (ep, req->buf, req->dma, req->length);
|
||||
kfree(req->buf);
|
||||
req->buf = dev->rbuf;
|
||||
req->dma = DMA_ADDR_INVALID;
|
||||
}
|
||||
@@ -963,7 +963,7 @@ static int setup_req (struct usb_ep *ep, struct usb_request *req, u16 len)
|
||||
return -EBUSY;
|
||||
}
|
||||
if (len > sizeof (dev->rbuf))
|
||||
req->buf = usb_ep_alloc_buffer (ep, len, &req->dma, GFP_ATOMIC);
|
||||
req->buf = kmalloc(len, GFP_ATOMIC);
|
||||
if (req->buf == 0) {
|
||||
req->buf = dev->rbuf;
|
||||
return -ENOMEM;
|
||||
|
新增問題並參考
封鎖使用者