FreeCalypso > hg > fc-magnetite
view cdg-hybrid/sap/dio.pdf @ 306:67d1fd7c824c
serialswitch.c: allow enabling SERIAL_DYNAMIC_SWITCH outside of BTEMOBILE
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Thu, 02 Nov 2017 05:42:39 +0000 |
parents | e7a67accfad9 |
children |
line wrap: on
line source
;******************************************************************************** ;*** File : DIO.pdf ;*** Creation : Wed Mar 11 09:57:46 CST 2009 ;*** XSLT Processor : Apache Software Foundation / http://xml.apache.org/xalan-j / supports XSLT-Ver: 1 ;*** Copyright : (c) Texas Instruments AG, Berlin Germany 2002 ;******************************************************************************** ;*** Document Type : Service Access Point Specification ;*** Document Name : DIO ;*** Document No. : ... ;*** Document Date : 2004-03-19 ;*** Document Status: BEING_PROCESSED ;*** Document Author: RM ;******************************************************************************** PRAGMA SRC_FILE_TIME "Thu Nov 29 09:39:48 2007" PRAGMA LAST_MODIFIED "2004-03-19" PRAGMA ID_AND_VERSION "..." VALTAB VAL_baud_rate VAL 0x00000000 DIO4_BAUD_RESERVED "reserved value" VAL 0x00000001 DIO4_BAUD_AUTO "Automatic detected" VAL 0x00000002 DIO4_BAUD_75 "Transmission rate of 75 bits/sec" VAL 0x00000004 DIO4_BAUD_110 "Transmission rate of 110 bits/sec" VAL 0x00000008 DIO4_BAUD_150 "Transmission rate of 150 bits/sec" VAL 0x00000010 DIO4_BAUD_300 "Transmission rate of 300 bits/sec" VAL 0x00000020 DIO4_BAUD_600 "Transmission rate of 600 bits/sec" VAL 0x00000040 DIO4_BAUD_1200 "Transmission rate of 1200 bits/sec" VAL 0x00000080 DIO4_BAUD_2400 "Transmission rate of 2400 bits/sec" VAL 0x00000100 DIO4_BAUD_4800 "Transmission rate of 4800 bits/sec" VAL 0x00000200 DIO4_BAUD_7200 "Transmission rate of 7200 bits/sec" VAL 0x00000400 DIO4_BAUD_9600 "Transmission rate of 9600 bits/sec" VAL 0x00000800 DIO4_BAUD_14400 "Transmission rate of 14400 bits/sec" VAL 0x00001000 DIO4_BAUD_19200 "Transmission rate of 19200 bits/se" VAL 0x00002000 DIO4_BAUD_28800 "Transmission rate of 28800 bits/se" VAL 0x00004000 DIO4_BAUD_33900 "Transmission rate of 33900 bits/se" VAL 0x00008000 DIO4_BAUD_38400 "Transmission rate of 38400 bits/se" VAL 0x00010000 DIO4_BAUD_57600 "Transmission rate of 57600 bits/se" VAL 0x00020000 DIO4_BAUD_115200 "Transmission rate of 115200 bits/se" VAL 0x00040000 DIO4_BAUD_203125 "Transmission rate of 203125 bits/se" VAL 0x00080000 DIO4_BAUD_230400 "Transmission rate of 230400 bits/se" VAL 0x00100000 DIO4_BAUD_406250 "Transmission rate of 406250 bits/se" VAL 0x00200000 DIO4_BAUD_460800 "Transmission rate of460800 bits/se" VAL 0x00400000 DIO4_BAUD_812500 "Transmission rate of 812500 bits/se" VAL 0x00800000 DIO4_BAUD_921600 "Transmission rate of 921600 bits/se" VALTAB VAL_dev_type VAL 0x00200000 DIO_DATA_MUX "device can start a multiplexer" VAL 0x00400000 DIO_DATA_PKT "device can contain packet data" VAL 0x00800000 DIO_DATA_SER "device can contain serial data" VAL 0x00A0000 DIO_DATA_SER_MUX "serial device which can start a multiplexer" VAL 0x0000ff00 DIO_TYPE_ID_MASK "mask for dio identifier to separate different capability structs with the same combination" VAL 0x00ff0000 DIO_TYPE_DAT_MASK "mask for dio identifier to separate kind of data support" VAL 0x00800100 DIO_TYPE_SER "Type for serial devices like UART" VAL 0x00A00100 DIO_TYPE_SER_MUX "Type for serial devices like UART. It is possible to start a 27.010 multiplexer on devices of this type" VAL 0x00400100 DIO_TYPE_PKT "Type for packet devices" VALTAB VAL_char_frame VAL 0x00000001 DIO_CF_8N2 "8 data bits; no parity bit; 2 stop bits" VAL 0x00000002 DIO_CF_8O1 "8 data bits; odd parity bit; 1 stop bits" VAL 0x00000004 DIO_CF_8E1 "8 data bits; even parity bit; 1 stop bits" VAL 0x00000008 DIO_CF_8M1 "8 data bits; mark parity bit; 1 stop bits" VAL 0x00000010 DIO_CF_8S1 "8 data bits; space parity bit; 1 stop bits" VAL 0x00000020 DIO_CF_8N1 "8 data bits; no parity bit; 1 stop bits" VAL 0x00000040 DIO_CF_7N2 "7 data bits; no parity bit; 2 stop bits" VAL 0x00000080 DIO_CF_7O1 "7 data bits; odd parity bit; 1 stop bits" VAL 0x00000100 DIO_CF_7E1 "7 data bits; even parity bit; 1 stop bits" VAL 0x00000200 DIO_CF_7M1 "7 data bits; mark parity bit; 1 stop bits" VAL 0x00000400 DIO_CF_7S1 "7 data bits; space parity bit;1 stop bits" VAL 0x00000800 DIO_CF_7N1 "7 data bits; no parity bit; 1 stop bits" VALTAB VAL_flow_control VAL 0x00000001 DIO_FLOW_NONE "Data transmit: None Data receive: None" VAL 0x00000002 DIO_FLOW_NO_XOFF "Data transmit: None Data receive: XON/XOFF" VAL 0x00000004 DIO_FLOW_NO_CTS "Data transmit: None Data receive: CTS" VAL 0x00000008 DIO_FLOW_XON_NO "Data transmit: local XON/XOFF Data receive: None" VAL 0x00000010 DIO_FLOW_XON_XOFF "Data transmit: local XON/XOFF Data receive: XON/XOFF" VAL 0x00000020 DIO_FLOW_XON_CTS "Data transmit: local XON/XOFF Data receive:CTS" VAL 0x00000040 DIO_FLOW_RTS_NO "Data transmit: RTS Data receive: None" VAL 0x00000080 DIO_FLOW_RTS_XOFF "Data transmit: RTS Data receive: XON/XOFF" VAL 0x00000100 DIO_FLOW_RTS_CTS "Data transmit: RTS Data receive: CTS" VAL 0x00000200 DIO_FLOW_XTR_NO "Data transmit: transparent XON/XOFF Data receive: None" VAL 0x00000400 DIO_FLOW_XTR_XOFF "Data transmit: transparent XON/XOFF Data receive: CTS" VAL 0x00000800 DIO_FLOW_XTR_CTS "Data transmit: transparent XON/XOFF Data receive: CTS" VALTAB VAL_line_states VAL 0x01 LINE_STD_DCD_ON "b00000001 set line DCD on" VAL 0x02 LINE_STD_DCD_OFF "b00000010 set line DCD off" VAL 0x04 LINE_STD_RING_ON "b00000100 set line RING on" VAL 0x08 LINE_STD_RING_OFF "b00001000 set line RING off" VAL 0x10 LINE_STD_ESCD_IND "b00010000 escape sequence indication" VAL 0x20 LINE_STD_DTR_LDR "b00100000 DTR line drop indication" VALTAB VAL_ser_flags VAL 0x80000000 DIO_FLAG_SER_ESC "device supports escape sequence detection" VALTAB VAL_device VAL 0xff000000 DIO_DRV_MASK "mask for driver number to identify the driver" VAL 0x00ffff00 DIO_TYPE_MASK "mask for device type" VAL 0x000000ff DIO_DEVICE_MASK "mask for actual device number chosen by the driver" VAL 0x00000000 DIO_DRV_UART "UART driver" VAL 0x01000000 DIO_DRV_USB "USB driver" VAL 0x02000000 DIO_DRV_MUX "27.010 multiplexer driver" VAL 0x03000000 DIO_DRV_PKT "packet driver" VAL 0x04000000 DIO_DRV_MCBSP "McBSP driver" VAL 0x05000000 DIO_DRV_APP "Application adapter" VAL 0x06000000 DIO_DRV_BAT "Binary Interface Adapter" VALTAB VAL_dev_flag VAL 0x80000000 DIO_FLAG_SLEEP "device provides the feature power saving state" VALTAB VAL_mux_mode VAL 0x00000001 DIO_MUX_BASIC "mux supports Basic option" VAL 0x00000002 DIO_MUX_UIH "mux supports Advanced option with UIH frames" VAL 0x00000004 DIO_MUX_UI "mux supports Advanced option with UI frames" VAL 0x00000008 DIO_MUX_I "mux supports Advanced option with I frames (error recovery)" VALTAB VAL_contr_type VAL 0x0001 DIO4_CTRL_LINES "control struct contains serial line states" VAL 0x0002 DIO4_CTRL_MUX "control struct contains mux control parameter" VALTAB VAL_dev_mode VAL 0x00000001 DIO_MODE_SER "device acts as serial device" VAL 0x00000002 DIO_MODE_MUX "device acts as 27.010 mux device" VALTAB VAL_esc_char VAL 0x2b ESC_CHAR_DEFAULT "default escape character ('+')" VALTAB VAL_guard_per VAL 0x00 DIO_ESC_OFF "turn escape sequence detection off" VAL 0x3E8 DIO_GUARD_PER_DEFAULT "default value 1000ms" VALTAB VAL_k VAL 0x02 K_DEFAULT "k default value" VALTAB VAL_n1 VAL 0x1f MUX_N1_BASIC_DEFAULT "default value for the basic option" VAL 0x40 MUX_N1_ADVANCED_DEFAULT "default value for the advanced option" VALTAB VAL_n2 VAL 0x03 MUX_N2_DEFAULT "default number of retransmission" VALTAB VAL_sleep_mode VAL 0x01 DIO_SLEEP_ENABLE "enter sleep mode if possible" VAL 0x02 DIO_SLEEP_DISABLE "do not enter sleep mode" VALTAB VAL_cb_line_state VAL 0x80000000 DIO_SA "read/write: device ready" VAL 0x40000000 DIO_SB "read/write: data valid" VAL 0x20000000 DIO_X "read/write: flow control" VAL 0x10000000 DIO_RING "write: RING indicator" VAL 0x08000000 DIO_ESC "read: escape seqence detected" VAL 0x04000000 DIO_MUX_STOPPED "multiplexer stopped" VAL 0x02000000 DIO_BRK "read/write: break received/to be send" VAL 0x000000ff DIO_BRKLEN_MASK "read/write: length of break signal in character; only valid if DIO_BREAK bit is set to 1" VALTAB VAL_t1 VAL 0x0a MUX_T1_DEFAULT "default acknowledgement timer (100ms)" VALTAB VAL_t2 VAL 0x1e MUX_T2_DEFAULT "default response timer" VALTAB VAL_t3 VAL 0x0a MUX_T3_DEFAULT "default wake up response timer (100ms)" VALTAB VAL_xoff VAL 0x13 XOFF_DEFAULT "xoff default value" VALTAB VAL_xon VAL 0x11 XON_DEFAULT "xon default value" VALTAB VAL_start_mux VAL 0x00 DIO_MUX_DYNAMIC "Do not start the 27.010 multiplexer immediately. The multi-plexer may be started dynamically on runtime" VAL 0x01 DIO_MUX_START "Starts the 27.010 multiplexer permanently. The multiplexer can not be turned off during runtime" VAR baudrate "user set baudrate" L VAL @p_DIO - VAL_baud_rate@ VAR baudrate_auto "automatically detected driver baudrates" L VAL @p_DIO - VAL_baud_rate@ VAR baudrate_fixed "driver baudrates which cannot be detected automatically" L VAL @p_DIO - VAL_baud_rate@ VAR char_frame "supported character framing" L VAL @p_DIO - VAL_char_frame@ VAR control_type "data types" S VAL @p_DIO - VAL_contr_type@ VAR device_flags "driver features like power saving state" L VAL @p_DIO - VAL_dev_flag@ VAR device_mode "work mode of device" L VAL @p_DIO - VAL_dev_mode@ VAR device_type "device identifier with general capability information" L VAL @p_DIO - VAL_dev_type@ VAR driver_name "pointer to driver name" L VAR esc_char "ASCII character which is used in an escape sequence" B VAL @p_DIO - VAL_esc_char@ VAR flow_control "supported modes of flow control" L VAL @p_DIO - VAL_flow_control@ VAR guard_period "duration value for escape sequence" S VAL @p_DIO - VAL_guard_per@ VAR k "windows size " B VAL @p_DIO - VAL_k@ VAR length "len of dio_ctrl" S VAR line_state "line state information" S VAL @p_DIO - VAL_line_states@ VAR mtu_control "max length of copied control information bytes by the driver" S VAR mtu_data "max size of packet data which the driver can transfer" S VAR mux_mode "supported multiplexer modes" L VAL @p_DIO - VAL_mux_mode@ VAR n1 "max frame size of mux frame" S VAL @p_DIO - VAL_n1@ VAR n2 "max number of retransmissions" B VAL @p_DIO - VAL_n2@ VAR ser_flags "additional supported features of serial/mux devices" L VAL @p_DIO - VAL_ser_flags@ VAR sleep_mode "enter sleep mode is possible or not" B VAL @p_DIO - VAL_sleep_mode@ VAR state "line states" L VAL @p_DIO - VAL_cb_line_state@ VAR t1 "acknowledgement timer" B VAL @p_DIO - VAL_t1@ VAR t2 "response timer" B VAL @p_DIO - VAL_t2@ VAR t3 "wake up response timer" B VAL @p_DIO - VAL_t3@ VAR xoff "set/reset XOFF for flow control" B VAR xon "set/reset XON for flow control" B VAR return_val "return values are defined in gdi.h" S VAR c_data "the size of the data" S VAR data " pointer to the first byte of the data buffer segment" B VAR c_dio_segment "the number of segments" B VAR device "Data device number" L VAR user_name "Basic Element" L VAR drv_handle "Basic Element" S COMP DIO_DCB_SER "Structured Element" { device_type ; device identifier sleep_mode ; power saving mechanism mode baudrate ; transmission data rate char_frame ; character framing mode flow_control ; flow control mode xon ; inband flow control mode xoff ; inband flow control mode esc_char ; ASCII character of escape sequence guard_period ; minimal duration before first and after last esc_char } COMP DIO_DCB_SER_MUX "Structured Element" { device_type ; device identifier sleep_mode ; power saving mechanism mode baudrate ; transmission data rate char_frame ; character framing mode flow_control ; flow control mode xon ; inband flow control mode xoff ; inband flow control mode esc_char ; ASCII character of escape sequence guard_period ; minimal duration before first and after last esc_char device_mode ; device work mode: serial or mux mux_mode ; multiplexer mode of 27.010 n1 ; max frame size of mux frame n2 ; max number of retransmissions t1 ; acknowledgement timer t2 ; response timer of mux control channel t3 ; wake up response timer k ; windows size for advanced option with error recovery } COMP DIO_DCB_PKT "Structured Element" { device_type ; device identifier sleep_mode ; power saving mechanism mode } COMP DIO_CAP_SER "serial device capabiliity structures" { device_type ; device identifier device_flags ; general additional capabilities mtu_control ; max number of bytes driver copies mtu_data ; max size of packet driver transfers driver_name ; pointer to zero terminated string with driver name baudrate_auto ; transmission rate automatically detected baudrate_fixed ; transmission rate can be only set char_frame ; supported character frame modes flow_control ; supported flow control modes ser_flags ; supported serial device capabilites } COMP DIO_CAP_SER_MUX "Structured Element" { device_type ; device identifier device_flags ; general additional capabilities mtu_control ; max number of bytes driver copies mtu_data ; max size of packet driver transfers driver_name ; pointer to zero terminated string with driver name baudrate_auto ; transmission rate automatically detected baudrate_fixed ; transmission rate can be only set char_frame ; supported character frame modes flow_control ; supported flow control modes ser_flags ; supported serial device capabilites mux_mode ; supported mux mode of 27.010 } COMP DIO_CAP_PKT "Structured Element" { device_type ; device identifier device_flags ; general additional capabilities mtu_control ; max number of bytes driver copies mtu_data ; max size of packet driver transfers driver_name ; pointer to zero terminated string with driver name } COMP DIO_CAP "device capabiliity structures" { device_type ; device identifier device_flags ; general additional capabilities mtu_control ; max number of bytes driver copies mtu_data ; max size of packet driver transfers driver_name ; pointer to zero terminated string with driver name } COMP DIO_DCB "all elements of driver configuration parameter " { device_type ; device identifier sleep_mode ; power saving mechanism mode } COMP dio_segment "Structured Element" { data PTR [0..65335] ; pointer to the first byte of the data buffer segment } COMP dio_buffer "data buffer" { length ; number of data bytes (writable or provided) dio_segment PTR [0..255] ; pointer to array of segments } COMP DIO_CTRL "Structured Element" { control_type ; identifier of control info structure length ; length of whole control info structure } COMP DIO_CTRL_LINES "Structured Element" { control_type ; control type of serial line states length ; length of control info structure state ; set/hold serial line states } COMP DIO_CTRL_MUX "Structured Element" { control_type ; control type of mux line states length ; length of control info structure state ; set/hold mux line states }