Skip to content

Commit e7d4b5c

Browse files
committed
add enum for set addr recovery
1 parent fc43eed commit e7d4b5c

File tree

3 files changed

+7
-7
lines changed

3 files changed

+7
-7
lines changed

.idea/cmake.xml

+3-3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/debugServers/rt1064.xml

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/host/usbh.c

+2-2
Original file line numberDiff line numberDiff line change
@@ -1363,6 +1363,7 @@ enum { // USB 2.0 specs 7.1.7 for timing
13631363
ENUM_RESET_ROOT_DELAY_MS = 50, // T(DRSTr) minimum 50 ms for reset from root port
13641364
ENUM_RESET_HUB_DELAY_MS = 20, // T(DRST) 10-20 ms for hub reset
13651365
ENUM_RESET_RECOVERY_DELAY_MS = 10, // T(RSTRCY) minimum 10 ms for reset recovery
1366+
ENUM_SET_ADDRESS_RECOVERY_DELAY_MS = 2, // USB 2.0 Spec 9.2.6.3 min is 2 ms
13661367
};
13671368

13681369
enum {
@@ -1573,8 +1574,7 @@ static void process_enumeration(tuh_xfer_t* xfer) {
15731574
}
15741575

15751576
case ENUM_GET_DEVICE_DESC: {
1576-
// Allow 2ms for address recovery time, Ref USB Spec 9.2.6.3
1577-
tusb_time_delay_ms_api(2);
1577+
tusb_time_delay_ms_api(ENUM_SET_ADDRESS_RECOVERY_DELAY_MS); // set address recovery
15781578

15791579
const uint8_t new_addr = (uint8_t) tu_le16toh(xfer->setup->wValue);
15801580
usbh_device_t* new_dev = get_device(new_addr);

0 commit comments

Comments
 (0)