Re: Re [patch 2/3] fastboot: turn the USB hostcontroller initcallsinto async initcalls

From: Arjan van de Ven
Date: Sat Jul 19 2008 - 11:39:59 EST


On Sat, 19 Jul 2008 11:25:29 -0400 (EDT)
Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote:

> On 18 July, 2008, Arjan van de Ven wrote:
>
> > From: Arjan van de Ven <arjan@xxxxxxxxxxxxxxx>
> > Subject: [PATCH] fastboot: turn the USB hostcontroller initcalls
> > into async initcalls
> >
> > the USB host controller init calls take a long time, mostly due to a
> > "minimally 100 msec" delay *per port* during initialization.
> > These are prime candidates for going in parallel to everything else.
> >
> > The USB device ordering is not affected by this due to the
> > serialized-within-eachother property of async initcalls.
>
>
> Where is this "minimally 100 msec" per-port delay you refer to?
> Offhand I can't recall any such delays in the init routines.
>

it's here (in drivers/usb/core/hub.c::hub_power_on):

"non-switchable hub\n");
for (port1 = 1; port1 <= hub->descriptor->bNbrPorts; port1++)
set_port_feature(hub->hdev, port1, USB_PORT_FEAT_POWER);

/* Wait at least 100 msec for power to become stable */
msleep(max(pgood_delay, (unsigned) 100));
}

at least my eeepc901 hits that like 6 or 7 times
(because if I shorten the 100 the boot goes a ton faster.. but that's
obviously just a bad hack)
--
If you want to reach me at my work email, use arjan@xxxxxxxxxxxxxxx
For development, discussion and tips for power savings,
visit http://www.lesswatts.org

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/