123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- /*
- This work is licensed under the Creative Commons Attribution 3.0 Unported License.
- To view a copy of this license, visit http://creativecommons.org/licenses/by/3.0/
- or send a letter to
- Creative Commons,
- 171 Second Street,
- Suite 300,
- San Francisco,
- California,
- 94105,
- USA.
-
- // JTR V0.2a // 26th Jan 2012
- */
- #ifndef __CDC_H__
- #define __CDC_H__
- void cdc_setup(void);
- void cdc_set_line_coding_data(void);
- void cdc_set_line_coding_status(void);
- void cdc_get_line_coding(void);
- void cdc_set_control_line_state_status(void);
- void user_configured_init(void); // JTR added. Sets up CDC endpoints after device configured.
- void WaitInReady(void);
- void WaitOutReady(void);
- BYTE getInReady(void);
- BYTE getOutReady(void);
- BYTE getda_cdc(void);
- BYTE putda_cdc(BYTE count);
- void SendZLP(void);
- BYTE getc_cdc(void);
- void putc_cdc(BYTE c);
- void CDC_Flush_In_Now(void);
- void CDCFlushOnTimeout(void);
- BYTE poll_getc_cdc(BYTE * c);
- BYTE peek_getc_cdc(BYTE * c);
- void initCDC(void);
- struct _cdc_ControlLineState {
- int DTR : 1;
- int RTS : 1;
- int unused1 : 6;
- BYTE unused2;
- };
- // CDC Request Codes
- #define CDC_SEND_ENCAPSULATED_COMMAND 0x00
- #define CDC_GET_ENCAPSULATED_RESPONSE 0x01
- #define CDC_SET_COMM_FEATURE 0x02
- #define CDC_GET_COMM_FEATURE 0x03
- #define CDC_CLEAR_COMM_FEATURE 0x04
- // RESERVED (future use) 0x05-0x0F
- #define CDC_SET_AUX_LINE_STATE 0x10
- #define CDC_SET_HOOK_STATE 0x11
- #define CDC_PULSE_SETUP 0x12
- #define CDC_SEND_PULSE 0x13
- #define CDC_SET_PULSE_TIME 0x14
- #define CDC_RING_AUX_JACK 0x15
- // RESERVED (future use) 0x16-0x1F
- #define CDC_SET_LINE_CODING 0x20
- #define CDC_GET_LINE_CODING 0x21
- #define CDC_SET_CONTROL_LINE_STATE 0x22
- #define CDC_SEND_BREAK 0x23
- // RESERVED (future use) 0x24-0x2F
- #define CDC_SET_RINGER_PARMS 0x30
- #define CDC_GET_RINGER_PARMS 0x31
- #define CDC_SET_OPERATION_PARMS 0x32
- #define CDC_GET_OPERATION_PARMS 0x33
- #define CDC_SET_LINE_PARMS 0x34
- #define CDC_GET_LINE_PARMS 0x35
- #define CDC_DIAL_DIGITS 0x36
- #define CDC_SET_UNIT_PARAMETER 0x37
- #define CDC_GET_UNIT_PARAMETER 0x38
- #define CDC_CLEAR_UNIT_PARAMETER 0x39
- #define CDC_GET_PROFILE 0x3A
- // RESERVED (future use) 0x3B-0x3F
- #define CDC_SET_ETHERNET_MULTICAST_FILTERS 0x40
- #define CDC_SET_ETHERNET_POWER_MANAGEMENT_PATTERN_FILTER 0x41
- #define CDC_GET_ETHERNET_POWER_MANAGEMENT_PATTERN_FILTER 0x42
- #define CDC_SET_ETHERNET_PACKET_FILTER 0x43
- #define CDC_GET_ETHERNET_STATISTIC 0x44
- // RESERVED (future use) 0x45-0x4F
- #define CDC_SET_ATM_DATA_FORMAT 0x50
- #define CDC_GET_ATM_DEVICE_STATISTICS 0x51
- #define CDC_SET_ATM_DEFAULT_VC 0x52
- #define CDC_GET_ATM_VC_STATISTICS 0x53
- // RESERVED (future use) 0x54-0x5F
- // MDLM Semantic-Model specific Requests 0x60–0x7F
- // RESERVED (future use) 0x80-0xFF
- // CDC Notification Codes
- #define CDC_NETWORK_CONNECTION 0x00
- #define CDC_RESPONSE_AVAILABLE 0x01
- // RESERVED (future use) 0x02-0x07
- #define CDC_AUX_JACK_HOOK_STATE 0x08
- #define CDC_RING_DETECT 0x09
- // RESERVED (future use) 0x0A-0x1F
- #define CDC_SERIAL_STATE 0x20
- // RESERVED (future use) 0x21-0x27
- #define CDC_CALL_STATE_CHANGE 0x28
- #define CDC_LINE_STATE_CHANGE 0x29
- #define CDC_CONNECTION_SPEED_CHANGE 0x2A
- // RESERVED 0x2B-0x3F
- // MDML SEMANTIC-MODEL-SPECIFIC NOTIFICATION 0x40-0x5F
- // RESERVED (future use) 0x60-0xFF
- #endif
|