public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Fix nested switch statements in dummy_hcd.c
@ 2008-03-13 14:58 Ingo van Lil
  0 siblings, 0 replies; only message in thread
From: Ingo van Lil @ 2008-03-13 14:58 UTC (permalink / raw)
  To: linux-kernel

Hello everybody,

this patch fixes a messed up combination of two nested switch statements
in drivers/usb/gadget/dummy_hcd.c. According to the USB spec (section
5.8.3) the maximum packet size for bulk endpoints can be 512 for
high-speed devices and 8, 16, 32 or 64 for full-speed devices. Low-speed
devices must not have bulk endpoints.

Cheers,
Ingo


Signed-off-by: Ingo van Lil <inguin@gmx.de>
---

--- linux-2.6.23.1/drivers/usb/gadget/dummy_hcd.c.orig	2008-03-13 15:45:35.000000000 +0100
+++ linux-2.6.23.1/drivers/usb/gadget/dummy_hcd.c	2008-03-13 15:45:39.000000000 +0100
@@ -363,16 +363,14 @@
  		case USB_SPEED_HIGH:
  			if (max == 512)
  				break;
-			/* conserve return statements */
-		default:
-			switch (max) {
-			case 8: case 16: case 32: case 64:
+			goto done;
+		case USB_SPEED_FULL:
+			if (max == 8 || max == 16 || max == 32 || max == 64)
  				/* we'll fake any legal size */
  				break;
-			default:
-		case USB_SPEED_LOW:
-				goto done;
-			}
+			/* save a return statement */
+		default:
+			goto done;
  		}
  		break;
  	case USB_ENDPOINT_XFER_INT:

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2008-03-13 15:56 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-03-13 14:58 [PATCH] Fix nested switch statements in dummy_hcd.c Ingo van Lil

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox