DetailPage-MSS-KB

Microsoft small business knowledge base

Article ID: 908673 - Last Review: June 10, 2011 - Revision: 8.1

Hotfix Download Available
View and request hotfix downloads
 
Support for Windows Vista Service Pack 1 (SP1) ends on July 12, 2011. To continue receiving security updates for Windows, make sure you're running Windows Vista with Service Pack 2 (SP2). For more information, refer to this Microsoft web page: Support is ending for some versions of Windows (http://windows.microsoft.com/en-us/windows/help/end-support-windows-xp-sp2-windows-vista-without-service-packs) .

On This Page

SYMPTOMS

You try to transfer files to or from a device that is connected to a universal serial bus (USB) 2.0 hub in Windows XP, in Windows Vista, or in Windows 7. When you do this, you may experience one or more of the following symptoms:
  • When you try to transfer files, the file transfer fails. You may receive an error message about a delayed write failure. The error message that you receive may vary, depending on the device that you are using.
  • Other USB devices that are connected to the USB 2.0 hub may stop working. You may receive notification that the USB devices have been disconnected or reconnected.
  • Power may be disabled on USB devices. Then, the devices are reenumerated.
  • A USB keyboard may stop working correctly. For example, the behavior of keys may be irregular. When you press a key, the key entry may be repeated many times. Alternatively, when you press a key, nothing may occur at all.
Note Some computers have an internal USB 2.0 hub. For example, a portable computer may have a single USB bus and may use an internal USB hub to provide two or more available USB ports on the computer. Therefore, this issue may occur if the device is connected directly to a USB port on the computer.

This issue may also occur if the device is internal and is connected internally to the internal USB 2.0 hub. For example, this problem might occur if you use a portable computer that has an internal Bluetooth radio that is connected to an internal USB 2.0 hub. When you use this Bluetooth device to transfer the files to another device, you may experience the symptoms that are described in the "Symptoms" section.

CAUSE

This problem may occur when there is lots of traffic on the USB 2.0 hub, and you transfer files to a low-speed or a full-speed USB device. The problem does not occur when you transfer files to a high-speed USB device.

For more information about USB 2.0 data transfer rates, see the "More Information" section.

Additionally, this problem has been observed on computers that use Transmeta processors (CPUs).

RESOLUTION

Resolution for Windows 7


To resolve this problem in Windows 7, add a EnHcSoftRetry registry entry with a DWORD value of 1 under the following registry subkey:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\PCI\<hw id>\<instance id>\Device Parameters

Note To obtain <hw id> and <instance id>, open the Device Manager property page for each EHCI USB host controller, click the Details tab, and then select Device Instance Path in the list. Most systems have only one or two EHCI host controllers, so this should not be too difficult.

Hotfix information for Windows Vista

A supported hotfix is 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 software update that contains this hotfix.

If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, contact Microsoft Customer Service and Support to obtain the hotfix.

Note If additional issues occur or if 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. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft Web site:
http://support.microsoft.com/contactus/?ws=support (http://support.microsoft.com/contactus/?ws=support)
Note The "Hotfix download available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.

Prerequisites

To apply this hotfix, you must have Windows Vista installed. After you install this hotfix, you have to set the EnHcSoftRetry registry entry under the following registry subkey:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\PCI\<hw id>\<instance id>\Device Parameters
The registry entry is configured to have a DWORD value of 1. This value enables the Soft-Retry code path that is used in this hotfix.

Note To obtain <hw id> and <instance id>, open the Device Manager property page for each EHCI USB host controller, click the Details tab, and then select Device Instance Path in the list. Most systems have only one or two EHCI host controllers, so this should not be too difficult.

Restart requirement

You have to restart the computer after you apply this hotfix.

Hotfix replacement information

This hotfix does not replace any other hotfixes.

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 tool in Control Panel.

Windows Vista, x86-based version

Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Usbccgp.sys6.0.6000.2080973,21609-Apr-200802:02x86
Usbhub.sys6.0.6000.20809194,04809-Apr-200802:03x86
Usbccgp.sys6.0.6001.2215373,21609-Apr-200802:12x86
Usbhub.sys6.0.6001.22153194,56009-Apr-200802:12x86
Hccoin.dll6.0.6000.208098,70409-Apr-200804:04x86
Hcrstco.dll6.0.6000.2080914,33609-Apr-200804:04x86
Usbd.sys6.0.6000.208095,88809-Apr-200802:02Not Applicable
Usbehci.sys6.0.6000.2080938,91209-Apr-200802:02x86
Usbhub.sys6.0.6000.20809194,04809-Apr-200802:03x86
Usbohci.sys6.0.6000.2080919,45609-Apr-200802:02x86
Usbport.sys6.0.6000.20809224,76809-Apr-200802:02x86
Usbuhci.sys6.0.6000.2080923,55209-Apr-200802:02x86
Hccoin.dll6.0.6001.221538,70409-Apr-200805:06x86
Hcrstco.dll6.0.6001.2215315,87209-Apr-200805:06x86
Usbd.sys6.0.6001.221535,88809-Apr-200802:12Not Applicable
Usbehci.sys6.0.6001.2215339,93609-Apr-200802:12x86
Usbhub.sys6.0.6001.22153194,56009-Apr-200802:12x86
Usbohci.sys6.0.6001.2215319,45609-Apr-200802:12x86
Usbport.sys6.0.6001.22153226,30409-Apr-200802:12x86
Usbuhci.sys6.0.6001.2215323,55209-Apr-200802:12x86

Windows Vista, x64-based version

Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Usbccgp.sys6.0.6000.2080995,74409-Apr-200802:29x64
Usbhub.sys6.0.6000.20809268,80009-Apr-200802:29x64
Usbccgp.sys6.0.6001.2215395,74409-Apr-200802:41x64
Usbhub.sys6.0.6001.22153269,82409-Apr-200802:42x64
Hccoin.dll6.0.6000.2080910,75209-Apr-200804:27x64
Hcrstco.dll6.0.6000.2080916,38409-Apr-200804:27x64
Usbd.sys6.0.6000.208097,55209-Apr-200802:29x64
Usbehci.sys6.0.6000.2080948,64009-Apr-200802:29x64
Usbhub.sys6.0.6000.20809268,80009-Apr-200802:29x64
Usbohci.sys6.0.6000.2080924,06409-Apr-200802:29x64
Usbport.sys6.0.6000.20809258,04809-Apr-200802:29x64
Usbuhci.sys6.0.6000.2080929,18409-Apr-200802:29x64
Hccoin.dll6.0.6001.2215310,75209-Apr-200804:41x64
Hcrstco.dll6.0.6001.2215317,92009-Apr-200804:41x64
Usbd.sys6.0.6001.221537,68009-Apr-200802:41x64
Usbehci.sys6.0.6001.2215349,66409-Apr-200802:41x64
Usbhub.sys6.0.6001.22153269,82409-Apr-200802:42x64
Usbohci.sys6.0.6001.2215324,06409-Apr-200802:41x64
Usbport.sys6.0.6001.22153259,58409-Apr-200802:41x64
Usbuhci.sys6.0.6001.2215329,18409-Apr-200802:41x64


Windows Vista, IA64-based version

Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Usbccgp.sys6.0.6001.22153208,38409-Apr-200802:31IA-64
Usbhub.sys6.0.6001.22153853,50409-Apr-200802:31IA-64
Hccoin.dll6.0.6001.2215322,52809-Apr-200804:20IA-64
Hcrstco.dll6.0.6001.2215324,57609-Apr-200804:20IA-64
Usbd.sys6.0.6001.2215311,64809-Apr-200802:31Not Applicable
Usbehci.sys6.0.6001.22153122,36809-Apr-200802:31IA-64
Usbhub.sys6.0.6001.22153853,50409-Apr-200802:31IA-64
Usbohci.sys6.0.6001.2215358,36809-Apr-200802:31IA-64
Usbport.sys6.0.6001.22153645,63209-Apr-200802:31IA-64
Usbuhci.sys6.0.6001.2215380,38409-Apr-200802:31IA-64

Hotfix information for Windows XP

A supported hotfix is 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 software update that contains this hotfix.

If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, contact Microsoft Customer Service and Support to obtain the hotfix.

Note If additional issues occur or if 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. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft Web site:
http://support.microsoft.com/contactus/?ws=support (http://support.microsoft.com/contactus/?ws=support)
Note The "Hotfix download available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.

Prerequisites

To apply this hotfix, you must have Windows XP SP2 installed.

After you install this hotfix, the following registry subkey is automatically added and configured:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USB\EnSoftRetry
The registry key is configured to have a DWORD value of 1. This value enables the Soft-Retry code path that is used in this hotfix.

If you install a later version of this hotfix (a hotfix that contains later versions of Usbport.sys and Usbehci.sys), including Windows XP SP3, this registry value will not be automatically added and configured. The registry value must be added manually and configured as described above to enable the Soft-Retry code path that is provided in this hotfix.

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 tool in Control Panel.
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatformSP requirementService branch
Usbehci.sys5.1.2600.278327,26425-Oct-200523:39x86SP2SP2QFE
Usbport.sys5.1.2600.2783143,10425-Oct-200523:39x86SP2SP2QFE

Behavior after the hotfix is applied

When this hotfix is applied and the Soft-Retry functionality is enabled with the appropriate registry value (depending on the Windows version, as described above), a USB transfer that fails for specific reasons is silently retried instead of completed and given a "failure" status. When this process occurs, USB client device drivers may not receive notification that communication with the device failed because of a lower-level error on the USB bus.

If the affected USB device driver requires accurate error reporting to function correctly, you should not apply this hotfix. Or, you should disable the Soft-Retry functionality by setting the appropriate registry value to 0 or by deleting the Soft-Retry registry value entirely (depending on the Windows version, as described above).

A Soft-Retry process will occur when the following conditions are true:
  • The registry value is enabled
  • The error that is reported by the USB Enhanced Host Controller Interface (EHCI) host controller for the completed transfer is one of the following errors:
    • Transaction error (XactErr)
    • Missed micro-frame
    These error conditions are documented in the USB EHCI controller specification as follows:
    Transaction Error (XactErr). Set to a one by the Host Controller during status update in the case where the host did not receive a valid response from the device (Timeout, CRC, Bad PID, etc.). Refer to Section 4.15.1.1 for summary of the conditions that affect this bit. 
    Missed Micro-Frame. This bit is set when the host controller detected that a host-induced hold-off caused the host controller to miss a required complete-split transaction. 
For more information about the USB EHCI specification, visit the following Web site:
http://www.intel.com/technology/usb/ehcispec.htm (http://www.intel.com/technology/usb/ehcispec.htm)

STATUS

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

MORE INFORMATION

Data transfer rates that USB 2.0 supports

USB 2.0 supports the following maximum data transfer rates, depending on the amount of bus bandwidth that a device requires:
  • 1.5 megabits per second (Mbps) for low-speed devices that do not require lots of bandwidth. These devices include mouse devices and keyboards.
  • 12 Mbps for full-speed, higher-performing devices. These devices include storage devices, speakers, scanners, and video cameras.
  • 480 Mbps for high-speed devices. These devices include mass storage devices and Hi-Speed CD or DVD recorders.
For more information, click the following article number to view the article in the Microsoft Knowledge Base:
824684  (http://support.microsoft.com/kb/824684/ ) Description of the standard terminology that is used to describe Microsoft software updates

APPLIES TO
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional
  • Windows Vista Business
  • Windows Vista Enterprise
  • Windows Vista Home Basic
  • Windows Vista Home Premium
  • Windows Vista Service Pack 1
  • Windows Vista Starter
  • Windows Vista Ultimate
  • Windows Vista Enterprise 64-bit Edition
  • Windows Vista Home Basic 64-bit Edition
  • Windows Vista Home Premium 64-bit Edition
  • Windows Vista Ultimate 64-bit Edition
  • Windows Vista Business 64-bit Edition
  • Windows 7 Enterprise
  • Windows 7 Home Basic
  • Windows 7 Home Premium
  • Windows 7 Professional
  • Windows 7 Starter
  • Windows 7 Ultimate
Keywords: 
kbautohotfix kbexpertisebeginner kbqfe kbHotfixServer KB908673
Share
Additional support options
Ask The Microsoft Small Business Support Community
Contact Microsoft Small Business Support
Find Microsoft Small Business Support Certified Partner
Find a Microsoft Store For In-Person Small Business Support