Delaying USB driver start
Mike Warren
07-09-2005, 10:26 PM
Hi,
Is there an easy way to delay the start of the USB mass storage
(or any other) driver?
When our systems start, if there is a USB flash drive connected
we get video driver crashes.
With some flash drives the system will lock up with a corrupted
display but will continue to boot correctly if the USB drive is then
unplugged.
This happens after the desktop background is shown but before
our shell is started.
I am assuming some sort of conflict between the USB driver and
video driver an am hoping that changing the start order may cure it.
I have made it a requirement that our customers must not switch
the device on with a USB drive plugged in but I would like to try
to fix the problem if it is not too hard.
-Mike
Slobodan Brcin \(eMVP\)
07-09-2005, 10:26 PM
Mike,
This sound like a serious problem with some of the drivers or hardware compatibility issues.
Changing boot order of drivers is usually not a good thing, and it won't solve your original problem (it may just mask it on short
periods of time, after which problem will reoccur).
If desktop background is started it usually mean that all most drivers are already loaded and initialized, and that you might have
problems with initialization done by services. (Do you have network adapter?)
Also please check your IRQ assignment between USB controller and video card. Video drivers vere sensitive in regards of IRQ sharing
with other drivers.
Quick solution for you would be to keep usbstor or usbehci,usbuhci/usbohci driver start values at value 4 (disabled). And then using
code from devcon example in your application you can enable these drivers and wait for them to start.
Something like:
1. USB supports disabled initially.
2. Your application start.
3. Your app wait for all PnP activity to be completed.
4. You start USB.
5. You wait for all PnP activity to complete.
6. You go and do what ever you want with your shell.
Regards,
Slobodan
"Mike Warren" <miwaNOSPAM@iprimus.com.au> wrote in message news:Odw4oIKcFHA.4048@TK2MSFTNGP10.phx.gbl...
> Hi,
>
> Is there an easy way to delay the start of the USB mass storage
> (or any other) driver?
>
> When our systems start, if there is a USB flash drive connected
> we get video driver crashes.
>
> With some flash drives the system will lock up with a corrupted
> display but will continue to boot correctly if the USB drive is then
> unplugged.
>
> This happens after the desktop background is shown but before
> our shell is started.
>
> I am assuming some sort of conflict between the USB driver and
> video driver an am hoping that changing the start order may cure it.
>
> I have made it a requirement that our customers must not switch
> the device on with a USB drive plugged in but I would like to try
> to fix the problem if it is not too hard.
>
>
> -Mike
>
>
>
>
Mike Warren
07-09-2005, 10:26 PM
Hi Slobodan,
> Changing boot order of drivers is usually not a good thing, and it
> won't solve your original problem (it may just mask it on short
> periods of time, after which problem will reoccur).
> If desktop background is started it usually mean that all most
> drivers are already loaded and initialized, and that you might have
> problems with initialization done by services. (Do you have network
> adapter?)
Yes, (no DHCP) but there isn't any noticeable behaviour difference if the
network cable is connected or disconnected.
> Also please check your IRQ assignment between USB controller and
> video card. Video drivers vere sensitive in regards of IRQ sharing
> with other drivers.
>
> Quick solution for you would be to keep usbstor or
> usbehci,usbuhci/usbohci driver start values at value 4 (disabled).
> And then using code from devcon example in your application you can
> enable these drivers and wait for them to start.
>
> Something like:
> 1. USB supports disabled initially.
> 2. Your application start.
> 3. Your app wait for all PnP activity to be completed.
> 4. You start USB.
> 5. You wait for all PnP activity to complete.
> 6. You go and do what ever you want with your shell.
I'll have a go at this in the next couple of days.
Thanks for your help.
-Mike
Delaying USB driver start