/* * Copyright (c) Eicon Networks, 2002. * This source file is supplied for the use with Eicon Networks range of DIVA Server Adapters. * Eicon File Revision : 2.1 * This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. * You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * */ #ifndef __EICON_MDM_MSG_H__ #define __EICON_MDM_MSG_H__ #define DSP_UDATA_INDICATION_DCD_OFF 0x01 #define DSP_UDATA_INDICATION_DCD_ON 0x02 #define DSP_UDATA_INDICATION_CTS_OFF 0x03 #define DSP_UDATA_INDICATION_CTS_ON 0x04 /* ===================================================================== DCD_OFF Message: <word> time of DCD off (sampled from counter at 8kHz) DCD_ON Message: <word> time of DCD on (sampled from counter at 8kHz) <byte> connected norm <word> connected options <dword> connected speed (bit/s, max of tx and rx speed) <word> roundtrip delay (ms) <dword> connected speed tx (bit/s) <dword> connected speed rx (bit/s) Size of this message == 19 bytes, but we will receive only 11 ===================================================================== */ #define DSP_CONNECTED_NORM_UNSPECIFIED 0 #define DSP_CONNECTED_NORM_V21 1 #define DSP_CONNECTED_NORM_V23 2 #define DSP_CONNECTED_NORM_V22 3 #define DSP_CONNECTED_NORM_V22_BIS 4 #define DSP_CONNECTED_NORM_V32_BIS 5 #define DSP_CONNECTED_NORM_V34 6 #define DSP_CONNECTED_NORM_V8 7 #define DSP_CONNECTED_NORM_BELL_212A 8 #define DSP_CONNECTED_NORM_BELL_103 9 #define DSP_CONNECTED_NORM_V29_LEASED_LINE 10 #define DSP_CONNECTED_NORM_V33_LEASED_LINE 11 #define DSP_CONNECTED_NORM_V90 12 #define DSP_CONNECTED_NORM_V21_CH2 13 #define DSP_CONNECTED_NORM_V27_TER 14 #define DSP_CONNECTED_NORM_V29 15 #define DSP_CONNECTED_NORM_V33 16 #define DSP_CONNECTED_NORM_V17 17 #define DSP_CONNECTED_NORM_V32 18 #define DSP_CONNECTED_NORM_K56_FLEX 19 #define DSP_CONNECTED_NORM_X2 20 #define DSP_CONNECTED_NORM_V18 21 #define DSP_CONNECTED_NORM_V18_LOW_HIGH 22 #define DSP_CONNECTED_NORM_V18_HIGH_LOW 23 #define DSP_CONNECTED_NORM_V21_LOW_HIGH 24 #define DSP_CONNECTED_NORM_V21_HIGH_LOW 25 #define DSP_CONNECTED_NORM_BELL103_LOW_HIGH 26 #define DSP_CONNECTED_NORM_BELL103_HIGH_LOW 27 #define DSP_CONNECTED_NORM_V23_75_1200 28 #define DSP_CONNECTED_NORM_V23_1200_75 29 #define DSP_CONNECTED_NORM_EDT_110 30 #define DSP_CONNECTED_NORM_BAUDOT_45 31 #define DSP_CONNECTED_NORM_BAUDOT_47 32 #define DSP_CONNECTED_NORM_BAUDOT_50 33 #define DSP_CONNECTED_NORM_DTMF 34 #define DSP_CONNECTED_NORM_V18_RESERVED_13 35 #define DSP_CONNECTED_NORM_V18_RESERVED_14 36 #define DSP_CONNECTED_NORM_V18_RESERVED_15 37 #define DSP_CONNECTED_NORM_VOWN 38 #define DSP_CONNECTED_NORM_V23_OFF_HOOK 39 #define DSP_CONNECTED_NORM_V23_ON_HOOK 40 #define DSP_CONNECTED_NORM_VOWN_RESERVED_3 41 #define DSP_CONNECTED_NORM_VOWN_RESERVED_4 42 #define DSP_CONNECTED_NORM_VOWN_RESERVED_5 43 #define DSP_CONNECTED_NORM_VOWN_RESERVED_6 44 #define DSP_CONNECTED_NORM_VOWN_RESERVED_7 45 #define DSP_CONNECTED_NORM_VOWN_RESERVED_8 46 #define DSP_CONNECTED_NORM_VOWN_RESERVED_9 47 #define DSP_CONNECTED_NORM_VOWN_RESERVED_10 48 #define DSP_CONNECTED_NORM_VOWN_RESERVED_11 49 #define DSP_CONNECTED_NORM_VOWN_RESERVED_12 50 #define DSP_CONNECTED_NORM_VOWN_RESERVED_13 51 #define DSP_CONNECTED_NORM_VOWN_RESERVED_14 52 #define DSP_CONNECTED_NORM_VOWN_RESERVED_15 53 #define DSP_CONNECTED_NORM_VOWN_RESERVED_16 54 #define DSP_CONNECTED_NORM_VOWN_RESERVED_17 55 #define DSP_CONNECTED_NORM_VOWN_RESERVED_18 56 #define DSP_CONNECTED_NORM_VOWN_RESERVED_19 57 #define DSP_CONNECTED_NORM_VOWN_RESERVED_20 58 #define DSP_CONNECTED_NORM_VOWN_RESERVED_21 59 #define DSP_CONNECTED_NORM_VOWN_RESERVED_22 60 #define DSP_CONNECTED_NORM_VOWN_RESERVED_23 61 #define DSP_CONNECTED_NORM_VOWN_RESERVED_24 62 #define DSP_CONNECTED_NORM_VOWN_RESERVED_25 63 #define DSP_CONNECTED_NORM_VOWN_RESERVED_26 64 #define DSP_CONNECTED_NORM_VOWN_RESERVED_27 65 #define DSP_CONNECTED_NORM_VOWN_RESERVED_28 66 #define DSP_CONNECTED_NORM_VOWN_RESERVED_29 67 #define DSP_CONNECTED_NORM_VOWN_RESERVED_30 68 #define DSP_CONNECTED_NORM_VOWN_RESERVED_31 69 #define DSP_CONNECTED_OPTION_TRELLIS 0x0001 #define DSP_CONNECTED_OPTION_V42_TRANS 0x0002 #define DSP_CONNECTED_OPTION_V42_LAPM 0x0004 #define DSP_CONNECTED_OPTION_SHORT_TRAIN 0x0008 #define DSP_CONNECTED_OPTION_TALKER_ECHO_PROTECT 0x0010 #define DSP_CONNECTED_OPTION_V42BIS 0x0020 #define DSP_CONNECTED_OPTION_MNP2 0x0040 #define DSP_CONNECTED_OPTION_MNP3 0x0080 #define DSP_CONNECTED_OPTION_MNP4 0x00c0 #define DSP_CONNECTED_OPTION_MNP5 0x0100 #define DSP_CONNECTED_OPTION_MNP10 0x0200 #define DSP_CONNECTED_OPTION_MASK_V42 0x0024 #define DSP_CONNECTED_OPTION_MASK_MNP 0x03c0 #define DSP_CONNECTED_OPTION_MASK_ERROR_CORRECT 0x03e4 #define DSP_CONNECTED_OPTION_MASK_COMPRESSION 0x0320 #define DSP_UDATA_INDICATION_DISCONNECT 5 /* returns: <byte> cause */ /* ========================================================== DLC: B2 modem configuration ========================================================== */ /* Fields in assign DLC information element for modem protocol V.42/MNP: <byte> length of information element <word> information field length <byte> address A (not used, default 3) <byte> address B (not used, default 1) <byte> modulo mode (not used, default 7) <byte> window size (not used, default 7) <word> XID length (not used, default 0) ... XID information (not used, default empty) <byte> modem protocol negotiation options <byte> modem protocol options <byte> modem protocol break configuration <byte> modem protocol application options */ #define DLC_MODEMPROT_DISABLE_V42_V42BIS 0x01 #define DLC_MODEMPROT_DISABLE_MNP_MNP5 0x02 #define DLC_MODEMPROT_REQUIRE_PROTOCOL 0x04 #define DLC_MODEMPROT_DISABLE_V42_DETECT 0x08 #define DLC_MODEMPROT_DISABLE_COMPRESSION 0x10 #define DLC_MODEMPROT_REQUIRE_PROTOCOL_V34UP 0x20 #define DLC_MODEMPROT_NO_PROTOCOL_IF_1200 0x01 #define DLC_MODEMPROT_BUFFER_IN_V42_DETECT 0x02 #define DLC_MODEMPROT_DISABLE_V42_SREJ 0x04 #define DLC_MODEMPROT_DISABLE_MNP3 0x08 #define DLC_MODEMPROT_DISABLE_MNP4 0x10 #define DLC_MODEMPROT_DISABLE_MNP10 0x20 #define DLC_MODEMPROT_NO_PROTOCOL_IF_V22BIS 0x40 #define DLC_MODEMPROT_NO_PROTOCOL_IF_V32BIS 0x80 #define DLC_MODEMPROT_BREAK_DISABLED 0x00 #define DLC_MODEMPROT_BREAK_NORMAL 0x01 #define DLC_MODEMPROT_BREAK_EXPEDITED 0x02 #define DLC_MODEMPROT_BREAK_DESTRUCTIVE 0x03 #define DLC_MODEMPROT_BREAK_CONFIG_MASK 0x03 #define DLC_MODEMPROT_APPL_EARLY_CONNECT 0x01 #define DLC_MODEMPROT_APPL_PASS_INDICATIONS 0x02 /* ========================================================== CAI parameters used for the modem L1 configuration ========================================================== */ /* Fields in assign CAI information element: <byte> length of information element <byte> info field and B-channel hardware <byte> rate adaptation bit rate <byte> async framing parameters <byte> reserved <word> packet length <byte> modem line taking options <byte> modem modulation negotiation parameters <byte> modem modulation options <byte> modem disabled modulations mask low <byte> modem disabled modulations mask high <byte> modem enabled modulations mask <word> modem min TX speed <word> modem max TX speed <word> modem min RX speed <word> modem max RX speed <byte> modem disabled symbol rates mask <byte> modem info options mask <byte> modem transmit level adjust <byte> modem speaker parameters <word> modem private debug config <struct> modem reserved <struct> v18 config parameters <struct> v18 probing sequence <struct> v18 probing message */ #define DSP_CAI_HARDWARE_HDLC_64K 0x05 #define DSP_CAI_HARDWARE_HDLC_56K 0x08 #define DSP_CAI_HARDWARE_TRANSP 0x09 #define DSP_CAI_HARDWARE_V110_SYNC 0x0c #define DSP_CAI_HARDWARE_V110_ASYNC 0x0d #define DSP_CAI_HARDWARE_HDLC_128K 0x0f #define DSP_CAI_HARDWARE_FAX 0x10 #define DSP_CAI_HARDWARE_MODEM_ASYNC 0x11 #define DSP_CAI_HARDWARE_MODEM_SYNC 0x12 #define DSP_CAI_HARDWARE_V110_HDLCA 0x13 #define DSP_CAI_HARDWARE_ADVANCED_VOICE 0x14 #define DSP_CAI_HARDWARE_TRANSP_DTMF 0x16 #define DSP_CAI_HARDWARE_DTMF_VOICE_ISDN 0x17 #define DSP_CAI_HARDWARE_DTMF_VOICE_LOCAL 0x18 #define DSP_CAI_HARDWARE_MASK 0x3f #define DSP_CAI_ENABLE_INFO_INDICATIONS 0x80 #define DSP_CAI_RATE_ADAPTATION_300 0x00 #define DSP_CAI_RATE_ADAPTATION_600 0x01 #define DSP_CAI_RATE_ADAPTATION_1200 0x02 #define DSP_CAI_RATE_ADAPTATION_2400 0x03 #define DSP_CAI_RATE_ADAPTATION_4800 0x04 #define DSP_CAI_RATE_ADAPTATION_9600 0x05 #define DSP_CAI_RATE_ADAPTATION_19200 0x06 #define DSP_CAI_RATE_ADAPTATION_38400 0x07 #define DSP_CAI_RATE_ADAPTATION_48000 0x08 #define DSP_CAI_RATE_ADAPTATION_56000 0x09 #define DSP_CAI_RATE_ADAPTATION_7200 0x0a #define DSP_CAI_RATE_ADAPTATION_14400 0x0b #define DSP_CAI_RATE_ADAPTATION_28800 0x0c #define DSP_CAI_RATE_ADAPTATION_12000 0x0d #define DSP_CAI_RATE_ADAPTATION_1200_75 0x0e #define DSP_CAI_RATE_ADAPTATION_75_1200 0x0f #define DSP_CAI_RATE_ADAPTATION_MASK 0x0f #define DSP_CAI_ASYNC_PARITY_ENABLE 0x01 #define DSP_CAI_ASYNC_PARITY_SPACE 0x00 #define DSP_CAI_ASYNC_PARITY_ODD 0x02 #define DSP_CAI_ASYNC_PARITY_EVEN 0x04 #define DSP_CAI_ASYNC_PARITY_MARK 0x06 #define DSP_CAI_ASYNC_PARITY_MASK 0x06 #define DSP_CAI_ASYNC_ONE_STOP_BIT 0x00 #define DSP_CAI_ASYNC_TWO_STOP_BITS 0x20 #define DSP_CAI_ASYNC_CHAR_LENGTH_8 0x00 #define DSP_CAI_ASYNC_CHAR_LENGTH_7 0x40 #define DSP_CAI_ASYNC_CHAR_LENGTH_6 0x80 #define DSP_CAI_ASYNC_CHAR_LENGTH_5 0xc0 #define DSP_CAI_ASYNC_CHAR_LENGTH_MASK 0xc0 #define DSP_CAI_MODEM_LEASED_LINE_MODE 0x01 #define DSP_CAI_MODEM_4_WIRE_OPERATION 0x02 #define DSP_CAI_MODEM_DISABLE_BUSY_DETECT 0x04 #define DSP_CAI_MODEM_DISABLE_CALLING_TONE 0x08 #define DSP_CAI_MODEM_DISABLE_ANSWER_TONE 0x10 #define DSP_CAI_MODEM_ENABLE_DIAL_TONE_DET 0x20 #define DSP_CAI_MODEM_USE_POTS_INTERFACE 0x40 #define DSP_CAI_MODEM_FORCE_RAY_TAYLOR_FAX 0x80 #define DSP_CAI_MODEM_NEGOTIATE_HIGHEST 0x00 #define DSP_CAI_MODEM_NEGOTIATE_DISABLED 0x01 #define DSP_CAI_MODEM_NEGOTIATE_IN_CLASS 0x02 #define DSP_CAI_MODEM_NEGOTIATE_V100 0x03 #define DSP_CAI_MODEM_NEGOTIATE_V8 0x04 #define DSP_CAI_MODEM_NEGOTIATE_V8BIS 0x05 #define DSP_CAI_MODEM_NEGOTIATE_MASK 0x07 #define DSP_CAI_MODEM_GUARD_TONE_NONE 0x00 #define DSP_CAI_MODEM_GUARD_TONE_550HZ 0x40 #define DSP_CAI_MODEM_GUARD_TONE_1800HZ 0x80 #define DSP_CAI_MODEM_GUARD_TONE_MASK 0xc0 #define DSP_CAI_MODEM_DISABLE_RETRAIN 0x01 #define DSP_CAI_MODEM_DISABLE_STEPUPDOWN 0x02 #define DSP_CAI_MODEM_DISABLE_SPLIT_SPEED 0x04 #define DSP_CAI_MODEM_DISABLE_TRELLIS 0x08 #define DSP_CAI_MODEM_ALLOW_RDL_TEST_LOOP 0x10 #define DSP_CAI_MODEM_DISABLE_FLUSH_TIMER 0x40 #define DSP_CAI_MODEM_REVERSE_DIRECTION 0x80 #define DSP_CAI_MODEM_DISABLE_V21 0x01 #define DSP_CAI_MODEM_DISABLE_V23 0x02 #define DSP_CAI_MODEM_DISABLE_V22 0x04 #define DSP_CAI_MODEM_DISABLE_V22BIS 0x08 #define DSP_CAI_MODEM_DISABLE_V32 0x10 #define DSP_CAI_MODEM_DISABLE_V32BIS 0x20 #define DSP_CAI_MODEM_DISABLE_V34 0x40 #define DSP_CAI_MODEM_DISABLE_V90 0x80 #define DSP_CAI_MODEM_DISABLE_BELL103 0x01 #define DSP_CAI_MODEM_DISABLE_BELL212A 0x02 #define DSP_CAI_MODEM_DISABLE_VFC 0x04 #define DSP_CAI_MODEM_DISABLE_K56FLEX 0x08 #define DSP_CAI_MODEM_DISABLE_X2 0x10 #define DSP_CAI_MODEM_ENABLE_V29FDX 0x01 #define DSP_CAI_MODEM_ENABLE_V33 0x02 #define DSP_CAI_MODEM_DISABLE_2400_SYMBOLS 0x01 #define DSP_CAI_MODEM_DISABLE_2743_SYMBOLS 0x02 #define DSP_CAI_MODEM_DISABLE_2800_SYMBOLS 0x04 #define DSP_CAI_MODEM_DISABLE_3000_SYMBOLS 0x08 #define DSP_CAI_MODEM_DISABLE_3200_SYMBOLS 0x10 #define DSP_CAI_MODEM_DISABLE_3429_SYMBOLS 0x20 #define DSP_CAI_MODEM_DISABLE_TX_REDUCTION 0x01 #define DSP_CAI_MODEM_DISABLE_PRECODING 0x02 #define DSP_CAI_MODEM_DISABLE_PREEMPHASIS 0x04 #define DSP_CAI_MODEM_DISABLE_SHAPING 0x08 #define DSP_CAI_MODEM_DISABLE_NONLINEAR_EN 0x10 #define DSP_CAI_MODEM_SPEAKER_OFF 0x00 #define DSP_CAI_MODEM_SPEAKER_DURING_TRAIN 0x01 #define DSP_CAI_MODEM_SPEAKER_TIL_CONNECT 0x02 #define DSP_CAI_MODEM_SPEAKER_ALWAYS_ON 0x03 #define DSP_CAI_MODEM_SPEAKER_CONTROL_MASK 0x03 #define DSP_CAI_MODEM_SPEAKER_VOLUME_MIN 0x00 #define DSP_CAI_MODEM_SPEAKER_VOLUME_LOW 0x04 #define DSP_CAI_MODEM_SPEAKER_VOLUME_HIGH 0x08 #define DSP_CAI_MODEM_SPEAKER_VOLUME_MAX 0x0c #define DSP_CAI_MODEM_SPEAKER_VOLUME_MASK 0x0c /* ========================================================== DCD/CTS State ========================================================== */ #define MDM_WANT_CONNECT_B3_ACTIVE_I 0x01 #define MDM_NCPI_VALID 0x02 #define MDM_NCPI_CTS_ON_RECEIVED 0x04 #define MDM_NCPI_DCD_ON_RECEIVED 0x08 /* ========================================================== CAPI NCPI Constants ========================================================== */ #define MDM_NCPI_ECM_V42 0x0001 #define MDM_NCPI_ECM_MNP 0x0002 #define MDM_NCPI_TRANSPARENT 0x0004 #define MDM_NCPI_COMPRESSED 0x0010 /* ========================================================== CAPI B2 Config Constants ========================================================== */ #define MDM_B2_DISABLE_V42bis 0x0001 #define MDM_B2_DISABLE_MNP 0x0002 #define MDM_B2_DISABLE_TRANS 0x0004 #define MDM_B2_DISABLE_V42 0x0008 #define MDM_B2_DISABLE_COMP 0x0010 /* ========================================================== CAPI B1 Config Constants ========================================================== */ #define MDM_CAPI_DISABLE_RETRAIN 0x0001 #define MDM_CAPI_DISABLE_RING_TONE 0x0002 #define MDM_CAPI_GUARD_1800 0x0004 #define MDM_CAPI_GUARD_550 0x0008 #define MDM_CAPI_NEG_V8 0x0003 #define MDM_CAPI_NEG_V100 0x0002 #define MDM_CAPI_NEG_MOD_CLASS 0x0001 #define MDM_CAPI_NEG_DISABLED 0x0000 #endif