// [USB20-7.1.7.5, it says 10ms for hub and 50ms for\r
// root hub]\r
//\r
-#define USB_SET_PORT_RESET_STALL (10 * USB_BUS_1_MILLISECOND)\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