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.
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=supportNote 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
File name |
File version |
File size |
Date |
Time |
Platform |
---|---|---|---|---|---|
Usbccgp.sys |
6.0.6000.20809 |
73,216 |
09-Apr-2008 |
02:02 |
x86 |
Usbhub.sys |
6.0.6000.20809 |
194,048 |
09-Apr-2008 |
02:03 |
x86 |
Usbccgp.sys |
6.0.6001.22153 |
73,216 |
09-Apr-2008 |
02:12 |
x86 |
Usbhub.sys |
6.0.6001.22153 |
194,560 |
09-Apr-2008 |
02:12 |
x86 |
Hccoin.dll |
6.0.6000.20809 |
8,704 |
09-Apr-2008 |
04:04 |
x86 |
Hcrstco.dll |
6.0.6000.20809 |
14,336 |
09-Apr-2008 |
04:04 |
x86 |
Usbd.sys |
6.0.6000.20809 |
5,888 |
09-Apr-2008 |
02:02 |
Not Applicable |
Usbehci.sys |
6.0.6000.20809 |
38,912 |
09-Apr-2008 |
02:02 |
x86 |
Usbhub.sys |
6.0.6000.20809 |
194,048 |
09-Apr-2008 |
02:03 |
x86 |
Usbohci.sys |
6.0.6000.20809 |
19,456 |
09-Apr-2008 |
02:02 |
x86 |
Usbport.sys |
6.0.6000.20809 |
224,768 |
09-Apr-2008 |
02:02 |
x86 |
Usbuhci.sys |
6.0.6000.20809 |
23,552 |
09-Apr-2008 |
02:02 |
x86 |
Hccoin.dll |
6.0.6001.22153 |
8,704 |
09-Apr-2008 |
05:06 |
x86 |
Hcrstco.dll |
6.0.6001.22153 |
15,872 |
09-Apr-2008 |
05:06 |
x86 |
Usbd.sys |
6.0.6001.22153 |
5,888 |
09-Apr-2008 |
02:12 |
Not Applicable |
Usbehci.sys |
6.0.6001.22153 |
39,936 |
09-Apr-2008 |
02:12 |
x86 |
Usbhub.sys |
6.0.6001.22153 |
194,560 |
09-Apr-2008 |
02:12 |
x86 |
Usbohci.sys |
6.0.6001.22153 |
19,456 |
09-Apr-2008 |
02:12 |
x86 |
Usbport.sys |
6.0.6001.22153 |
226,304 |
09-Apr-2008 |
02:12 |
x86 |
Usbuhci.sys |
6.0.6001.22153 |
23,552 |
09-Apr-2008 |
02:12 |
x86 |
Windows Vista, x64-based version
File name |
File version |
File size |
Date |
Time |
Platform |
---|---|---|---|---|---|
Usbccgp.sys |
6.0.6000.20809 |
95,744 |
09-Apr-2008 |
02:29 |
x64 |
Usbhub.sys |
6.0.6000.20809 |
268,800 |
09-Apr-2008 |
02:29 |
x64 |
Usbccgp.sys |
6.0.6001.22153 |
95,744 |
09-Apr-2008 |
02:41 |
x64 |
Usbhub.sys |
6.0.6001.22153 |
269,824 |
09-Apr-2008 |
02:42 |
x64 |
Hccoin.dll |
6.0.6000.20809 |
10,752 |
09-Apr-2008 |
04:27 |
x64 |
Hcrstco.dll |
6.0.6000.20809 |
16,384 |
09-Apr-2008 |
04:27 |
x64 |
Usbd.sys |
6.0.6000.20809 |
7,552 |
09-Apr-2008 |
02:29 |
x64 |
Usbehci.sys |
6.0.6000.20809 |
48,640 |
09-Apr-2008 |
02:29 |
x64 |
Usbhub.sys |
6.0.6000.20809 |
268,800 |
09-Apr-2008 |
02:29 |
x64 |
Usbohci.sys |
6.0.6000.20809 |
24,064 |
09-Apr-2008 |
02:29 |
x64 |
Usbport.sys |
6.0.6000.20809 |
258,048 |
09-Apr-2008 |
02:29 |
x64 |
Usbuhci.sys |
6.0.6000.20809 |
29,184 |
09-Apr-2008 |
02:29 |
x64 |
Hccoin.dll |
6.0.6001.22153 |
10,752 |
09-Apr-2008 |
04:41 |
x64 |
Hcrstco.dll |
6.0.6001.22153 |
17,920 |
09-Apr-2008 |
04:41 |
x64 |
Usbd.sys |
6.0.6001.22153 |
7,680 |
09-Apr-2008 |
02:41 |
x64 |
Usbehci.sys |
6.0.6001.22153 |
49,664 |
09-Apr-2008 |
02:41 |
x64 |
Usbhub.sys |
6.0.6001.22153 |
269,824 |
09-Apr-2008 |
02:42 |
x64 |
Usbohci.sys |
6.0.6001.22153 |
24,064 |
09-Apr-2008 |
02:41 |
x64 |
Usbport.sys |
6.0.6001.22153 |
259,584 |
09-Apr-2008 |
02:41 |
x64 |
Usbuhci.sys |
6.0.6001.22153 |
29,184 |
09-Apr-2008 |
02:41 |
x64 |
Windows Vista, IA64-based version
File name |
File version |
File size |
Date |
Time |
Platform |
---|---|---|---|---|---|
Usbccgp.sys |
6.0.6001.22153 |
208,384 |
09-Apr-2008 |
02:31 |
IA-64 |
Usbhub.sys |
6.0.6001.22153 |
853,504 |
09-Apr-2008 |
02:31 |
IA-64 |
Hccoin.dll |
6.0.6001.22153 |
22,528 |
09-Apr-2008 |
04:20 |
IA-64 |
Hcrstco.dll |
6.0.6001.22153 |
24,576 |
09-Apr-2008 |
04:20 |
IA-64 |
Usbd.sys |
6.0.6001.22153 |
11,648 |
09-Apr-2008 |
02:31 |
Not Applicable |
Usbehci.sys |
6.0.6001.22153 |
122,368 |
09-Apr-2008 |
02:31 |
IA-64 |
Usbhub.sys |
6.0.6001.22153 |
853,504 |
09-Apr-2008 |
02:31 |
IA-64 |
Usbohci.sys |
6.0.6001.22153 |
58,368 |
09-Apr-2008 |
02:31 |
IA-64 |
Usbport.sys |
6.0.6001.22153 |
645,632 |
09-Apr-2008 |
02:31 |
IA-64 |
Usbuhci.sys |
6.0.6001.22153 |
80,384 |
09-Apr-2008 |
02:31 |
IA-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=supportNote 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.
File name |
File version |
File size |
Date |
Time |
Platform |
SP requirement |
Service branch |
---|---|---|---|---|---|---|---|
Usbehci.sys |
5.1.2600.2783 |
27,264 |
25-Oct-2005 |
23:39 |
x86 |
SP2 |
SP2QFE |
Usbport.sys |
5.1.2600.2783 |
143,104 |
25-Oct-2005 |
23:39 |
x86 |
SP2 |
SP2QFE |
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:
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:
824684Description of the standard terminology that is used to describe Microsoft software updates