00001
00056 #ifndef IXADSL_H
00057 #define IXADSL_H
00058
00059 #include "IxTypes.h"
00060
00070 typedef enum
00071 {
00072 IX_ADSL_STATUS_SUCCESS = IX_SUCCESS,
00073 IX_ADSL_STATUS_FAIL = IX_FAIL,
00074 IX_ADSL_STATUS_UNSUPPORTED_MODE,
00078 IX_ADSL_STATUS_ALREADY_DOWN
00080 } IxAdslStatus;
00081
00091 typedef enum
00092 {
00093 IX_ADSL_LINE_STATE_UP_DUAL_LATENCY = 0,
00099 IX_ADSL_LINE_STATE_WAIT_FOR_ACTIVATING,
00103 IX_ADSL_LINE_STATE_ACTIVATING,
00107 IX_ADSL_LINE_STATE_DOWN,
00108 IX_ADSL_LINE_STATE_UP_FASTCHANNEL,
00113 IX_ADSL_LINE_STATE_UP_INTERLEAVECHANNEL,
00118 IX_ADSL_LINE_STATE_INVALID
00122 } IxAdslLineState;
00123
00132 typedef enum
00133 {
00134 IX_ADSL_AUTOSELECT = 0,
00139 IX_ADSL_GLITE = 1,
00140 IX_ADSL_DMT = 2,
00141 IX_ADSL_ANSI = 3,
00142 IX_ADSL_LOOPBACK = 4,
00143 IX_ADSL_INVALID_MODE = 5
00147 } IxAdslLineType;
00148
00161 typedef enum
00162 {
00163 IX_ADSL_PHY_CPE = 0,
00164 #if IX_ADSL_CO_ENABLE
00165 IX_ADSL_PHY_CO_FAST,
00166 IX_ADSL_PHY_CO_INTERLEAVED,
00167 #endif
00168 IX_ADSL_PHY_INVALID
00169 } IxAdslPhyType;
00170
00178 typedef void (*IxAdslStateChangeCallback)(
00179 UINT32 lineNum,
00180 IxAdslLineState lineState);
00181
00182
00230 PUBLIC IxAdslStatus
00231 ixAdslLineOpen (
00232 UINT32 lineNum,
00233 IxAdslLineType lineType,
00234 IxAdslPhyType phyType);
00235
00236
00265 PUBLIC IxAdslStatus
00266 ixAdslLineClose (UINT32 lineNum);
00267
00306 PUBLIC IxAdslStatus
00307 ixAdslLineStateChangeCallbackRegister (
00308 UINT32 lineNum,
00309 IxAdslStateChangeCallback lineChangeCallbackFn);
00310
00344 PUBLIC IxAdslLineState
00345 ixAdslLineStateGet (UINT32 lineNum);
00346
00377 PUBLIC UINT32
00378 ixAdslLineRateUpstreamGet (UINT32 lineNum);
00379
00409 PUBLIC UINT32
00410 ixAdslLineRateDownstreamGet (UINT32 lineNum);
00411
00440 PUBLIC IxAdslStatus
00441 ixAdslDyingGaspEnable (UINT32 lineNum);
00442
00443
00504 PUBLIC IxAdslStatus
00505 ixAdslVendorCodeSet (
00506 UINT32 lineNum,
00507 UINT8 ixAdslItuVendoridCountrycode,
00508 UINT8 ixAdslItuVendoridVendorcode1,
00509 UINT8 ixAdslItuVendoridVendorcode2,
00510 UINT8 ixAdslItuVendoridVendorcode3,
00511 UINT8 ixAdslItuVendoridVendorcode4,
00512 UINT8 ixAdslItuVendoridVendorspecific1,
00513 UINT8 ixAdslItuVendoridVendorspecific2);
00514
00515
00562 PUBLIC void
00563 ixAdslShow (UINT32 lineNum);
00587 PUBLIC void
00588 ixAdslMemoryUnmap(void);
00589 #endif
00590