1 /*
2  * Copyright 2019 - 2020, NXP
3  * All rights reserved.
4  *
5  * SPDX-License-Identifier: BSD-3-Clause
6  */
7 
8 #ifndef __SERIAL_PORT_VIRTUAL_H__
9 #define __SERIAL_PORT_VIRTUAL_H__
10 
11 /*!
12  * @addtogroup serial_port_virtual
13  * @ingroup serialmanager
14  * @{
15  */
16 
17 /*******************************************************************************
18  * Definitions
19  ******************************************************************************/
20 /*! @brief serial port USB handle size*/
21 #define SERIAL_PORT_VIRTUAL_HANDLE_SIZE (40U)
22 
23 /*! @brief USB controller ID */
24 typedef enum _serial_port_virtual_controller_index
25 {
26     kSerialManager_UsbVirtualControllerKhci0 = 0U, /*!< KHCI 0U */
27     kSerialManager_UsbVirtualControllerKhci1 = 1U, /*!< KHCI 1U, Currently, there are no platforms which have two KHCI
28                                   IPs, this is reserved to be used in the future. */
29     kSerialManager_UsbVirtualControllerEhci0 = 2U, /*!< EHCI 0U */
30     kSerialManager_UsbVirtualControllerEhci1 = 3U, /*!< EHCI 1U, Currently, there are no platforms which have two EHCI
31                                   IPs, this is reserved to be used in the future. */
32 
33     kSerialManager_UsbVirtualControllerLpcIp3511Fs0 = 4U, /*!< LPC USB IP3511 FS controller 0 */
34     kSerialManager_UsbVirtualControllerLpcIp3511Fs1 =
35         5U, /*!< LPC USB IP3511 FS controller 1, there are no platforms which
36        have two IP3511 IPs, this is reserved to be used in the future. */
37 
38     kSerialManager_UsbVirtualControllerLpcIp3511Hs0 = 6U, /*!< LPC USB IP3511 HS controller 0 */
39     kSerialManager_UsbVirtualControllerLpcIp3511Hs1 =
40         7U, /*!< LPC USB IP3511 HS controller 1, there are no platforms which
41        have two IP3511 IPs, this is reserved to be used in the future. */
42 
43     kSerialManager_UsbVirtualControllerOhci0 = 8U, /*!< OHCI 0U */
44     kSerialManager_UsbVirtualControllerOhci1 = 9U, /*!< OHCI 1U, Currently, there are no platforms which have two OHCI
45                                   IPs, this is reserved to be used in the future. */
46 
47     kSerialManager_UsbVirtualControllerIp3516Hs0 = 10U, /*!< IP3516HS 0U */
48     kSerialManager_UsbVirtualControllerIp3516Hs1 = 11U, /*!< IP3516HS 1U, Currently, there are no platforms which have
49                                                two IP3516HS IPs, this is reserved to be used in the future. */
50 } serial_port_virtual_controller_index_t;
51 
52 /*! @brief serial port usb config struct*/
53 typedef struct _serial_port_virtual_config
54 {
55     serial_port_virtual_controller_index_t controllerIndex; /*!< controller index */
56 } serial_port_virtual_config_t;
57 
58 /*@}*/
59 
60 #endif /* __SERIAL_PORT_VIRTUAL_H__ */
61