Messages in this thread | | | Date | Thu, 25 Apr 2013 10:38:52 -0400 (EDT) | From | Alan Stern <> | Subject | Re: [PATCH v2] usb: ehci: Only sleep for post-resume handover if devices use persist |
| |
On Wed, 24 Apr 2013, Julius Werner wrote:
> The current EHCI code sleeps a flat 110ms in the resume path if there > was a USB 1.1 device connected to its companion controller during > suspend, waiting for the device to reappear and reset so that it can be > handed back to the companion. This is necessary if the device uses > persist, so that the companion controller can actually see it during its > own resume path. > > However, if the device doesn't use persist, this is entirely > unnecessary. We might just as well ignore it and have the normal device > detection/reset/handoff code handle it asynchronously when it eventually > shows up. As USB 1.1 devices are almost exclusively HIDs these days (for > which persist has no value), this can allow distros to shave another > tenth of a second off their resume time.
The patch description needs to mention the new for_each_usb_device() core routine.
> --- a/drivers/usb/host/ehci-hub.c > +++ b/drivers/usb/host/ehci-hub.c > @@ -42,6 +42,13 @@ static int ehci_hub_control( > u16 wLength > ); > > +
Unnecessary blank line added.
> +static int persist_enabled_on_companion(struct usb_device *udev, void *unused) > +{
> --- a/include/linux/usb.h > +++ b/include/linux/usb.h > @@ -719,6 +719,7 @@ const struct usb_device_id *usb_match_id(struct usb_interface *interface, > extern int usb_match_one_id(struct usb_interface *interface, > const struct usb_device_id *id); > > +extern int usb_for_each_dev(void *data, int (*fn)(struct usb_device *, void *));
Line is too long.
Aside from these minor issues, the patch is fine. Fix them and you can add
Acked-by: Alan Stern <stern@rowland.harvard.edu>
| |