On Thu, Feb 16, 2012 at 09:10:18PM +0800, Elric Fu wrote: > I tried 3.3.0-rc3 and the issue occurred too. I modified the patch for merging > initialization and reset paths according to what Alan said. It can fix > the issue. Thanks Elric! Can you elaborate on this patch description a bit, and describe the problem, which device it occurred with, and our analysis of what we should have done (i.e. set the hub depth after a reset). Then I'll queue the result for stable. Sarah Sharp > Signed-off-by: Elric Fu <elricfu1@xxxxxxxxx> > --- > drivers/usb/core/hub.c | 22 ++++++++++------------ > 1 files changed, 10 insertions(+), 12 deletions(-) > > diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c > index a0613d8..7654ffb 100644 > --- a/drivers/usb/core/hub.c > +++ b/drivers/usb/core/hub.c > @@ -709,6 +709,16 @@ static void hub_activate(struct usb_hub *hub, > enum hub_activation_type type) > * For any other type of activation, turn it on. > */ > if (type != HUB_RESUME) { > + if (hdev->parent && hub_is_superspeed(hdev) && > + hdev->state == USB_STATE_CONFIGURED) { > + ret = usb_control_msg(hdev, usb_sndctrlpipe(hdev, 0), > + HUB_SET_DEPTH, USB_RT_HUB, > + hdev->level - 1, 0, NULL, 0, > + USB_CTRL_SET_TIMEOUT); > + if (ret < 0) > + dev_err(hub->intfdev, > + "set hub depth failed\n"); > + } > > /* Speed up system boot by using a delayed_work for the > * hub's initial power-up delays. This is pretty awkward > @@ -987,18 +997,6 @@ static int hub_configure(struct usb_hub *hub, > goto fail; > } > > - if (hub_is_superspeed(hdev) && (hdev->parent != NULL)) { > - ret = usb_control_msg(hdev, usb_sndctrlpipe(hdev, 0), > - HUB_SET_DEPTH, USB_RT_HUB, > - hdev->level - 1, 0, NULL, 0, > - USB_CTRL_SET_TIMEOUT); > - > - if (ret < 0) { > - message = "can't set hub depth"; > - goto fail; > - } > - } > - > /* Request the entire hub descriptor. > * hub->descriptor can handle USB_MAXCHILDREN ports, > * but the hub can/will return fewer bytes here. -- 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