Microsoft KB Archive/928631

From BetaArchive Wiki

Article ID: 928631

Article Last Modified on 8/29/2007



APPLIES TO

  • Windows Vista Home Premium 64-bit Edition
  • Windows Vista Ultimate 64-bit Edition
  • Windows Vista Home Premium
  • Windows Vista Ultimate
  • Windows Vista Enterprise 64-bit Edition
  • Windows Vista Home Basic 64-bit Edition
  • Windows Vista Business
  • Windows Vista Business 64-bit Edition
  • Windows Vista Business N
  • Windows Vista Business N 64-bit Edition
  • Windows Vista Enterprise
  • Windows Vista Home Basic
  • Windows Vista Home Basic N
  • Windows Vista Home Basic N 64-bit Edition
  • Windows Vista Starter



Important This article contains information about how to modify the registry. Make sure that you back up the registry before you modify it. Make sure that you know how to restore the registry if a problem occurs. For more information about how to back up, restore, and modify the registry, click the following article number to view the article in the Microsoft Knowledge Base:

256986 Description of the Microsoft Windows registry


SYMPTOMS

After you resume a Windows Vista-based computer from sleep or from hibernation, or after you restart the computer, some devices may no longer work correctly. For example, you may experience any of the following symptoms:

  • A device, such as a USB IR receiver, does not resume correctly. When this problem occurs, an associated device, such as the Windows Media Center IR remote control, is unavailable.
  • Windows Vista does not detect some USB devices. The USB devices do not work.
  • A USB device, such as a fingerprint reader, is not immediately available. For example, it may take 30 seconds for a device to become available after the Welcome screen appears.


RESOLUTION

Hotfix information

A supported hotfix is now available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next service pack that contains this hotfix.

To resolve this problem, submit a request to Microsoft Online Customer Services to obtain the hotfix. To submit an online request to obtain the hotfix, visit the following Microsoft Web site:

Note If additional issues occur or any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. To create a separate service request, visit the following Microsoft Web site:

File information

The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.

Windows Vista, x86-based versions
File name File version File size Date Time Platform
Hccoin.dll 6.0.6000.20550 8,704 06-Mar-2007 02:54 x86
Update.mum Not Applicable 2,030 06-Mar-2007 21:22 Not Applicable
Usbd.sys 6.0.6000.20550 5,888 06-Mar-2007 02:08 Not Applicable
Usbehci.sys 6.0.6000.20550 38,400 06-Mar-2007 02:08 x86
Usbhub.sys 6.0.6000.20550 192,000 06-Mar-2007 02:09 x86
Usbohci.sys 6.0.6000.20550 19,456 06-Mar-2007 02:08 x86
Usbport.sys 6.0.6000.20550 223,744 06-Mar-2007 02:08 x86
Usbuhci.sys 6.0.6000.20550 22,528 06-Mar-2007 02:08 x86
X86_usbport.inf_31bf3856ad364e35_6.0.6000.20550_none_bc2faa301fad4196.manifest Not Applicable 5,386 06-Mar-2007 21:23 Not Applicable
Windows Vista, 64-bit versions
File name File version File size Date Time Platform
Amd64_usbport.inf_31bf3856ad364e35_6.0.6000.20550_none_184e45b3d80ab2cc.manifest Not Applicable 5,388 06-Mar-2007 21:32 Not Applicable
Hccoin.dll 6.0.6000.20550 10,752 06-Mar-2007 03:59 x64
Update.mum Not Applicable 2,030 06-Mar-2007 21:22 Not Applicable
Usbd.sys 6.0.6000.20550 7,552 06-Mar-2007 02:32 x64
Usbehci.sys 6.0.6000.20550 48,128 06-Mar-2007 02:32 x64
Usbhub.sys 6.0.6000.20550 266,240 06-Mar-2007 02:32 x64
Usbohci.sys 6.0.6000.20550 24,064 06-Mar-2007 02:32 x64
Usbport.sys 6.0.6000.20550 257,024 06-Mar-2007 02:32 x64
Usbuhci.sys 6.0.6000.20550 28,672 06-Mar-2007 02:32 x64


Post-installation instructions

Warning Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall the operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk.

After you install this hotfix or a later USB-based hotfix, a different USB device may no longer work after Windows Vista resumes from sleep or from hibernation. For example, the different device might be an integrated USB device. To resolve this problem, you must first use Device Manager to determine the specific USB universal host controller that is controlling the integrated USB device that is failing. Then, you must add the ForceHCResetOnResume entry to the registry subkey that corresponds to the USB universal host controller.

Note If the USB device is a USB 2.0 device, the device may not appear in the USB Universal Host Controller node in Device Manager. The device will likely appear in a different USB host controller node. For example, the USB host controller node may have the words Enhanced, EHCI, or USB 2.0 in the name. The following steps are for a USB universal host controller. However, these steps would also apply for a USB 2.0 enhanced host controller.

Step 1: Determine the specific USB universal host controller

  1. Click Start, type devmgmt.msc in the Start Search box, and then click devmgmt.msc in the Programs list.
  2. On the View menu, click Devices by connection.
  3. Expand the processor node. For example, expand ACPI Multiprocessor PC.

    Note The node names in this procedure vary depending on the hardware.
  4. Expand Microsoft ACPI-Compliant System.
  5. Expand PCI Bus. Several USB universal host controllers will be listed.
  6. Expand each USB universal host controller node, and then expand successive subnodes until you find the name of the device that is failing. For example, the device entry may resemble the following:

    ACPI Multiprocessor PC\Microsoft ACPI-Compliant System\PCI Bus\Intel(R) ICH8 Family USB Universal Host Controller - 2830\USB Root Hub\fingerprint reader

    Notes

    • The fingerprint reader is typically listed as a biometric device.
    • The specific USB universal host controller should not be used to control any externally available USB ports. For example, only internal integrated USB devices should be listed under the USB Root Hub node for the specific USB universal host controller.
  7. When you have located the device, right-click the associated USB universal host controller, and then click Properties. In the example that is listed in step 6, right-click Intel(R) ICH8 Family USB Universal Host Controller - 2830, and then click Properties.
  8. Click the Details tab.
  9. Select Hardware Ids in the list. Note the Hardware Ids that are listed. For example, the Hardware Ids may resemble the following:

    PCI\VEN_8086&DEV_2830&SUBSYS_2A36103C&REV_02
    PCI\VEN_8086&DEV_2830&SUBSYS_2A36103C
    PCI\VEN_8086&DEV_2830&CC_0C0300
    PCI\VEN_8086&DEV_2830&CC_0C03

Step 2: Add the ForceHCResetOnResume registry value for the USB universal host controller

  1. Click Start, type regedit in the Start Search box, and then click regedit.exe in the Programs list.
  2. Locate and then click registry subkeys that resemble the following:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{36FC9E60-C465-11CF-8056-444553540000}\Four-digit_number

    Notes

    • Four-digit_number is a placeholder for the USB devices in the system.
    • In this step, you must locate the registry subkeys that represent the system's USB universal host controllers. The USB universal host controllers typically have the lowest four-digit numbers. For example, the following subkeys typically represent USB universal host controllers:

      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{36FC9E60-C465-11CF-8056-444553540000}\0000 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{36FC9E60-C465-11CF-8056-444553540000}\0001 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{36FC9E60-C465-11CF-8056-444553540000}\0002 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{36FC9E60-C465-11CF-8056-444553540000}\0003 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{36FC9E60-C465-11CF-8056-444553540000}\0004 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{36FC9E60-C465-11CF-8056-444553540000}\0005 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{36FC9E60-C465-11CF-8056-444553540000}\0006

  3. Examine the DriverDesc registry entry and the MatchingDeviceId registry entry in each subkey. Look for a value that closely matches the Hardware Id value for the USB universal host controller name that you found in Device Manager. The following table contains sample values.
    Device Manager value Registry value
    Intel(R) ICH8 Family USB Universal Host Controller - 2830 "DriverDesc"="Intel(R) ICH8 Family USB Universal Host Controller - 2830"
    PCI\VEN_8086&DEV_2830 "MatchingDeviceId"="pci\\ven_8086&dev_2830"

    In this example, you must edit the subkey that contains the following registry value:

    Intel(R) ICH8 Family USB Universal Host Controller - 2830

    This USB universal host controller is located in the following registry subkey:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{36FC9E60-C465-11CF-8056-444553540000}\0000

    Therefore, in this example, you must add a ForceHCResetOnResume DWORD entry that has a value of 1 to the registry subkey.
  4. Locate and then click the registry subkey that you identified in the previous step. For example, click the following subkey:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{36FC9E60-C465-11CF-8056-444553540000}\Four-digit_number

    Note Four-digit_number is the registry subkey that represents the specific USB universal host controller. For example, the subkey will resemble the following:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{36FC9E60-C465-11CF-8056-444553540000}\0000

  5. On the Edit menu, point to New, and then click DWORD Value.
  6. Type ForceHCResetOnResume for the name of the DWORD, and then press ENTER.
  7. Right-click ForceHCResetOnResume, and then click Modify.
  8. In the Value data box, type 1, and then click OK.
  9. Exit Registry Editor.
  10. Restart the computer.


STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

MORE INFORMATION

For more information, click the following article number to view the article in the Microsoft Knowledge Base:

824684 Description of the standard terminology that is used to describe Microsoft software updates


Keywords: kbbug kbfix kbqfe kbprb kbexpertisebeginner kbhotfixserver KB928631