]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBus.h
IntelSiliconPkg: Clean up source files
[mirror_edk2.git] / MdeModulePkg / Bus / Usb / UsbBusDxe / UsbBus.h
index ad2f95261bbda3351f24306fbd939d5bd8a8a335..9ede83ab7e611b09922c8d2653d73ac07140d4ff 100644 (file)
@@ -60,10 +60,10 @@ typedef struct _USB_HUB_API    USB_HUB_API;
 \r
 //\r
 // Roothub and hub's polling interval, set by experience,\r
-// The unit of roothub is 100us, means 1s as interval, and\r
+// The unit of roothub is 100us, means 100ms as interval, and\r
 // the unit of hub is 1ms, means 64ms as interval.\r
 //\r
-#define USB_ROOTHUB_POLL_INTERVAL (1000 * 10000U)\r
+#define USB_ROOTHUB_POLL_INTERVAL (100 * 10000U)\r
 #define USB_HUB_POLL_INTERVAL     64\r
 \r
 //\r
@@ -75,13 +75,13 @@ typedef struct _USB_HUB_API    USB_HUB_API;
 //\r
 // Wait for port statue reg change, set by experience\r
 //\r
-#define USB_WAIT_PORT_STS_CHANGE_STALL (5 * USB_BUS_1_MILLISECOND)\r
+#define USB_WAIT_PORT_STS_CHANGE_STALL (100)\r
 \r
 //\r
 // Wait for set device address, refers to specification\r
 // [USB20-9.2.6.3, it says 2ms]\r
 //\r
-#define USB_SET_DEVICE_ADDRESS_STALL   (20 * USB_BUS_1_MILLISECOND)\r
+#define USB_SET_DEVICE_ADDRESS_STALL   (2 * USB_BUS_1_MILLISECOND)\r
 \r
 //\r
 // Wait for retry max packet size, set by experience\r
@@ -99,9 +99,18 @@ typedef struct _USB_HUB_API    USB_HUB_API;
 // [USB20-7.1.7.5, it says 10ms for hub and 50ms for\r
 // root hub]\r
 //\r
+// According to USB2.0, Chapter 11.5.1.5 Resetting,\r
+// the worst case for TDRST is 20ms\r
+//\r
 #define USB_SET_PORT_RESET_STALL       (20 * USB_BUS_1_MILLISECOND)\r
 #define USB_SET_ROOT_PORT_RESET_STALL  (50 * USB_BUS_1_MILLISECOND)\r
 \r
+//\r
+// Wait for port recovery to accept SetAddress, refers to specification\r
+// [USB20-7.1.7.5, it says 10 ms for TRSTRCY]\r
+//\r
+#define USB_SET_PORT_RECOVERY_STALL    (10 * USB_BUS_1_MILLISECOND)\r
+\r
 //\r
 // Wait for clear roothub port reset, set by experience\r
 //\r
@@ -189,6 +198,7 @@ struct _USB_DEVICE {
   USB_INTERFACE             *ParentIf;\r
   UINT8                     ParentPort;       // Start at 0\r
   UINT8                     Tier;\r
+  BOOLEAN                   DisconnectFail;\r
 };\r
 \r
 //\r