On Mon, 23 Jan 2006, David Brownell wrote: > @@ -366,21 +366,39 @@ static int rh_call_control (struct usb_h ... > case DeviceOutRequest | USB_REQ_SET_FEATURE: > - if (hcd->can_wakeup && wValue == USB_DEVICE_REMOTE_WAKEUP) > - hcd->remote_wakeup = 1; > + if (device_can_wakeup(&hcd->self.root_hub->dev) > + && wValue == USB_DEVICE_REMOTE_WAKEUP) > + device_set_wakeup_enable(&hcd->self.root_hub->dev, 1);
I realize that it's sort of an unimportant side effect, but it still seems ironic that this code gets invoked when the root hub is suspended, _after_ the wakeup_enable setting has already been used during the root-hub interface suspend (call to HCD's bus_suspend method). In effect this is a no-op. > @@ -490,7 +508,7 @@ error: > > /* report whether RH hardware supports remote wakeup */ > if (patch_wakeup && > - len > offsetof (struct usb_config_descriptor, > + len >= offsetof (struct usb_config_descriptor, > bmAttributes)) > ((struct usb_config_descriptor *)ubuf)->bmAttributes > |= USB_CONFIG_ATT_WAKEUP; Looks like you just introduced an off-by-one error in code that used to be okay. Alan Stern ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642 _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel