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_ */
|