Zephyr Project API 4.0.0
A Scalable Open Source RTOS
|
USB Communications Device Class (CDC) public header. More...
Go to the source code of this file.
Data Structures | |
struct | cdc_header_descriptor |
Header Functional Descriptor. More... | |
struct | cdc_union_descriptor |
Union Interface Functional Descriptor. More... | |
struct | cdc_cm_descriptor |
Call Management Functional Descriptor. More... | |
struct | cdc_acm_descriptor |
Abstract Control Management Functional Descriptor. More... | |
struct | cdc_acm_line_coding |
Data structure for GET_LINE_CODING / SET_LINE_CODING class requests. More... | |
struct | cdc_acm_notification |
Data structure for the notification about SerialState. More... | |
struct | cdc_ecm_descriptor |
Ethernet Networking Functional Descriptor. More... | |
struct | cdc_ncm_descriptor |
Ethernet Network Control Model (NCM) Descriptor. More... | |
USB Communications Device Class (CDC) public header.
Header follows the Class Definitions for Communications Devices Specification (CDC120-20101103-track.pdf), PSTN Devices Specification (PSTN120.pdf) and Ethernet Control Model Devices Specification (ECM120.pdf). Header is limited to ACM and ECM Subclasses.
#define ACM_FUNC_DESC 0x02 |
#define ACM_SUBCLASS 0x02 |
Communications Class Subclass Codes.
#define ACM_VENDOR_PROTOCOL 0xFF |
#define AT_CMD_V250_PROTOCOL 0x01 |
Communications Class Protocol Codes.
#define CALL_MANAGEMENT_FUNC_DESC 0x01 |
#define CDC_GET_ENC_RSP 0x01 |
#define CDC_SEND_ENC_CMD 0x00 |
PSTN Subclass Specific Requests for ACM devices.
#define CDC_SRN_1_20 0x0120 |
CDC Specification release number in BCD format.
#define DATA_INTERFACE_CLASS 0x0A |
Data Class Interface Codes.
#define ECM_SUBCLASS 0x06 |
#define EEM_PROTOCOL 0x07 |
#define EEM_SUBCLASS 0x0c |
#define ETHERNET_FUNC_DESC 0x0F |
#define ETHERNET_FUNC_DESC_NCM 0x1a |
#define GET_CRC_MODE 0x89 |
#define GET_ETHERNET_PM_FILTER 0x42 |
#define GET_ETHERNET_STATISTIC 0x44 |
#define GET_LINE_CODING 0x21 |
#define GET_MAX_DATAGRAM_SIZE 0x87 |
#define GET_NET_ADDRESS 0x81 |
#define GET_NTB_FORMAT 0x83 |
#define GET_NTB_INPUT_SIZE 0x85 |
#define GET_NTB_PARAMETERS 0x80 |
Class-Specific Request Codes for NCM subclass.
#define HEADER_FUNC_DESC 0x00 |
bDescriptor SubType for Communications Class Functional Descriptors
#define NCM_DATA_PROTOCOL 0x01 |
#define NCM_SUBCLASS 0x0d |
#define PACKET_TYPE_ALL_MULTICAST 0x02 |
#define PACKET_TYPE_BROADCAST 0x08 |
#define PACKET_TYPE_DIRECTED 0x04 |
#define PACKET_TYPE_MULTICAST 0x10 |
Ethernet Packet Filter Bitmap.
#define PACKET_TYPE_PROMISCUOUS 0x01 |
#define SERIAL_STATE_BREAK 0x04 |
#define SERIAL_STATE_FRAMING 0x10 |
#define SERIAL_STATE_OVER_RUN 0x40 |
UART State Bitmap Values.
#define SERIAL_STATE_PARITY 0x20 |
#define SERIAL_STATE_RING_SIGNAL 0x08 |
#define SERIAL_STATE_RX_CARRIER 0x01 |
#define SERIAL_STATE_TX_CARRIER 0x02 |
#define SET_CONTROL_LINE_STATE 0x22 |
#define SET_CONTROL_LINE_STATE_DTR 0x01 |
#define SET_CONTROL_LINE_STATE_RTS 0x02 |
Control Signal Bitmap Values for SetControlLineState.
#define SET_CRC_MODE 0x8A |
#define SET_ETHERNET_MULTICAST_FILTERS 0x40 |
Class-Specific Request Codes for Ethernet subclass.
#define SET_ETHERNET_PACKET_FILTER 0x43 |
#define SET_ETHERNET_PM_FILTER 0x41 |
#define SET_LINE_CODING 0x20 |
#define SET_MAX_DATAGRAM_SIZE 0x88 |
#define SET_NET_ADDRESS 0x82 |
#define SET_NTB_FORMAT 0x84 |
#define SET_NTB_INPUT_SIZE 0x86 |
#define UNION_FUNC_DESC 0x06 |
#define USB_CDC_AUX_JACK_HOOK_STATE 0x08 |
#define USB_CDC_CALL_STATE_CHANGE 0x28 |
#define USB_CDC_LINE_CODING_DATA_BITS_5 5 |
#define USB_CDC_LINE_CODING_DATA_BITS_6 6 |
#define USB_CDC_LINE_CODING_DATA_BITS_7 7 |
#define USB_CDC_LINE_CODING_DATA_BITS_8 8 |
#define USB_CDC_LINE_CODING_PARITY_EVEN 2 |
#define USB_CDC_LINE_CODING_PARITY_MARK 3 |
#define USB_CDC_LINE_CODING_PARITY_NO 0 |
#define USB_CDC_LINE_CODING_PARITY_ODD 1 |
#define USB_CDC_LINE_CODING_PARITY_SPACE 4 |
#define USB_CDC_LINE_CODING_STOP_BITS_1 0 |
PSTN Subclass Line Coding Values.
#define USB_CDC_LINE_CODING_STOP_BITS_1_5 1 |
#define USB_CDC_LINE_CODING_STOP_BITS_2 2 |
#define USB_CDC_LINE_CTRL_BAUD_RATE UART_LINE_CTRL_BAUD_RATE |
Enhance enum uart_line_ctrl with CDC specific values.
#define USB_CDC_LINE_CTRL_BREAK BIT(5) |
#define USB_CDC_LINE_CTRL_DCD UART_LINE_CTRL_DCD |
#define USB_CDC_LINE_CTRL_DSR UART_LINE_CTRL_DSR |
#define USB_CDC_LINE_CTRL_FRAMING BIT(7) |
#define USB_CDC_LINE_CTRL_OVER_RUN BIT(9) |
#define USB_CDC_LINE_CTRL_PARITY BIT(8) |
#define USB_CDC_LINE_CTRL_RING_SIGNAL BIT(6) |
#define USB_CDC_LINE_STATE_CHANGE 0x23 |
#define USB_CDC_NETWORK_CONNECTION 0x00 |
PSTN Subclass Class-Specific Notification Codes.
#define USB_CDC_RESPONSE_AVAILABLE 0x01 |
#define USB_CDC_RING_DETECT 0x09 |
#define USB_CDC_SERIAL_STATE 0x20 |
#define USB_CDC_SERIAL_STATE_BREAK BIT(2) |
#define USB_CDC_SERIAL_STATE_FRAMING BIT(4) |
#define USB_CDC_SERIAL_STATE_OVERRUN BIT(6) |
PSTN UART State Bitmap Values.
#define USB_CDC_SERIAL_STATE_PARITY BIT(5) |
#define USB_CDC_SERIAL_STATE_RINGSIGNAL BIT(3) |
#define USB_CDC_SERIAL_STATE_RXCARRIER BIT(0) |
#define USB_CDC_SERIAL_STATE_TXCARRIER BIT(1) |