| |
| /* |
| * |
| 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 |