Microsoft KB Archive/940316

= A full-speed USB device that is connected to an OHCI controller is not enumerated on a Windows XP Service Pack 2-based computer =

Article ID: 940316

Article Last Modified on 8/21/2007

-

APPLIES TO


 * Microsoft Windows XP Service Pack 2
 * Microsoft Windows XP Service Pack 2

-



SYMPTOMS
Consider the following scenario. You plug in a full-speed universal serial bus (USB) device to the Open Host Controller Interface (OHCI) controller on a Microsoft Windows XP Service Pack 2 (SP2)-based computer. You disable the OHCI controller, you disable the Enhanced Host Controller Interface (EHCI) controller, and then you re-enable the OHCI controller. In this scenario, the full-speed USB device that is connected to the OHCI controller is not enumerated.



CAUSE
This problem occurs because of a USB driver design limitation in Windows XP SP2.



MORE INFORMATION
You experience this problem because of the way that the Hccoin.dll file works together with the Haction flag.

Generally, if an EHCI controller is disabled, the Hccoin.dll file sets the Haction flag for the companion controller. This happens because the companion controller does not have to wait for the root hub of the EHCI controller to start before the root hub of the companion controller starts.

If the OHCI controller is disabled before the EHCI controller is disabled, the Hccoin.dll file does not find the companion controller that it uses to set the Haction flag. When the OHCI controller is re-enabled, the root hub of the OHCI controller does not start because the root hub waits for the root hub of the disabled EHCI controller to start. When the root hub of the OHCI controller waits to start, the RootHubStatusChange interrupt is not enabled in the OHCI companion controller. Therefore, the full-speed USB device that is connected to the OHCI controller is not enumerated.

Keywords: kbtshoot kbexpertiseadvanced KB940316

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.