diff options
| author | hathach <[email protected]> | 2013-10-01 13:23:31 +0700 |
|---|---|---|
| committer | hathach <[email protected]> | 2013-10-01 13:23:31 +0700 |
| commit | 7f4a3fc8294e733a9ba52d20fa16ca6662721126 (patch) | |
| tree | a358ab772ace8e4265b298d1017155a6c06d5b7b /tinyusb | |
| parent | 71b2859fe5236744e94b6cc1e05ebe24613ac224 (diff) | |
ignore multiple level of hub
Diffstat (limited to 'tinyusb')
| -rw-r--r-- | tinyusb/host/usbh.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/tinyusb/host/usbh.c b/tinyusb/host/usbh.c index 3cc198788..929c87b0e 100644 --- a/tinyusb/host/usbh.c +++ b/tinyusb/host/usbh.c @@ -523,8 +523,9 @@ tusb_error_t enumeration_body_subtask(void) class_index = std_class_code_to_index( ((tusb_descriptor_interface_t*) p_desc)->bInterfaceClass ); SUBTASK_ASSERT( class_index != 0 ); // class_index == 0 means corrupted data, abort enumeration - if (usbh_class_drivers[class_index].open_subtask) // supported class - { + if (usbh_class_drivers[class_index].open_subtask && + !(class_index == TUSB_CLASS_HUB && usbh_devices[new_addr].hub_addr != 0)) + { // supported class, TODO Hub disable multiple level static uint16_t length; length = 0; |
