Line data Source code
1 1 : /* 2 : * Copyright (c) 2022 Emerson Electric Co. 3 : * 4 : * SPDX-License-Identifier: Apache-2.0 5 : */ 6 : 7 : /** 8 : * @file 9 : * @brief USB Hub Class device API header 10 : */ 11 : 12 : #ifndef ZEPHYR_INCLUDE_USB_CLASS_USB_HUB_H_ 13 : #define ZEPHYR_INCLUDE_USB_CLASS_USB_HUB_H_ 14 : 15 : /** USB Hub Class Feature Selectors defined in spec. Table 11-17 */ 16 1 : #define USB_HCFS_C_HUB_LOCAL_POWER 0x00 17 0 : #define USB_HCFS_C_HUB_OVER_CURRENT 0x01 18 0 : #define USB_HCFS_PORT_CONNECTION 0x00 19 0 : #define USB_HCFS_PORT_ENABLE 0x01 20 0 : #define USB_HCFS_PORT_SUSPEND 0x02 21 0 : #define USB_HCFS_PORT_OVER_CURRENT 0x03 22 0 : #define USB_HCFS_PORT_RESET 0x04 23 0 : #define USB_HCFS_PORT_POWER 0x08 24 0 : #define USB_HCFS_PORT_LOW_SPEED 0x09 25 0 : #define USB_HCFS_C_PORT_CONNECTION 0x10 26 0 : #define USB_HCFS_C_PORT_ENABLE 0x11 27 0 : #define USB_HCFS_C_PORT_SUSPEND 0x12 28 0 : #define USB_HCFS_C_PORT_OVER_CURRENT 0x13 29 0 : #define USB_HCFS_C_PORT_RESET 0x14 30 0 : #define USB_HCFS_PORT_TEST 0x15 31 0 : #define USB_HCFS_PORT_INDICATOR 0x16 32 : 33 : /** USB Hub Class Request Codes defined in spec. Table 11-16 */ 34 1 : #define USB_HCREQ_GET_STATUS 0x00 35 0 : #define USB_HCREQ_CLEAR_FEATURE 0x01 36 0 : #define USB_HCREQ_SET_FEATURE 0x03 37 0 : #define USB_HCREQ_GET_DESCRIPTOR 0x06 38 0 : #define USB_HCREQ_SET_DESCRIPTOR 0x07 39 0 : #define USB_HCREQ_CLEAR_TT_BUFFER 0x08 40 0 : #define USB_HCREQ_RESET_TT 0x09 41 0 : #define USB_HCREQ_GET_TT_STATE 0x0A 42 0 : #define USB_HCREQ_STOP_TT 0x0B 43 : 44 : #endif /* ZEPHYR_INCLUDE_USB_CLASS_USB_HUB_H_ */