diff options
author | David Brownell <dbrownell@users.sourceforge.net> | 2008-11-24 06:06:50 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2009-01-07 12:59:59 -0500 |
commit | bb1c9ef1b4cd64f22e15e8447deac6043eeb151c (patch) | |
tree | fff9e2971fb989562519928c4b13728bcd469027 /drivers/usb/musb/musb_core.c | |
parent | 71783e0defa16ca5abca7750df98ff8e7767bd2e (diff) |
USB: musb: host side diagnostics tweaks
Random host-side MUSB updates, mostly relating to better diagnostics:
+ Improve diagnostics on host side:
- tx flush fifo:
* Avoid hundreds of duplicate TX FIFONOTEMPTY messages
* make "Can't flush TX fifo" a warning, and say which endpoint
- giveback:
* use correct status code
* show completion function name not just URB pointer
- Fix annoying "1 bytes" (should be "1 byte")
+ Be more consistent about failing init of unusable fifo_mode
It's not clear why that "can't flush TX fifo" message appears, though
it might relate to disconnection; I see it not infrequently
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Felipe Balbi <felipe.balbi@nokia.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/musb/musb_core.c')
-rw-r--r-- | drivers/usb/musb/musb_core.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c index de7f8bec6bde..8b14437331c7 100644 --- a/drivers/usb/musb/musb_core.c +++ b/drivers/usb/musb/musb_core.c | |||
@@ -1212,7 +1212,7 @@ static int __init ep_config_from_table(struct musb *musb) | |||
1212 | if (epn >= musb->config->num_eps) { | 1212 | if (epn >= musb->config->num_eps) { |
1213 | pr_debug("%s: invalid ep %d\n", | 1213 | pr_debug("%s: invalid ep %d\n", |
1214 | musb_driver_name, epn); | 1214 | musb_driver_name, epn); |
1215 | continue; | 1215 | return -EINVAL; |
1216 | } | 1216 | } |
1217 | offset = fifo_setup(musb, hw_ep + epn, cfg++, offset); | 1217 | offset = fifo_setup(musb, hw_ep + epn, cfg++, offset); |
1218 | if (offset < 0) { | 1218 | if (offset < 0) { |
@@ -1813,7 +1813,6 @@ allocate_instance(struct device *dev, | |||
1813 | for (epnum = 0, ep = musb->endpoints; | 1813 | for (epnum = 0, ep = musb->endpoints; |
1814 | epnum < musb->config->num_eps; | 1814 | epnum < musb->config->num_eps; |
1815 | epnum++, ep++) { | 1815 | epnum++, ep++) { |
1816 | |||
1817 | ep->musb = musb; | 1816 | ep->musb = musb; |
1818 | ep->epnum = epnum; | 1817 | ep->epnum = epnum; |
1819 | } | 1818 | } |