|
enum | {
HUB_REQUEST_GET_STATUS = 0,
HUB_REQUEST_CLEAR_FEATURE = 1,
HUB_REQUEST_SET_FEATURE = 3,
HUB_REQUEST_GET_DESCRIPTOR = 6,
HUB_REQUEST_SET_DESCRIPTOR = 7,
HUB_REQUEST_CLEAR_TT_BUFFER = 8,
HUB_REQUEST_RESET_TT = 9,
HUB_REQUEST_GET_TT_STATE = 10,
HUB_REQUEST_STOP_TT = 11
} |
|
enum | { HUB_FEATURE_HUB_LOCAL_POWER_CHANGE = 0,
HUB_FEATURE_HUB_OVER_CURRENT_CHANGE
} |
|
enum | {
HUB_FEATURE_PORT_CONNECTION = 0,
HUB_FEATURE_PORT_ENABLE = 1,
HUB_FEATURE_PORT_SUSPEND = 2,
HUB_FEATURE_PORT_OVER_CURRENT = 3,
HUB_FEATURE_PORT_RESET = 4,
HUB_FEATURE_PORT_POWER = 8,
HUB_FEATURE_PORT_LOW_SPEED = 9,
HUB_FEATURE_PORT_CONNECTION_CHANGE = 16,
HUB_FEATURE_PORT_ENABLE_CHANGE = 17,
HUB_FEATURE_PORT_SUSPEND_CHANGE = 18,
HUB_FEATURE_PORT_OVER_CURRENT_CHANGE = 19,
HUB_FEATURE_PORT_RESET_CHANGE = 20,
HUB_FEATURE_PORT_TEST = 21,
HUB_FEATURE_PORT_INDICATOR = 22
} |
|
Like most PC's OS, Hub support is completely hidden from Application. In fact, application cannot determine whether a device is mounted directly via roothub or via a hub's port. All Hub-related procedures are performed and managed by tinyusb stack. Unless you are trying to develop the stack itself, there are nothing else can be used by Application.
- Note
- Due to my laziness, only 1-level of Hub is supported. In other way, the stack cannot mount a hub via another hub.