aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/musb
diff options
context:
space:
mode:
authorFelipe Balbi <balbi@ti.com>2013-02-04 12:57:23 -0500
committerFelipe Balbi <balbi@ti.com>2013-03-18 05:17:05 -0400
commit38c5df225692cde4d695e4c74eaa7d83546ebe53 (patch)
tree8995dfbaf098c12645b63fffcc9ccab6f06033b6 /drivers/usb/musb
parentb42f7f3091de06f25abf59a26a3446f7b2fd0a50 (diff)
usb: musb: gadget: delete wrong comment
Those comments haven't been updated for a long time, so much that they don't make sense anymore. Best to remove them. Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb/musb')
-rw-r--r--drivers/usb/musb/musb_gadget.c108
1 files changed, 0 insertions, 108 deletions
diff --git a/drivers/usb/musb/musb_gadget.c b/drivers/usb/musb/musb_gadget.c
index e363033f6754..b47f66d32b40 100644
--- a/drivers/usb/musb/musb_gadget.c
+++ b/drivers/usb/musb/musb_gadget.c
@@ -46,48 +46,6 @@
46#include "musb_core.h" 46#include "musb_core.h"
47 47
48 48
49/* MUSB PERIPHERAL status 3-mar-2006:
50 *
51 * - EP0 seems solid. It passes both USBCV and usbtest control cases.
52 * Minor glitches:
53 *
54 * + remote wakeup to Linux hosts work, but saw USBCV failures;
55 * in one test run (operator error?)
56 * + endpoint halt tests -- in both usbtest and usbcv -- seem
57 * to break when dma is enabled ... is something wrongly
58 * clearing SENDSTALL?
59 *
60 * - Mass storage behaved ok when last tested. Network traffic patterns
61 * (with lots of short transfers etc) need retesting; they turn up the
62 * worst cases of the DMA, since short packets are typical but are not
63 * required.
64 *
65 * - TX/IN
66 * + both pio and dma behave in with network and g_zero tests
67 * + no cppi throughput issues other than no-hw-queueing
68 * + failed with FLAT_REG (DaVinci)
69 * + seems to behave with double buffering, PIO -and- CPPI
70 * + with gadgetfs + AIO, requests got lost?
71 *
72 * - RX/OUT
73 * + both pio and dma behave in with network and g_zero tests
74 * + dma is slow in typical case (short_not_ok is clear)
75 * + double buffering ok with PIO
76 * + double buffering *FAILS* with CPPI, wrong data bytes sometimes
77 * + request lossage observed with gadgetfs
78 *
79 * - ISO not tested ... might work, but only weakly isochronous
80 *
81 * - Gadget driver disabling of softconnect during bind() is ignored; so
82 * drivers can't hold off host requests until userspace is ready.
83 * (Workaround: they can turn it off later.)
84 *
85 * - PORTABILITY (assumes PIO works):
86 * + DaVinci, basically works with cppi dma
87 * + OMAP 2430, ditto with mentor dma
88 * + TUSB 6010, platform-specific dma in the works
89 */
90
91/* ----------------------------------------------------------------------- */ 49/* ----------------------------------------------------------------------- */
92 50
93#define is_buffer_mapped(req) (is_dma_capable() && \ 51#define is_buffer_mapped(req) (is_dma_capable() && \
@@ -275,41 +233,6 @@ static inline int max_ep_writesize(struct musb *musb, struct musb_ep *ep)
275 return ep->packet_sz; 233 return ep->packet_sz;
276} 234}
277 235
278
279#ifdef CONFIG_USB_INVENTRA_DMA
280
281/* Peripheral tx (IN) using Mentor DMA works as follows:
282 Only mode 0 is used for transfers <= wPktSize,
283 mode 1 is used for larger transfers,
284
285 One of the following happens:
286 - Host sends IN token which causes an endpoint interrupt
287 -> TxAvail
288 -> if DMA is currently busy, exit.
289 -> if queue is non-empty, txstate().
290
291 - Request is queued by the gadget driver.
292 -> if queue was previously empty, txstate()
293
294 txstate()
295 -> start
296 /\ -> setup DMA
297 | (data is transferred to the FIFO, then sent out when
298 | IN token(s) are recd from Host.
299 | -> DMA interrupt on completion
300 | calls TxAvail.
301 | -> stop DMA, ~DMAENAB,
302 | -> set TxPktRdy for last short pkt or zlp
303 | -> Complete Request
304 | -> Continue next request (call txstate)
305 |___________________________________|
306
307 * Non-Mentor DMA engines can of course work differently, such as by
308 * upleveling from irq-per-packet to irq-per-buffer.
309 */
310
311#endif
312
313/* 236/*
314 * An endpoint is transmitting data. This can be called either from 237 * An endpoint is transmitting data. This can be called either from
315 * the IRQ routine or from ep.queue() to kickstart a request on an 238 * the IRQ routine or from ep.queue() to kickstart a request on an
@@ -616,37 +539,6 @@ void musb_g_tx(struct musb *musb, u8 epnum)
616 539
617/* ------------------------------------------------------------ */ 540/* ------------------------------------------------------------ */
618 541
619#ifdef CONFIG_USB_INVENTRA_DMA
620
621/* Peripheral rx (OUT) using Mentor DMA works as follows:
622 - Only mode 0 is used.
623
624 - Request is queued by the gadget class driver.
625 -> if queue was previously empty, rxstate()
626
627 - Host sends OUT token which causes an endpoint interrupt
628 /\ -> RxReady
629 | -> if request queued, call rxstate
630 | /\ -> setup DMA
631 | | -> DMA interrupt on completion
632 | | -> RxReady
633 | | -> stop DMA
634 | | -> ack the read
635 | | -> if data recd = max expected
636 | | by the request, or host
637 | | sent a short packet,
638 | | complete the request,
639 | | and start the next one.
640 | |_____________________________________|
641 | else just wait for the host
642 | to send the next OUT token.
643 |__________________________________________________|
644
645 * Non-Mentor DMA engines can of course work differently.
646 */
647
648#endif
649
650/* 542/*
651 * Context: controller locked, IRQs blocked, endpoint selected 543 * Context: controller locked, IRQs blocked, endpoint selected
652 */ 544 */