On Tue, May 05, 2009 at 03:54:23PM +0530, Viral Mehta wrote: > Replace if-elseif-else with switch-case > to keep the code consistent which is semantically same > > Switch-case is used here, > http://www.spinics.net/lists/linux-usb/msg17201.html > Making consistent at other places in usb/core > > Also easier to read and maintain when USB4.0, 5.0, ... comes > > CC: Sarah Sharp <sarah.a.sharp@xxxxxxxxxxxxxxx> Tested-by: Sarah Sharp <sarah.a.sharp@xxxxxxxxxxxxxxx> > Signed-off-by: Viral Mehta <viral.mehta@xxxxxxxxxxxxxx> > --- > This can be applied on top of xhci patches. > It is against git://git.kernel.org/pub/scm/linux/kernel/git/sarah/xhci.git > > diff --git a/drivers/usb/core/hcd.c b/drivers/usb/core/hcd.c > index 2870735..f94c110 100644 > --- a/drivers/usb/core/hcd.c > +++ b/drivers/usb/core/hcd.c > @@ -488,28 +488,39 @@ static int rh_call_control (struct usb_hcd *hcd, struct urb *urb) > case DeviceRequest | USB_REQ_GET_DESCRIPTOR: > switch (wValue & 0xff00) { > case USB_DT_DEVICE << 8: > - if (hcd->driver->flags & HCD_USB3) > + switch (hcd->driver->flags & HCD_MASK) { > + case HCD_USB3: > bufp = usb3_rh_dev_descriptor; > - else if (hcd->driver->flags & HCD_USB2) > + break; > + case HCD_USB2: > bufp = usb2_rh_dev_descriptor; > - else if (hcd->driver->flags & HCD_USB11) > + break; > + case HCD_USB11: > bufp = usb11_rh_dev_descriptor; > - else > + break; > + default: > goto error; > + } > len = 18; > if (hcd->has_tt) > patch_protocol = 1; > break; > case USB_DT_CONFIG << 8: > - if (hcd->driver->flags & HCD_USB3) { > + switch (hcd->driver->flags & HCD_MASK) { > + case HCD_USB3: > bufp = ss_rh_config_descriptor; > len = sizeof ss_rh_config_descriptor; > - } else if (hcd->driver->flags & HCD_USB2) { > + break; > + case HCD_USB2: > bufp = hs_rh_config_descriptor; > len = sizeof hs_rh_config_descriptor; > - } else { > + break; > + case HCD_USB11: > bufp = fs_rh_config_descriptor; > len = sizeof fs_rh_config_descriptor; > + break; > + default: > + goto error; > } > if (device_can_wakeup(&hcd->self.root_hub->dev)) > patch_wakeup = 1; > -- > 1.5.6.5 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html