On Fri, Feb 13, 2015 at 03:07:43PM -0600, Felipe Balbi wrote: > Every USB Host controller should use this new > macro to define for how long resume signalling > should be driven on the bus. > > Currently, almost every single USB controller > is using a 20ms timeout for resume signalling. > > That's problematic for two reasons: > > a) sometimes that 20ms timer expires a little > before 20ms, which makes us fail certification > > b) some (many) devices actually need more than > 20ms resume signalling. > > Sure, in case of (b) we can state that the device > is against the USB spec, but the fact is that > we have no control over which device the certification > lab will use. We also have no control over which host > they will use. Most likely they'll be using a Windows > PC which, again, we have no control over how that > USB stack is written and how long resume signalling > they are using. > > At the end of the day, we must make sure Linux passes > electrical compliance when working as Host or as Device > and currently we don't pass compliance as host because > we're driving resume signallig for exactly 20ms and > that confuses certification test setup resulting in > Certification failure. > > Signed-off-by: Felipe Balbi <balbi@xxxxxx> > --- > include/linux/usb.h | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/include/linux/usb.h b/include/linux/usb.h > index f89c24a03bd9..1dd89f0db344 100644 > --- a/include/linux/usb.h > +++ b/include/linux/usb.h > @@ -210,6 +210,9 @@ void usb_put_intf(struct usb_interface *intf); > #define USB_MAXINTERFACES 32 > #define USB_MAXIADS (USB_MAXINTERFACES/2) > > +/* USB Resume Timer */ > +#define USB_RESUME_TIMEOUT 40 /* ms */ > + If you add the comment as Alan suggested, feel free to add: Acked-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> -- 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