diff options
author | David Brownell <david-b@pacbell.net> | 2007-07-01 15:21:00 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2007-07-12 19:34:42 -0400 |
commit | c67ab134ba9f83f9de86e58adfeaa14a9efa6e00 (patch) | |
tree | df9022b4a38e955abbf254d71e00ac1fecce6420 /drivers/usb/gadget/at91_udc.c | |
parent | 9d8bab58b758cd5a96d368a8cc64111c9ab50407 (diff) |
usb gadget stack: remove usb_ep_*_buffer(), part 2
This patch removes controller driver infrastructure which supported
the now-removed usb_ep_{alloc,free}_buffer() calls.
As can be seen, many of the implementations of this were broken to
various degrees. Many didn't properly return dma-coherent mappings;
those which did so were necessarily ugly because of bogosity in the
underlying dma_free_coherent() calls ... which on many platforms
can't be called from the same contexts (notably in_irq) from which
their dma_alloc_coherent() sibling can be called.
The main potential downside of removing this is that gadget drivers
wouldn't have specific knowledge that the controller drivers have:
endpoints that aren't dma-capable don't need any dma mappings at all.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/gadget/at91_udc.c')
-rw-r--r-- | drivers/usb/gadget/at91_udc.c | 21 |
1 files changed, 0 insertions, 21 deletions
diff --git a/drivers/usb/gadget/at91_udc.c b/drivers/usb/gadget/at91_udc.c index ba163f35bf21..63d7d6568699 100644 --- a/drivers/usb/gadget/at91_udc.c +++ b/drivers/usb/gadget/at91_udc.c | |||
@@ -601,25 +601,6 @@ static void at91_ep_free_request(struct usb_ep *_ep, struct usb_request *_req) | |||
601 | kfree(req); | 601 | kfree(req); |
602 | } | 602 | } |
603 | 603 | ||
604 | static void *at91_ep_alloc_buffer( | ||
605 | struct usb_ep *_ep, | ||
606 | unsigned bytes, | ||
607 | dma_addr_t *dma, | ||
608 | gfp_t gfp_flags) | ||
609 | { | ||
610 | *dma = ~0; | ||
611 | return kmalloc(bytes, gfp_flags); | ||
612 | } | ||
613 | |||
614 | static void at91_ep_free_buffer( | ||
615 | struct usb_ep *ep, | ||
616 | void *buf, | ||
617 | dma_addr_t dma, | ||
618 | unsigned bytes) | ||
619 | { | ||
620 | kfree(buf); | ||
621 | } | ||
622 | |||
623 | static int at91_ep_queue(struct usb_ep *_ep, | 604 | static int at91_ep_queue(struct usb_ep *_ep, |
624 | struct usb_request *_req, gfp_t gfp_flags) | 605 | struct usb_request *_req, gfp_t gfp_flags) |
625 | { | 606 | { |
@@ -788,8 +769,6 @@ static const struct usb_ep_ops at91_ep_ops = { | |||
788 | .disable = at91_ep_disable, | 769 | .disable = at91_ep_disable, |
789 | .alloc_request = at91_ep_alloc_request, | 770 | .alloc_request = at91_ep_alloc_request, |
790 | .free_request = at91_ep_free_request, | 771 | .free_request = at91_ep_free_request, |
791 | .alloc_buffer = at91_ep_alloc_buffer, | ||
792 | .free_buffer = at91_ep_free_buffer, | ||
793 | .queue = at91_ep_queue, | 772 | .queue = at91_ep_queue, |
794 | .dequeue = at91_ep_dequeue, | 773 | .dequeue = at91_ep_dequeue, |
795 | .set_halt = at91_ep_set_halt, | 774 | .set_halt = at91_ep_set_halt, |