1 /******************************************************************************
3 ** FILE NAME : ifxmips_mei_app_ioctl.h
9 ** DESCRIPTION : MEI Driver
10 ** COPYRIGHT : Copyright (c) 2006
11 ** Infineon Technologies AG
12 ** Am Campeon 1-12, 85579 Neubiberg, Germany
14 ** This program is free software; you can redistribute it and/or modify
15 ** it under the terms of the GNU General Public License as published by
16 ** the Free Software Foundation; either version 2 of the License, or
17 ** (at your option) any later version.
20 ** $Version $Date $Author $Comment
21 *******************************************************************************/
22 #ifndef __IFXMIPS_MEI_APP_IOCTL_H
23 #define __IFXMIPS_MEI_APP_IOCTL_H
26 #include "ifxmips_mei_ioctl.h"
30 //#define INTERFACE_NAME <define the interface>
32 /* adslLineTable constants */
33 #define GET_ADSL_LINE_CODE 1
35 /* adslAtucPhysTable constants */
36 #define GET_ADSL_ATUC_PHY 4
38 /* adslAturPhysTable constants */
39 #define GET_ADSL_ATUR_PHY 10
41 /* adslAtucChanTable constants */
42 #define GET_ADSL_ATUC_CHAN_INFO 15
44 /* adslAturChanTable constants */
45 #define GET_ADSL_ATUR_CHAN_INFO 18
47 /* adslAtucPerfDataTable constants */
48 #define GET_ADSL_ATUC_PERF_DATA 21
50 /* adslAturPerfDataTable constants */
51 #define GET_ADSL_ATUR_PERF_DATA 40
53 /* adslAtucIntervalTable constants */
54 #define GET_ADSL_ATUC_INTVL_INFO 60
56 /* adslAturIntervalTable constants */
57 #define GET_ADSL_ATUR_INTVL_INFO 65
59 /* adslAtucChanPerfDataTable constants */
60 #define GET_ADSL_ATUC_CHAN_PERF_DATA 70
62 /* adslAturChanPerfDataTable constants */
63 #define GET_ADSL_ATUR_CHAN_PERF_DATA 90
65 /* adslAtucChanIntervalTable constants */
66 #define GET_ADSL_ATUC_CHAN_INTVL_INFO 110
68 /* adslAturChanIntervalTable constants */
69 #define GET_ADSL_ATUR_CHAN_INTVL_INFO 115
71 /* adslLineAlarmConfProfileTable constants */
72 #define GET_ADSL_ALRM_CONF_PROF 120
73 #define SET_ADSL_ALRM_CONF_PROF 121
75 /* adslAturTrap constants */
76 #define ADSL_ATUR_TRAPS 135
78 ////////////////// RFC-3440 //////////////
80 #ifdef IFXMIPS_MEI_MIB_RFC3440
81 /* adslLineExtTable */
82 #define GET_ADSL_ATUC_LINE_EXT 201
83 #define SET_ADSL_ATUC_LINE_EXT 203
85 /* adslAtucPerfDateExtTable */
86 #define GET_ADSL_ATUC_PERF_DATA_EXT 205
88 /* adslAtucIntervalExtTable */
89 #define GET_ADSL_ATUC_INTVL_EXT_INFO 221
91 /* adslAturPerfDataExtTable */
92 #define GET_ADSL_ATUR_PERF_DATA_EXT 225
94 /* adslAturIntervalExtTable */
95 #define GET_ADSL_ATUR_INTVL_EXT_INFO 233
97 /* adslAlarmConfProfileExtTable */
98 #define GET_ADSL_ALRM_CONF_PROF_EXT 235
99 #define SET_ADSL_ALRM_CONF_PROF_EXT 236
101 /* adslAturExtTrap */
102 #define ADSL_ATUR_EXT_TRAPS 240
106 /* The following constants are added to support the WEB related ADSL Statistics */
108 /* adslLineStatus constants */
109 #define GET_ADSL_LINE_STATUS 245
111 /* adslLineRate constants */
112 #define GET_ADSL_LINE_RATE 250
114 /* adslLineInformation constants */
115 #define GET_ADSL_LINE_INFO 255
117 /* adslNearEndPerformanceStats constants */
118 #define GET_ADSL_NEAREND_STATS 270
120 /* adslFarEndPerformanceStats constants */
121 #define GET_ADSL_FAREND_STATS 290
123 /* Sub-carrier related parameters */
124 #define GET_ADSL_LINE_INIT_STATS 150
125 #define GET_ADSL_POWER_SPECTRAL_DENSITY 151
127 #define IFXMIPS_MIB_LO_ATUC 295
128 #define IFXMIPS_MIB_LO_ATUR 296
130 #define GET_ADSL_ATUC_SUBCARRIER_STATS 297
131 #define GET_ADSL_ATUR_SUBCARRIER_STATS 298
135 ///////////////////////////////////////////////////////////
136 // makeCMV(Opcode, Group, Address, Index, Size, Data)
138 /* adslLineCode Flags */
139 #define LINE_CODE_FLAG 0x1 /* BIT 0th position */
141 /* adslAtucPhysTable Flags */
142 #define ATUC_PHY_SER_NUM_FLAG 0x1 /* BIT 0th position */
143 #define ATUC_PHY_SER_NUM_FLAG_MAKECMV1 makeCMV(H2D_CMV_READ, INFO, 57, 0, 12, data,TxMessage)
144 #define ATUC_PHY_SER_NUM_FLAG_MAKECMV2 makeCMV(H2D_CMV_READ, INFO, 57, 12, 4, data,TxMessage)
146 #define ATUC_PHY_VENDOR_ID_FLAG 0x2 /* BIT 1 */
147 #define ATUC_PHY_VENDOR_ID_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 64, 0, 4, data,TxMessage)
149 #define ATUC_PHY_VER_NUM_FLAG 0x4 /* BIT 2 */
150 #define ATUC_PHY_VER_NUM_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 58, 0, 8, data,TxMessage)
152 #define ATUC_CURR_STAT_FLAG 0x8 /* BIT 3 */
154 #define ATUC_CURR_OUT_PWR_FLAG 0x10 /* BIT 4 */
155 #define ATUC_CURR_OUT_PWR_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 68, 5, 1, data,TxMessage)
157 #define ATUC_CURR_ATTR_FLAG 0x20 /* BIT 5 */
158 #define ATUC_CURR_ATTR_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 69, 0, 2, data,TxMessage)
161 /* adslAturPhysTable Flags */
162 #define ATUR_PHY_SER_NUM_FLAG 0x1 /* BIT 0th position */
163 #define ATUR_PHY_SER_NUM_FLAG_MAKECMV1 makeCMV(H2D_CMV_READ, INFO, 62, 0, 12, data,TxMessage)
164 #define ATUR_PHY_SER_NUM_FLAG_MAKECMV2 makeCMV(H2D_CMV_READ, INFO, 62, 12, 4, data,TxMessage)
166 #define ATUR_PHY_VENDOR_ID_FLAG 0x2 /* BIT 1 */
167 #define ATUR_PHY_VENDOR_ID_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 65, 0, 4, data,TxMessage)
169 #define ATUR_PHY_VER_NUM_FLAG 0x4 /* BIT 2 */
170 #define ATUR_PHY_VER_NUM_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 61, 0, 8, data,TxMessage)
172 #define ATUR_SNRMGN_FLAG 0x8
173 #if 0 /* [ Ritesh. Use PLAM 45 0 for 0.1dB resolution rather than INFO 68 3 */
174 #define ATUR_SNRMGN_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 68, 4, 1, data,TxMessage)
176 #define ATUR_SNRMGN_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, PLAM_SNRMargin_0_1db, 0, 1, data, TxMessage)
179 #define ATUR_ATTN_FLAG 0x10
180 #define ATUR_ATTN_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 68, 2, 1, data,TxMessage)
182 #define ATUR_CURR_STAT_FLAG 0x20 /* BIT 3 */
184 #define ATUR_CURR_OUT_PWR_FLAG 0x40 /* BIT 4 */
185 #define ATUR_CURR_OUT_PWR_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 69, 5, 1, data,TxMessage)
187 #define ATUR_CURR_ATTR_FLAG 0x80 /* BIT 5 */
188 #define ATUR_CURR_ATTR_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 68, 0, 2, data,TxMessage)
190 /* adslAtucChanTable Flags */
191 #define ATUC_CHAN_INTLV_DELAY_FLAG 0x1 /* BIT 0th position */
192 //KD #define ATUC_CHAN_INTLV_DELAY_FLAG_MAKECMV makeCMV(H2D_CMV_READ, RATE, 3, 1, 1, data,TxMessage)
193 #define ATUC_CHAN_INTLV_DELAY_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 92, 1, 1, data,TxMessage)
195 #define ATUC_CHAN_CURR_TX_RATE_FLAG 0x2 /* BIT 1 */
196 #define ATUC_CHAN_CURR_TX_RATE_FLAG_MAKECMV makeCMV(H2D_CMV_READ, RATE, 1, 0, 2, data,TxMessage)
198 #define ATUC_CHAN_PREV_TX_RATE_FLAG 0x4 /* BIT 2 */
200 /* adslAturChanTable Flags */
201 #define ATUR_CHAN_INTLV_DELAY_FLAG 0x1 /* BIT 0th position */
202 //KD #define ATUR_CHAN_INTLV_DELAY_FLAG_MAKECMV makeCMV(H2D_CMV_READ, RATE, 2, 1, 1, data,TxMessage)
203 #define ATUR_CHAN_INTLV_DELAY_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 93, 1, 1, data,TxMessage)
205 #define ATUR_CHAN_CURR_TX_RATE_FLAG 0x2 /* BIT 1 */
206 #define ATUR_CHAN_CURR_TX_RATE_FLAG_MAKECMV makeCMV(H2D_CMV_READ, RATE, 0, 0, 2, data,TxMessage)
208 #define ATUR_CHAN_PREV_TX_RATE_FLAG 0x4 /* BIT 2 */
210 #define ATUR_CHAN_CRC_BLK_LEN_FLAG 0x8 /* BIT 3 */
212 /* adslAtucPerfDataTable Flags */
213 #define ATUC_PERF_LOFS_FLAG 0x1 /* BIT 0th position */
214 #define ATUC_PERF_LOSS_FLAG 0x2 /* BIT 1 */
215 #define ATUC_PERF_LO_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 0, 0, 1, data,TxMessage)
216 #define ATUC_PERF_ESS_FLAG 0x4 /* BIT 2 */
217 #define ATUC_PERF_ESS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 7, 0, 1, data,TxMessage)
218 #define ATUC_PERF_INITS_FLAG 0x8 /* BIT 3 */
219 #define ATUC_PERF_VALID_INTVLS_FLAG 0x10 /* BIT 4 */
220 #define ATUC_PERF_INVALID_INTVLS_FLAG 0x20 /* BIT 5 */
221 #define ATUC_PERF_CURR_15MIN_TIME_ELAPSED_FLAG 0x40 /* BIT 6 */
222 #define ATUC_PERF_CURR_15MIN_LOFS_FLAG 0x80 /* BIT 7 */
223 #define ATUC_PERF_CURR_15MIN_LOSS_FLAG 0x100 /* BIT 8 */
224 #define ATUC_PERF_CURR_15MIN_ESS_FLAG 0x200 /* BIT 9 */
225 #define ATUC_PERF_CURR_15MIN_INIT_FLAG 0x400 /* BIT 10 */
226 #define ATUC_PERF_CURR_1DAY_TIME_ELAPSED_FLAG 0x800 /* BIT 11 */
227 #define ATUC_PERF_CURR_1DAY_LOFS_FLAG 0x1000 /* BIT 12 */
228 #define ATUC_PERF_CURR_1DAY_LOSS_FLAG 0x2000 /* BIT 13 */
229 #define ATUC_PERF_CURR_1DAY_ESS_FLAG 0x4000 /* BIT 14 */
230 #define ATUC_PERF_CURR_1DAY_INIT_FLAG 0x8000 /* BIT 15 */
231 #define ATUC_PERF_PREV_1DAY_MON_SEC_FLAG 0x10000 /* BIT 16 */
232 #define ATUC_PERF_PREV_1DAY_LOFS_FLAG 0x20000 /* BIT 17 */
233 #define ATUC_PERF_PREV_1DAY_LOSS_FLAG 0x40000 /* BIT 18 */
234 #define ATUC_PERF_PREV_1DAY_ESS_FLAG 0x80000 /* BIT 19 */
235 #define ATUC_PERF_PREV_1DAY_INITS_FLAG 0x100000 /* BIT 20 */
237 /* adslAturPerfDataTable Flags */
238 #define ATUR_PERF_LOFS_FLAG 0x1 /* BIT 0th position */
239 #define ATUR_PERF_LOSS_FLAG 0x2 /* BIT 1 */
240 #define ATUR_PERF_LPR_FLAG 0x4 /* BIT 2 */
241 #define ATUR_PERF_LO_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 1, 0, 1, data,TxMessage)
242 #define ATUR_PERF_ESS_FLAG 0x8 /* BIT 3 */
243 #define ATUR_PERF_ESS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 33, 0, 1, data,TxMessage)
244 #define ATUR_PERF_VALID_INTVLS_FLAG 0x10 /* BIT 4 */
245 #define ATUR_PERF_INVALID_INTVLS_FLAG 0x20 /* BIT 5 */
246 #define ATUR_PERF_CURR_15MIN_TIME_ELAPSED_FLAG 0x40 /* BIT 6 */
247 #define ATUR_PERF_CURR_15MIN_LOFS_FLAG 0x80 /* BIT 7 */
248 #define ATUR_PERF_CURR_15MIN_LOSS_FLAG 0x100 /* BIT 8 */
249 #define ATUR_PERF_CURR_15MIN_LPR_FLAG 0x200 /* BIT 9 */
250 #define ATUR_PERF_CURR_15MIN_ESS_FLAG 0x400 /* BIT 10 */
251 #define ATUR_PERF_CURR_1DAY_TIME_ELAPSED_FLAG 0x800 /* BIT 11 */
252 #define ATUR_PERF_CURR_1DAY_LOFS_FLAG 0x1000 /* BIT 12 */
253 #define ATUR_PERF_CURR_1DAY_LOSS_FLAG 0x2000 /* BIT 13 */
254 #define ATUR_PERF_CURR_1DAY_LPR_FLAG 0x4000 /* BIT 14 */
255 #define ATUR_PERF_CURR_1DAY_ESS_FLAG 0x8000 /* BIT 15 */
256 #define ATUR_PERF_PREV_1DAY_MON_SEC_FLAG 0x10000 /* BIT 16 */
257 #define ATUR_PERF_PREV_1DAY_LOFS_FLAG 0x20000 /* BIT 17 */
258 #define ATUR_PERF_PREV_1DAY_LOSS_FLAG 0x40000 /* BIT 18 */
259 #define ATUR_PERF_PREV_1DAY_LPR_FLAG 0x80000 /* BIT 19 */
260 #define ATUR_PERF_PREV_1DAY_ESS_FLAG 0x100000 /* BIT 20 */
262 /* adslAtucIntervalTable Flags */
263 #define ATUC_INTVL_LOF_FLAG 0x1 /* BIT 0th position */
264 #define ATUC_INTVL_LOS_FLAG 0x2 /* BIT 1 */
265 #define ATUC_INTVL_ESS_FLAG 0x4 /* BIT 2 */
266 #define ATUC_INTVL_INIT_FLAG 0x8 /* BIT 3 */
267 #define ATUC_INTVL_VALID_DATA_FLAG 0x10 /* BIT 4 */
269 /* adslAturIntervalTable Flags */
270 #define ATUR_INTVL_LOF_FLAG 0x1 /* BIT 0th position */
271 #define ATUR_INTVL_LOS_FLAG 0x2 /* BIT 1 */
272 #define ATUR_INTVL_LPR_FLAG 0x4 /* BIT 2 */
273 #define ATUR_INTVL_ESS_FLAG 0x8 /* BIT 3 */
274 #define ATUR_INTVL_VALID_DATA_FLAG 0x10 /* BIT 4 */
276 /* adslAtucChanPerfDataTable Flags */
277 #define ATUC_CHAN_RECV_BLK_FLAG 0x01 /* BIT 0th position */
278 #define ATUC_CHAN_TX_BLK_FLAG 0x02 /* BIT 1 */
279 #define ATUC_CHAN_CORR_BLK_FLAG 0x04 /* BIT 2 */
280 #define ATUC_CHAN_UNCORR_BLK_FLAG 0x08 /* BIT 3 */
281 #define ATUC_CHAN_PERF_VALID_INTVL_FLAG 0x10 /* BIT 4 */
282 #define ATUC_CHAN_PERF_INVALID_INTVL_FLAG 0x20 /* BIT 5 */
283 #define ATUC_CHAN_PERF_CURR_15MIN_TIME_ELAPSED_FLAG 0x40 /* BIT 6 */
284 #define ATUC_CHAN_PERF_CURR_15MIN_RECV_BLK_FLAG 0x80 /* BIT 7 */
285 #define ATUC_CHAN_PERF_CURR_15MIN_TX_BLK_FLAG 0x100 /* BIT 8 */
286 #define ATUC_CHAN_PERF_CURR_15MIN_CORR_BLK_FLAG 0x200 /* BIT 9 */
287 #define ATUC_CHAN_PERF_CURR_15MIN_UNCORR_BLK_FLAG 0x400 /* BIT 10 */
288 #define ATUC_CHAN_PERF_CURR_1DAY_TIME_ELAPSED_FLAG 0x800 /* BIT 11*/
289 #define ATUC_CHAN_PERF_CURR_1DAY_RECV_BLK_FLAG 0x1000 /* BIT 12 */
290 #define ATUC_CHAN_PERF_CURR_1DAY_TX_BLK_FLAG 0x2000 /* BIT 13 */
291 #define ATUC_CHAN_PERF_CURR_1DAY_CORR_BLK_FLAG 0x4000 /* BIT 14 */
292 #define ATUC_CHAN_PERF_CURR_1DAY_UNCORR_BLK_FLAG 0x8000 /* BIT 15 */
293 #define ATUC_CHAN_PERF_PREV_1DAY_MONI_SEC_FLAG 0x10000 /* BIT 16 */
294 #define ATUC_CHAN_PERF_PREV_1DAY_RECV_BLK_FLAG 0x20000 /* BIT 17 */
295 #define ATUC_CHAN_PERF_PREV_1DAY_TX_BLK_FLAG 0x40000 /* BIT 18 */
296 #define ATUC_CHAN_PERF_PREV_1DAY_CORR_BLK_FLAG 0x80000 /* BIT 19 */
297 #define ATUC_CHAN_PERF_PREV_1DAY_UNCORR_BLK_FLAG 0x100000 /* BIT 20 */
300 /* adslAturChanPerfDataTable Flags */
301 #define ATUR_CHAN_RECV_BLK_FLAG 0x01 /* BIT 0th position */
302 #define ATUR_CHAN_RECV_BLK_FLAG_MAKECMV_LSW makeCMV(H2D_CMV_READ, PLAM, 20, 0, 1, data,TxMessage)
303 #define ATUR_CHAN_RECV_BLK_FLAG_MAKECMV_MSW makeCMV(H2D_CMV_READ, PLAM, 21, 0, 1, data,TxMessage)
304 #define ATUR_CHAN_TX_BLK_FLAG 0x02 /* BIT 1 */
305 #define ATUR_CHAN_TX_BLK_FLAG_MAKECMV_LSW makeCMV(H2D_CMV_READ, PLAM, 20, 0, 1, data,TxMessage)
306 #define ATUR_CHAN_TX_BLK_FLAG_MAKECMV_MSW makeCMV(H2D_CMV_READ, PLAM, 21, 0, 1, data,TxMessage)
307 #define ATUR_CHAN_CORR_BLK_FLAG 0x04 /* BIT 2 */
308 #define ATUR_CHAN_CORR_BLK_FLAG_MAKECMV_INTL makeCMV(H2D_CMV_READ, PLAM, 3, 0, 1, data,TxMessage)
309 #define ATUR_CHAN_CORR_BLK_FLAG_MAKECMV_FAST makeCMV(H2D_CMV_READ, PLAM, 3, 1, 1, data,TxMessage)
310 #define ATUR_CHAN_UNCORR_BLK_FLAG 0x08 /* BIT 3 */
311 #define ATUR_CHAN_UNCORR_BLK_FLAG_MAKECMV_INTL makeCMV(H2D_CMV_READ, PLAM, 2, 0, 1, data,TxMessage)
312 #define ATUR_CHAN_UNCORR_BLK_FLAG_MAKECMV_FAST makeCMV(H2D_CMV_READ, PLAM, 2, 1, 1, data,TxMessage)
313 #define ATUR_CHAN_PERF_VALID_INTVL_FLAG 0x10 /* BIT 4 */
314 #define ATUR_CHAN_PERF_INVALID_INTVL_FLAG 0x20 /* BIT 5 */
315 #define ATUR_CHAN_PERF_CURR_15MIN_TIME_ELAPSED_FLAG 0x40 /* BIT 6 */
316 #define ATUR_CHAN_PERF_CURR_15MIN_RECV_BLK_FLAG 0x80 /* BIT 7 */
317 #define ATUR_CHAN_PERF_CURR_15MIN_TX_BLK_FLAG 0x100 /* BIT 8 */
318 #define ATUR_CHAN_PERF_CURR_15MIN_CORR_BLK_FLAG 0x200 /* BIT 9 */
319 #define ATUR_CHAN_PERF_CURR_15MIN_UNCORR_BLK_FLAG 0x400 /* BIT 10 */
320 #define ATUR_CHAN_PERF_CURR_1DAY_TIME_ELAPSED_FLAG 0x800 /* BIT 11 */
321 #define ATUR_CHAN_PERF_CURR_1DAY_RECV_BLK_FLAG 0x1000 /* BIT 12 */
322 #define ATUR_CHAN_PERF_CURR_1DAY_TX_BLK_FLAG 0x2000 /* BIT 13 */
323 #define ATUR_CHAN_PERF_CURR_1DAY_CORR_BLK_FLAG 0x4000 /* BIT 14 */
324 #define ATUR_CHAN_PERF_CURR_1DAY_UNCORR_BLK_FLAG 0x8000 /* BIT 15 */
325 #define ATUR_CHAN_PERF_PREV_1DAY_MONI_SEC_FLAG 0x10000 /* BIT 16 */
326 #define ATUR_CHAN_PERF_PREV_1DAY_RECV_BLK_FLAG 0x20000 /* BIT 17 */
327 #define ATUR_CHAN_PERF_PREV_1DAY_TRANS_BLK_FLAG 0x40000 /* BIT 18 */
328 #define ATUR_CHAN_PERF_PREV_1DAY_CORR_BLK_FLAG 0x80000 /* BIT 19 */
329 #define ATUR_CHAN_PERF_PREV_1DAY_UNCORR_BLK_FLAG 0x100000 /* BIT 20 */
331 /* adslAtucChanIntervalTable Flags */
332 #define ATUC_CHAN_INTVL_NUM_FLAG 0x1 /* BIT 0th position */
333 #define ATUC_CHAN_INTVL_RECV_BLK_FLAG 0x2 /* BIT 1 */
334 #define ATUC_CHAN_INTVL_TX_BLK_FLAG 0x4 /* BIT 2 */
335 #define ATUC_CHAN_INTVL_CORR_BLK_FLAG 0x8 /* BIT 3 */
336 #define ATUC_CHAN_INTVL_UNCORR_BLK_FLAG 0x10 /* BIT 4 */
337 #define ATUC_CHAN_INTVL_VALID_DATA_FLAG 0x20 /* BIT 5 */
339 /* adslAturChanIntervalTable Flags */
340 #define ATUR_CHAN_INTVL_NUM_FLAG 0x1 /* BIT 0th Position */
341 #define ATUR_CHAN_INTVL_RECV_BLK_FLAG 0x2 /* BIT 1 */
342 #define ATUR_CHAN_INTVL_TX_BLK_FLAG 0x4 /* BIT 2 */
343 #define ATUR_CHAN_INTVL_CORR_BLK_FLAG 0x8 /* BIT 3 */
344 #define ATUR_CHAN_INTVL_UNCORR_BLK_FLAG 0x10 /* BIT 4 */
345 #define ATUR_CHAN_INTVL_VALID_DATA_FLAG 0x20 /* BIT 5 */
347 /* adslLineAlarmConfProfileTable Flags */
348 #define ATUC_THRESH_15MIN_LOFS_FLAG 0x01 /* BIT 0th position */
349 #define ATUC_THRESH_15MIN_LOSS_FLAG 0x02 /* BIT 1 */
350 #define ATUC_THRESH_15MIN_ESS_FLAG 0x04 /* BIT 2 */
351 #define ATUC_THRESH_FAST_RATEUP_FLAG 0x08 /* BIT 3 */
352 #define ATUC_THRESH_INTERLEAVE_RATEUP_FLAG 0x10 /* BIT 4 */
353 #define ATUC_THRESH_FAST_RATEDOWN_FLAG 0x20 /* BIT 5 */
354 #define ATUC_THRESH_INTERLEAVE_RATEDOWN_FLAG 0x40 /* BIT 6 */
355 #define ATUC_INIT_FAILURE_TRAP_ENABLE_FLAG 0x80 /* BIT 7 */
356 #define ATUR_THRESH_15MIN_LOFS_FLAG 0x100 /* BIT 8 */
357 #define ATUR_THRESH_15MIN_LOSS_FLAG 0x200 /* BIT 9 */
358 #define ATUR_THRESH_15MIN_LPRS_FLAG 0x400 /* BIT 10 */
359 #define ATUR_THRESH_15MIN_ESS_FLAG 0x800 /* BIT 11 */
360 #define ATUR_THRESH_FAST_RATEUP_FLAG 0x1000 /* BIT 12 */
361 #define ATUR_THRESH_INTERLEAVE_RATEUP_FLAG 0x2000 /* BIT 13 */
362 #define ATUR_THRESH_FAST_RATEDOWN_FLAG 0x4000 /* BIT 14 */
363 #define ATUR_THRESH_INTERLEAVE_RATEDOWN_FLAG 0x8000 /* BIT 15 */
364 #define LINE_ALARM_CONF_PROFILE_ROWSTATUS_FLAG 0x10000 /* BIT 16 */
367 /* adslAturTraps Flags */
368 #define ATUC_PERF_LOFS_THRESH_FLAG 0x1 /* BIT 0th position */
369 #define ATUC_PERF_LOSS_THRESH_FLAG 0x2 /* BIT 1 */
370 #define ATUC_PERF_ESS_THRESH_FLAG 0x4 /* BIT 2 */
371 #define ATUC_RATE_CHANGE_FLAG 0x8 /* BIT 3 */
372 #define ATUR_PERF_LOFS_THRESH_FLAG 0x10 /* BIT 4 */
373 #define ATUR_PERF_LOSS_THRESH_FLAG 0x20 /* BIT 5 */
374 #define ATUR_PERF_LPRS_THRESH_FLAG 0x40 /* BIT 6 */
375 #define ATUR_PERF_ESS_THRESH_FLAG 0x80 /* BIT 7 */
376 #define ATUR_RATE_CHANGE_FLAG 0x100 /* BIT 8 */
378 //RFC- 3440 FLAG DEFINITIONS
380 #ifdef IFXMIPS_MEI_MIB_RFC3440
381 /* adslLineExtTable flags */
382 #define ATUC_LINE_TRANS_CAP_FLAG 0x1 /* BIT 0th position */
383 #define ATUC_LINE_TRANS_CAP_FLAG_MAKECMV makeCMV(H2D_CMV_READ,INFO, 67, 0, 1, data,TxMessage)
384 #define ATUC_LINE_TRANS_CONFIG_FLAG 0x2 /* BIT 1 */
385 #define ATUC_LINE_TRANS_CONFIG_FLAG_MAKECMV makeCMV(H2D_CMV_READ,INFO, 67, 0, 1, data,TxMessage)
386 #define ATUC_LINE_TRANS_CONFIG_FLAG_MAKECMV_WR makeCMV(H2D_CMV_WRITE,INFO, 67, 0, 1, data,TxMessage)
387 #define ATUC_LINE_TRANS_ACTUAL_FLAG 0x4 /* BIT 2 */
388 #define ATUC_LINE_TRANS_ACTUAL_FLAG_MAKECMV makeCMV(H2D_CMV_READ,STAT, 1, 0, 1, data,TxMessage)
389 #define LINE_GLITE_POWER_STATE_FLAG 0x8 /* BIT 3 */
390 #define LINE_GLITE_POWER_STATE_FLAG_MAKECMV makeCMV(H2D_CMV_READ,STAT, 0, 0, 1, data,TxMessage)
392 /* adslAtucPerfDataExtTable flags */
393 #define ATUC_PERF_STAT_FASTR_FLAG 0x1 /* BIT 0th position */
394 #define ATUC_PERF_STAT_FASTR_FLAG_MAKECMV makeCMV(H2D_CMV_READ, STAT, 0, 0, 1, data, TxMessage)
395 #define ATUC_PERF_STAT_FAILED_FASTR_FLAG 0x2 /* BIT 1 */
396 #define ATUC_PERF_STAT_FAILED_FASTR_FLAG_MAKECMV makeCMV(H2D_CMV_READ, STAT, 0, 0, 1, data, TxMessage)
397 #define ATUC_PERF_STAT_SESL_FLAG 0X4 /* BIT 2 */
398 #define ATUC_PERF_STAT_SESL_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 8, 0, 1, data, TxMessage)
399 #define ATUC_PERF_STAT_UASL_FLAG 0X8 /* BIT 3 */
400 #define ATUC_PERF_STAT_UASL_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 10, 0, 1, data, TxMessage)
401 #define ATUC_PERF_CURR_15MIN_FASTR_FLAG 0X10 /* BIT 4 */
402 #define ATUC_PERF_CURR_15MIN_FAILED_FASTR_FLAG 0X20 /* BIT 5 */
403 #define ATUC_PERF_CURR_15MIN_SESL_FLAG 0X40 /* BIT 6 */
404 #define ATUC_PERF_CURR_15MIN_UASL_FLAG 0X80 /* BIT 7 */
405 #define ATUC_PERF_CURR_1DAY_FASTR_FLAG 0X100 /* BIT 8 */
406 #define ATUC_PERF_CURR_1DAY_FAILED_FASTR_FLAG 0X200 /* BIT 9 */
407 #define ATUC_PERF_CURR_1DAY_SESL_FLAG 0X400 /* BIT 10 */
408 #define ATUC_PERF_CURR_1DAY_UASL_FLAG 0X800 /* BIT 11 */
409 #define ATUC_PERF_PREV_1DAY_FASTR_FLAG 0X1000 /* BIT 12 */
410 #define ATUC_PERF_PREV_1DAY_FAILED_FASTR_FLAG 0X2000 /* BIT 13 */
411 #define ATUC_PERF_PREV_1DAY_SESL_FLAG 0X4000 /* BIT 14 */
412 #define ATUC_PERF_PREV_1DAY_UASL_FLAG 0X8000 /* BIT 15 */
414 /* adslAturPerfDataExtTable */
415 #define ATUR_PERF_STAT_SESL_FLAG 0X1 /* BIT 0th position */
416 #define ATUR_PERF_STAT_SESL_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 34, 0, 1, data, TxMessage)
417 #define ATUR_PERF_STAT_UASL_FLAG 0X2 /* BIT 1 */
418 #define ATUR_PERF_STAT_UASL_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 36, 0, 1, data, TxMessage)
419 #define ATUR_PERF_CURR_15MIN_SESL_FLAG 0X4 /* BIT 2 */
420 #define ATUR_PERF_CURR_15MIN_UASL_FLAG 0X8 /* BIT 3 */
421 #define ATUR_PERF_CURR_1DAY_SESL_FLAG 0X10 /* BIT 4 */
422 #define ATUR_PERF_CURR_1DAY_UASL_FLAG 0X20 /* BIT 5 */
423 #define ATUR_PERF_PREV_1DAY_SESL_FLAG 0X40 /* BIT 6 */
424 #define ATUR_PERF_PREV_1DAY_UASL_FLAG 0X80 /* BIT 7 */
426 /* adslAutcIntervalExtTable flags */
427 #define ATUC_INTERVAL_FASTR_FLAG 0x1 /* Bit 0 */
428 #define ATUC_INTERVAL_FAILED_FASTR_FLAG 0x2 /* Bit 1 */
429 #define ATUC_INTERVAL_SESL_FLAG 0x4 /* Bit 2 */
430 #define ATUC_INTERVAL_UASL_FLAG 0x8 /* Bit 3 */
432 /* adslAturIntervalExtTable */
433 #define ATUR_INTERVAL_SESL_FLAG 0X1 /* BIT 0th position */
434 #define ATUR_INTERVAL_UASL_FLAG 0X2 /* BIT 1 */
436 /* adslAlarmConfProfileExtTable */
437 #define ATUC_THRESH_15MIN_FAILED_FASTR_FLAG 0X1/* BIT 0th position */
438 #define ATUC_THRESH_15MIN_SESL_FLAG 0X2 /* BIT 1 */
439 #define ATUC_THRESH_15MIN_UASL_FLAG 0X4 /* BIT 2 */
440 #define ATUR_THRESH_15MIN_SESL_FLAG 0X8 /* BIT 3 */
441 #define ATUR_THRESH_15MIN_UASL_FLAG 0X10 /* BIT 4 */
443 /* adslAturExtTraps */
444 #define ATUC_15MIN_FAILED_FASTR_TRAP_FLAG 0X1 /* BIT 0th position */
445 #define ATUC_15MIN_SESL_TRAP_FLAG 0X2 /* BIT 1 */
446 #define ATUC_15MIN_UASL_TRAP_FLAG 0X4 /* BIT 2 */
447 #define ATUR_15MIN_SESL_TRAP_FLAG 0X8 /* BIT 3 */
448 #define ATUR_15MIN_UASL_TRAP_FLAG 0X10 /* BIT 4 */
452 /* adslLineStatus Flags */
453 #define LINE_STAT_MODEM_STATUS_FLAG 0x1 /* BIT 0th position */
454 #define LINE_STAT_MODEM_STATUS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, STAT, 0, 0, 1, data, TxMessage)
455 #define LINE_STAT_MODE_SEL_FLAG 0x2 /* BIT 1 */
456 #define LINE_STAT_MODE_SEL_FLAG_MAKECMV makeCMV(H2D_CMV_READ, STAT, 1, 0, 1, data, TxMessage)
457 #define LINE_STAT_TRELLCOD_ENABLE_FLAG 0x4 /* BIT 2 */
458 #define LINE_STAT_TRELLCOD_ENABLE_FLAG_MAKECMV makeCMV(H2D_CMV_READ, OPTN, 2, 0, 1, data, TxMessage)
459 #define LINE_STAT_LATENCY_FLAG 0x8 /* BIT 3 */
460 #define LINE_STAT_LATENCY_FLAG_MAKECMV makeCMV(H2D_CMV_READ, STAT, 12, 0, 1, data, TxMessage)
462 /* adslLineRate Flags */
463 #define LINE_RATE_DATA_RATEDS_FLAG 0x1 /* BIT 0th position */
464 #define LINE_RATE_DATA_RATEDS_FLAG_ADSL1_LP0_MAKECMV makeCMV(H2D_CMV_READ, RATE, 1, 0, 2, data, TxMessage)
465 #define LINE_RATE_DATA_RATEDS_FLAG_ADSL1_LP1_MAKECMV makeCMV(H2D_CMV_READ, RATE, 1, 2, 2, data, TxMessage)
468 #define LINE_RATE_DATA_RATEDS_FLAG_ADSL2_RP_LP0_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 12, 0, 1, data, TxMessage)
469 #define LINE_RATE_DATA_RATEDS_FLAG_ADSL2_MP_LP0_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 13, 0, 1, data, TxMessage)
470 #define LINE_RATE_DATA_RATEDS_FLAG_ADSL2_LP_LP0_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 14, 0, 1, data, TxMessage)
471 #define LINE_RATE_DATA_RATEDS_FLAG_ADSL2_TP_LP0_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 15, 0, 1, data, TxMessage)
472 #define LINE_RATE_DATA_RATEDS_FLAG_ADSL2_KP_LP0_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 17, 0, 2, data, TxMessage)
474 #define LINE_RATE_DATA_RATEDS_FLAG_ADSL2_RP_LP1_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 12, 1, 1, data, TxMessage)
475 #define LINE_RATE_DATA_RATEDS_FLAG_ADSL2_MP_LP1_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 13, 1, 1, data, TxMessage)
476 #define LINE_RATE_DATA_RATEDS_FLAG_ADSL2_LP_LP1_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 14, 1, 1, data, TxMessage)
477 #define LINE_RATE_DATA_RATEDS_FLAG_ADSL2_TP_LP1_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 15, 1, 1, data, TxMessage)
478 #define LINE_RATE_DATA_RATEDS_FLAG_ADSL2_KP_LP1_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 17, 2, 2, data, TxMessage)
480 #define LINE_RATE_DATA_RATEUS_FLAG 0x2 /* BIT 1 */
481 #define LINE_RATE_DATA_RATEUS_FLAG_ADSL1_LP0_MAKECMV makeCMV(H2D_CMV_READ, RATE, 0, 0, 2, data, TxMessage)
482 #define LINE_RATE_DATA_RATEUS_FLAG_ADSL1_LP1_MAKECMV makeCMV(H2D_CMV_READ, RATE, 0, 2, 2, data, TxMessage)
485 #define LINE_RATE_DATA_RATEUS_FLAG_ADSL2_RP_LP0_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 23, 0, 1, data, TxMessage)
486 #define LINE_RATE_DATA_RATEUS_FLAG_ADSL2_MP_LP0_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 24, 0, 1, data, TxMessage)
487 #define LINE_RATE_DATA_RATEUS_FLAG_ADSL2_LP_LP0_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 25, 0, 1, data, TxMessage)
488 #define LINE_RATE_DATA_RATEUS_FLAG_ADSL2_TP_LP0_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 26, 0, 1, data, TxMessage)
489 #define LINE_RATE_DATA_RATEUS_FLAG_ADSL2_KP_LP0_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 28, 0, 2, data, TxMessage)
491 #define LINE_RATE_DATA_RATEUS_FLAG_ADSL2_RP_LP1_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 23, 1, 1, data, TxMessage)
492 #define LINE_RATE_DATA_RATEUS_FLAG_ADSL2_MP_LP1_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 24, 1, 1, data, TxMessage)
493 #define LINE_RATE_DATA_RATEUS_FLAG_ADSL2_LP_LP1_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 25, 1, 1, data, TxMessage)
494 #define LINE_RATE_DATA_RATEUS_FLAG_ADSL2_TP_LP1_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 26, 1, 1, data, TxMessage)
495 #define LINE_RATE_DATA_RATEUS_FLAG_ADSL2_KP_LP1_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 28, 2, 2, data, TxMessage)
497 #define LINE_RATE_ATTNDRDS_FLAG 0x4 /* BIT 2 */
498 #define LINE_RATE_ATTNDRDS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 68, 4, 2, data, TxMessage)
500 #define LINE_RATE_ATTNDRUS_FLAG 0x8 /* BIT 3 */
501 #define LINE_RATE_ATTNDRUS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 69, 4, 2, data, TxMessage)
503 /* adslLineInformation Flags */
504 #define LINE_INFO_INTLV_DEPTHDS_FLAG 0x1 /* BIT 0th position */
505 #define LINE_INFO_INTLV_DEPTHDS_FLAG_LP0_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 27, 0, 1, data, TxMessage)
506 #define LINE_INFO_INTLV_DEPTHDS_FLAG_LP1_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 27, 1, 1, data, TxMessage)
507 #define LINE_INFO_INTLV_DEPTHUS_FLAG 0x2 /* BIT 1 */
508 #define LINE_INFO_INTLV_DEPTHUS_FLAG_LP0_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 16, 0, 1, data, TxMessage)
509 #define LINE_INFO_INTLV_DEPTHUS_FLAG_LP1_MAKECMV makeCMV(H2D_CMV_READ, CNFG, 16, 1, 1, data, TxMessage)
510 #define LINE_INFO_LATNDS_FLAG 0x4 /* BIT 2 */
511 #define LINE_INFO_LATNDS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 68, 1, 1, data, TxMessage)
512 #define LINE_INFO_LATNUS_FLAG 0x8 /* BIT 3 */
513 #define LINE_INFO_LATNUS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 69, 1, 1, data, TxMessage)
514 #define LINE_INFO_SATNDS_FLAG 0x10 /* BIT 4 */
515 #define LINE_INFO_SATNDS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 68, 2, 1, data, TxMessage)
516 #define LINE_INFO_SATNUS_FLAG 0x20 /* BIT 5 */
517 #define LINE_INFO_SATNUS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 69, 2, 1, data, TxMessage)
518 #define LINE_INFO_SNRMNDS_FLAG 0x40 /* BIT 6 */
519 #define LINE_INFO_SNRMNDS_FLAG_ADSL1_MAKECMV makeCMV(H2D_CMV_READ, INFO, 68, 3, 1, data, TxMessage)
520 #define LINE_INFO_SNRMNDS_FLAG_ADSL2_MAKECMV makeCMV(H2D_CMV_READ, RATE, 3, 0, 1, data, TxMessage)
521 #define LINE_INFO_SNRMNDS_FLAG_ADSL2PLUS_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 46, 0, 1, data, TxMessage)
522 #define LINE_INFO_SNRMNUS_FLAG 0x80 /* BIT 7 */
523 #define LINE_INFO_SNRMNUS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 69, 3, 1, data, TxMessage)
524 #define LINE_INFO_ACATPDS_FLAG 0x100 /* BIT 8 */
525 #define LINE_INFO_ACATPDS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 68, 6, 1, data, TxMessage)
526 #define LINE_INFO_ACATPUS_FLAG 0x200 /* BIT 9 */
527 #define LINE_INFO_ACATPUS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, INFO, 69, 6, 1, data, TxMessage)
529 /* adslNearEndPerformanceStats Flags */
530 #define NEAREND_PERF_SUPERFRAME_FLAG_LSW_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 20, 0, 1, data, TxMessage)
531 #define NEAREND_PERF_SUPERFRAME_FLAG_MSW_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 21, 0, 1, data, TxMessage)
532 #define NEAREND_PERF_SUPERFRAME_FLAG 0x1 /* BIT 0th position */
533 #define NEAREND_PERF_LOS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 0, 0, 1, data, TxMessage)
534 #define NEAREND_PERF_LOS_FLAG 0x2 /* BIT 1 */
535 #define NEAREND_PERF_LOF_FLAG 0x4 /* BIT 2 */
536 #define NEAREND_PERF_LPR_FLAG 0x8 /* BIT 3 */
537 #define NEAREND_PERF_NCD_FLAG 0x10 /* BIT 4 */
538 #define NEAREND_PERF_LCD_FLAG 0x20 /* BIT 5 */
539 #define NEAREND_PERF_CRC_FLAG 0x40 /* BIT 6 */
540 #define NEAREND_PERF_CRC_FLAG_LP0_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 2, 0, 1, data, TxMessage)
541 #define NEAREND_PERF_CRC_FLAG_LP1_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 2, 1, 1, data, TxMessage)
542 #define NEAREND_PERF_RSCORR_FLAG_LP0_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 3, 0, 1, data, TxMessage)
543 #define NEAREND_PERF_RSCORR_FLAG_LP1_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 3, 1, 1, data, TxMessage)
544 #define NEAREND_PERF_RSCORR_FLAG 0x80 /* BIT 7 */
545 #define NEAREND_PERF_FECS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 6, 0, 1, data, TxMessage)
546 #define NEAREND_PERF_FECS_FLAG 0x100 /* BIT 8 */
547 #define NEAREND_PERF_ES_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 7, 0, 1, data, TxMessage)
548 #define NEAREND_PERF_ES_FLAG 0x200 /* BIT 9 */
549 #define NEAREND_PERF_SES_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 8, 0, 1, data, TxMessage)
550 #define NEAREND_PERF_SES_FLAG 0x400 /* BIT 10 */
551 #define NEAREND_PERF_LOSS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 9, 0, 1, data, TxMessage)
552 #define NEAREND_PERF_LOSS_FLAG 0x800 /* BIT 11 */
553 #define NEAREND_PERF_UAS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 10, 0, 1, data, TxMessage)
554 #define NEAREND_PERF_UAS_FLAG 0x1000 /* BIT 12 */
555 #define NEAREND_PERF_HECERR_FLAG_BC0_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 11, 0, 2, data, TxMessage)
556 #define NEAREND_PERF_HECERR_FLAG_BC1_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 11, 2, 2, data, TxMessage)
557 #define NEAREND_PERF_HECERR_FLAG 0x2000 /* BIT 13 */
559 /* adslFarEndPerformanceStats Flags */
560 #define FAREND_PERF_LOS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 1, 0, 1, data, TxMessage)
561 #define FAREND_PERF_LOS_FLAG 0x1 /* BIT 0th position */
562 #define FAREND_PERF_LOF_FLAG 0x2 /* BIT 1 */
563 #define FAREND_PERF_LPR_FLAG 0x4 /* BIT 2 */
564 #define FAREND_PERF_NCD_FLAG 0x8 /* BIT 3 */
565 #define FAREND_PERF_LCD_FLAG 0x10 /* BIT 4 */
566 #define FAREND_PERF_CRC_FLAG_LP0_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 24, 0, 1, data, TxMessage)
567 #define FAREND_PERF_CRC_FLAG_LP1_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 24, 1, 1, data, TxMessage)
568 #define FAREND_PERF_CRC_FLAG 0x20 /* BIT 5 */
569 #define FAREND_PERF_RSCORR_FLAG_LP0_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 28, 0, 1, data, TxMessage)
570 #define FAREND_PERF_RSCORR_FLAG_LP1_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 28, 1, 1, data, TxMessage)
571 #define FAREND_PERF_RSCORR_FLAG 0x40 /* BIT 6 */
572 #define FAREND_PERF_FECS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 32, 0, 1, data, TxMessage)
573 #define FAREND_PERF_FECS_FLAG 0x80 /* BIT 7 */
574 #define FAREND_PERF_ES_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 33, 0, 1, data, TxMessage)
575 #define FAREND_PERF_ES_FLAG 0x100 /* BIT 8 */
576 #define FAREND_PERF_SES_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 34, 0, 1, data, TxMessage)
577 #define FAREND_PERF_SES_FLAG 0x200 /* BIT 9 */
578 #define FAREND_PERF_LOSS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 35, 0, 1, data, TxMessage)
579 #define FAREND_PERF_LOSS_FLAG 0x400 /* BIT 10 */
580 #define FAREND_PERF_UAS_FLAG_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 36, 0, 1, data, TxMessage)
581 #define FAREND_PERF_UAS_FLAG 0x800 /* BIT 11 */
582 #define FAREND_PERF_HECERR_FLAG_BC0_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 37, 0, 2, data, TxMessage)
583 #define FAREND_PERF_HECERR_FLAG_BC1_MAKECMV makeCMV(H2D_CMV_READ, PLAM, 37, 2, 2, data, TxMessage)
584 #define FAREND_PERF_HECERR_FLAG 0x1000 /* BIT 12 */
585 // 603221:tc.chen end
586 /* TR-69 related additional parameters - defines */
587 /* Defines for struct adslATURSubcarrierInfo */
588 #define NEAREND_HLINSC 0x1
589 #define NEAREND_HLINSC_MAKECMV(mode) makeCMV(mode, INFO, 71, 2, 1, data, TxMessage)
590 #define NEAREND_HLINPS 0x2
591 #define NEAREND_HLINPS_MAKECMV(mode,idx,size) makeCMV(mode, INFO, 73, idx, size, data, TxMessage)
592 #define NEAREND_HLOGMT 0x4
593 #define NEAREND_HLOGMT_MAKECMV(mode) makeCMV(mode, INFO, 80, 0, 1, data, TxMessage)
594 #define NEAREND_HLOGPS 0x8
595 #define NEAREND_HLOGPS_MAKECMV(mode,idx,size) makeCMV(mode, INFO, 75, idx, size, data, TxMessage)
596 #define NEAREND_QLNMT 0x10
597 #define NEAREND_QLNMT_MAKECMV(mode) makeCMV(mode, INFO, 80, 1, 1, data, TxMessage)
598 #define NEAREND_QLNPS 0x20
599 #define NEAREND_QLNPS_MAKECMV(mode,idx,size) makeCMV(mode, INFO, 77, idx, size, data, TxMessage)
600 #define NEAREND_SNRMT 0x40
601 #define NEAREND_SNRMT_MAKECMV(mode) makeCMV(mode, INFO, 80, 2, 1, data, TxMessage)
602 #define NEAREND_SNRPS 0x80
603 #define NEAREND_SNRPS_MAKECMV(mode,idx,size) makeCMV(mode, INFO, 78, idx, size, data, TxMessage)
604 #define NEAREND_BITPS 0x100
605 #define NEAREND_BITPS_MAKECMV(mode,idx,size) makeCMV(mode, INFO, 22, idx, size, data, TxMessage)
606 #define NEAREND_GAINPS 0x200
607 #define NEAREND_GAINPS_MAKECMV(mode,idx,size) makeCMV(mode, INFO, 24, idx, size, data, TxMessage)
609 /* Defines for struct adslATUCSubcarrierInfo */
610 #define FAREND_HLINSC 0x1
612 /* As per the feedback from Knut on 21/08/2006, the cmv command of HLINSC should be INFO 70 2 */
613 #define FAREND_HLINSC_MAKECMV(mode) makeCMV(mode, INFO, 70, 2, 1, data, TxMessage)
614 #define FAREND_HLINPS 0x2
615 #define FAREND_HLINPS_MAKECMV(mode,idx,size) makeCMV(mode, INFO, 72, idx, size, data, TxMessage)
616 #define FAREND_HLOGMT 0x4
617 #define FAREND_HLOGMT_MAKECMV(mode) makeCMV(mode, INFO, 79, 0, 1, data, TxMessage)
618 #define FAREND_HLOGPS 0x8
619 #define FAREND_HLOGPS_MAKECMV(mode,idx,size) makeCMV(mode, INFO, 74, idx, size, data, TxMessage)
620 #define FAREND_QLNMT 0x10
621 #define FAREND_QLNMT_MAKECMV(mode) makeCMV(mode, INFO, 79, 1, 1, data, TxMessage)
622 #define FAREND_QLNPS 0x20
623 #define FAREND_QLNPS_MAKECMV(mode,idx,size) makeCMV(mode, INFO, 76, idx, size, data, TxMessage)
624 #define FAREND_SNRMT 0x40
625 #define FAREND_SNRMT_MAKECMV(mode) makeCMV(mode, INFO, 79, 2, 1, data, TxMessage)
626 #define FAREND_SNRPS 0x80
627 #define FAREND_SNRPS_MAKECMV(mode,idx,size) makeCMV(mode, INFO, 11, idx, size, data, TxMessage)
628 #define FAREND_SNRPS_DIAG_MAKECMV(mode,idx,size) makeCMV(mode, INFO, 10, idx, size, data, TxMessage)
629 #define FAREND_BITPS 0x100
630 #define FAREND_BITPS_MAKECMV(mode,idx,size) makeCMV(mode, INFO, 23, idx, size, data, TxMessage)
631 #define FAREND_GAINPS 0x200
632 #define FAREND_GAINPS_MAKECMV(mode,idx,size) makeCMV(mode, INFO, 25, idx, size, data, TxMessage)
635 // GET_ADSL_POWER_SPECTRAL_DENSITY
636 #define NOMPSD_US_MAKECMV makeCMV(H2D_CMV_READ, INFO, 102, 0, 1, data, TxMessage)
637 #define NOMPSD_DS_MAKECMV makeCMV(H2D_CMV_READ, INFO, 102, 1, 1, data, TxMessage)
638 #define PCB_US_MAKECMV makeCMV(H2D_CMV_READ, INFO, 102, 6, 1, data, TxMessage)
639 #define PCB_DS_MAKECMV makeCMV(H2D_CMV_READ, INFO, 102, 7, 1, data, TxMessage)
640 #define RMSGI_US_MAKECMV makeCMV(H2D_CMV_READ, INFO, 102, 10, 1, data, TxMessage)
641 #define RMSGI_DS_MAKECMV makeCMV(H2D_CMV_READ, INFO, 102, 11, 1, data, TxMessage)
643 /////////////////////////////////////////////////Macro Definitions ? FLAG Setting & Testing
645 #define SET_FLAG(flags, flag_val) ((*flags) = ((*flags) | flag_val))
646 // -- This macro sets the flags with the flag_val. Here flags is passed as a pointer
648 #define IS_FLAG_SET(flags, test_flag) (((*flags) & (test_flag)) == (test_flag)? test_flag:0)
649 // -- This macro verifies whether test_flag has been set in flags. Here flags is passed as a pointer
652 #define CLR_FLAG(flags, flag_bit) ((*flags) = (*flags) & (~flag_bit))
653 // -- This macro resets the specified flag_bit in the flags. Here flags is passed as a pointer
656 ////////////////////////////////////////////////DATA STRUCTURES ORGANIZATION
658 //Here are the data structures used for accessing mib parameters. The ioctl call includes the third parameter as a void pointer. This parameter has to be type-casted in the driver code to the corresponding structure depending upon the command type. For Ex: consider the ioctl used to get the adslLineCode type, ioctl(fd,GET_ADSL_LINE_CODE,void *struct_adslLineTableEntry). In the driver code we check on the type of the command, i.e GET_ADSL_LINE_CODE and type-cast the void pointer to struct adslLineTableEntry type.
660 #define u32 unsigned int
661 #define u16 unsigned short
663 #define u8 unsigned char
666 typedef u32 AdslPerfTimeElapsed
;
667 typedef u32 AdslPerfPrevDayCount
;
668 typedef u32 PerfCurrentCount
;
669 typedef u32 PerfIntervalCount
;
670 typedef u32 AdslPerfCurrDayCount
;
673 //ioctl(int fd, GET_ADSL_LINE_CODE, void *struct_adslLineTableEntry)
675 typedef struct adslLineTableEntry
{
679 } adslLineTableEntry
;
681 #ifdef IFXMIPS_MEI_MIB_RFC3440
682 typedef struct adslLineExtTableEntry
{
684 u16 adslLineTransAtucCap
;
685 u16 adslLineTransAtucConfig
;
686 u16 adslLineTransAtucActual
;
687 int adslLineGlitePowerState
;
689 }adslLineExtTableEntry
;
691 //ioctl(int fd, GET_ADSL_ATUC_PHY, void *struct_adslAtucPhysEntry)
696 typedef struct adslVendorId
{
698 u_char provider_id
[4]; /* Ascii characters */
699 u_char revision_info
[2];
702 typedef struct adslAtucPhysEntry
{
707 adslVendorId vendor_info
;
717 //ioctl(int fd, GET_ADSL_ATUR_PHY, void *struct_adslAturPhysEntry)
719 typedef struct adslAturPhysEntry
{
724 adslVendorId vendor_info
;
736 //ioctl(int fd, GET_ADSL_ATUC_CHAN_INFO, void *struct_adslAtucChanInfo)
738 typedef struct adslAtucChanInfo
{
747 //ioctl(int fd, GET_ADSL_ATUR_CHAN_INFO, void *struct_adslAturChanInfo)
749 typedef struct adslAturChanInfo
{
759 //ioctl(int fd, GET_ADSL_ATUC_PERF_DATA, void *struct_atucPerfDataEntry)
761 typedef struct atucPerfDataEntry
764 u32 adslAtucPerfLofs
;
765 u32 adslAtucPerfLoss
;
767 u32 adslAtucPerfInits
;
768 int adslAtucPerfValidIntervals
;
769 int adslAtucPerfInvalidIntervals
;
770 AdslPerfTimeElapsed adslAtucPerfCurr15MinTimeElapsed
;
771 PerfCurrentCount adslAtucPerfCurr15MinLofs
;
772 PerfCurrentCount adslAtucPerfCurr15MinLoss
;
773 PerfCurrentCount adslAtucPerfCurr15MinESs
;
774 PerfCurrentCount adslAtucPerfCurr15MinInits
;
775 AdslPerfTimeElapsed adslAtucPerfCurr1DayTimeElapsed
;
776 AdslPerfCurrDayCount adslAtucPerfCurr1DayLofs
;
777 AdslPerfCurrDayCount adslAtucPerfCurr1DayLoss
;
778 AdslPerfCurrDayCount adslAtucPerfCurr1DayESs
;
779 AdslPerfCurrDayCount adslAtucPerfCurr1DayInits
;
780 int adslAtucPerfPrev1DayMoniSecs
;
781 AdslPerfPrevDayCount adslAtucPerfPrev1DayLofs
;
782 AdslPerfPrevDayCount adslAtucPerfPrev1DayLoss
;
783 AdslPerfPrevDayCount adslAtucPerfPrev1DayESs
;
784 AdslPerfPrevDayCount adslAtucPerfPrev1DayInits
;
788 #ifdef IFXMIPS_MEI_MIB_RFC3440
789 typedef struct atucPerfDataExtEntry
792 u32 adslAtucPerfStatFastR
;
793 u32 adslAtucPerfStatFailedFastR
;
794 u32 adslAtucPerfStatSesL
;
795 u32 adslAtucPerfStatUasL
;
796 u32 adslAtucPerfCurr15MinFastR
;
797 u32 adslAtucPerfCurr15MinFailedFastR
;
798 u32 adslAtucPerfCurr15MinSesL
;
799 u32 adslAtucPerfCurr15MinUasL
;
800 u32 adslAtucPerfCurr1DayFastR
;
801 u32 adslAtucPerfCurr1DayFailedFastR
;
802 u32 adslAtucPerfCurr1DaySesL
;
803 u32 adslAtucPerfCurr1DayUasL
;
804 u32 adslAtucPerfPrev1DayFastR
;
805 u32 adslAtucPerfPrev1DayFailedFastR
;
806 u32 adslAtucPerfPrev1DaySesL
;
807 u32 adslAtucPerfPrev1DayUasL
;
809 } atucPerfDataExtEntry
;
812 //ioctl(int fd, GET_ADSL_ATUR_PERF_DATA, void *struct_aturPerfDataEntry)
814 typedef struct aturPerfDataEntry
817 u32 adslAturPerfLofs
;
818 u32 adslAturPerfLoss
;
819 u32 adslAturPerfLprs
;
821 int adslAturPerfValidIntervals
;
822 int adslAturPerfInvalidIntervals
;
823 AdslPerfTimeElapsed adslAturPerfCurr15MinTimeElapsed
;
824 PerfCurrentCount adslAturPerfCurr15MinLofs
;
825 PerfCurrentCount adslAturPerfCurr15MinLoss
;
826 PerfCurrentCount adslAturPerfCurr15MinLprs
;
827 PerfCurrentCount adslAturPerfCurr15MinESs
;
828 AdslPerfTimeElapsed adslAturPerfCurr1DayTimeElapsed
;
829 AdslPerfCurrDayCount adslAturPerfCurr1DayLofs
;
830 AdslPerfCurrDayCount adslAturPerfCurr1DayLoss
;
831 AdslPerfCurrDayCount adslAturPerfCurr1DayLprs
;
832 AdslPerfCurrDayCount adslAturPerfCurr1DayESs
;
833 int adslAturPerfPrev1DayMoniSecs
;
834 AdslPerfPrevDayCount adslAturPerfPrev1DayLofs
;
835 AdslPerfPrevDayCount adslAturPerfPrev1DayLoss
;
836 AdslPerfPrevDayCount adslAturPerfPrev1DayLprs
;
837 AdslPerfPrevDayCount adslAturPerfPrev1DayESs
;
841 #ifdef IFXMIPS_MEI_MIB_RFC3440
842 typedef struct aturPerfDataExtEntry
845 u32 adslAturPerfStatSesL
;
846 u32 adslAturPerfStatUasL
;
847 u32 adslAturPerfCurr15MinSesL
;
848 u32 adslAturPerfCurr15MinUasL
;
849 u32 adslAturPerfCurr1DaySesL
;
850 u32 adslAturPerfCurr1DayUasL
;
851 u32 adslAturPerfPrev1DaySesL
;
852 u32 adslAturPerfPrev1DayUasL
;
854 } aturPerfDataExtEntry
;
856 //ioctl(int fd, GET_ADSL_ATUC_INTVL_INFO, void *struct_adslAtucInvtInfo)
858 typedef struct adslAtucIntvlInfo
{
861 PerfIntervalCount intervalLOF
;
862 PerfIntervalCount intervalLOS
;
863 PerfIntervalCount intervalES
;
864 PerfIntervalCount intervalInits
;
865 int intervalValidData
;
869 #ifdef IFXMIPS_MEI_MIB_RFC3440
870 typedef struct adslAtucInvtlExtInfo
874 u32 adslAtucIntervalFastR
;
875 u32 adslAtucIntervalFailedFastR
;
876 u32 adslAtucIntervalSesL
;
877 u32 adslAtucIntervalUasL
;
879 } adslAtucInvtlExtInfo
;
881 //ioctl(int fd, GET_ADSL_ATUR_INTVL_INFO, void *struct_adslAturInvtlInfo)
883 typedef struct adslAturIntvlInfo
{
886 PerfIntervalCount intervalLOF
;
887 PerfIntervalCount intervalLOS
;
888 PerfIntervalCount intervalLPR
;
889 PerfIntervalCount intervalES
;
890 int intervalValidData
;
894 #ifdef IFXMIPS_MEI_MIB_RFC3440
895 typedef struct adslAturInvtlExtInfo
899 u32 adslAturIntervalSesL
;
900 u32 adslAturIntervalUasL
;
902 } adslAturInvtlExtInfo
;
904 //ioctl(int fd, GET_ADSL_ATUC_CHAN_PERF_DATA, void *struct_atucChannelPerfDataEntry)
906 typedef struct atucChannelPerfDataEntry
909 u32 adslAtucChanReceivedBlks
;
910 u32 adslAtucChanTransmittedBlks
;
911 u32 adslAtucChanCorrectedBlks
;
912 u32 adslAtucChanUncorrectBlks
;
913 int adslAtucChanPerfValidIntervals
;
914 int adslAtucChanPerfInvalidIntervals
;
915 AdslPerfTimeElapsed adslAtucChanPerfCurr15MinTimeElapsed
;
916 PerfCurrentCount adslAtucChanPerfCurr15MinReceivedBlks
;
917 PerfCurrentCount adslAtucChanPerfCurr15MinTransmittedBlks
;
918 PerfCurrentCount adslAtucChanPerfCurr15MinCorrectedBlks
;
919 PerfCurrentCount adslAtucChanPerfCurr15MinUncorrectBlks
;
920 AdslPerfTimeElapsed adslAtucChanPerfCurr1DayTimeElapsed
;
921 AdslPerfCurrDayCount adslAtucChanPerfCurr1DayReceivedBlks
;
922 AdslPerfCurrDayCount adslAtucChanPerfCurr1DayTransmittedBlks
;
923 AdslPerfCurrDayCount adslAtucChanPerfCurr1DayCorrectedBlks
;
924 AdslPerfCurrDayCount adslAtucChanPerfCurr1DayUncorrectBlks
;
925 int adslAtucChanPerfPrev1DayMoniSecs
;
926 AdslPerfPrevDayCount adslAtucChanPerfPrev1DayReceivedBlks
;
927 AdslPerfPrevDayCount adslAtucChanPerfPrev1DayTransmittedBlks
;
928 AdslPerfPrevDayCount adslAtucChanPerfPrev1DayCorrectedBlks
;
929 AdslPerfPrevDayCount adslAtucChanPerfPrev1DayUncorrectBlks
;
931 }atucChannelPerfDataEntry
;
934 //ioctl(int fd, GET_ADSL_ATUR_CHAN_PERF_DATA, void *struct_aturChannelPerfDataEntry)
936 typedef struct aturChannelPerfDataEntry
939 u32 adslAturChanReceivedBlks
;
940 u32 adslAturChanTransmittedBlks
;
941 u32 adslAturChanCorrectedBlks
;
942 u32 adslAturChanUncorrectBlks
;
943 int adslAturChanPerfValidIntervals
;
944 int adslAturChanPerfInvalidIntervals
;
945 AdslPerfTimeElapsed adslAturChanPerfCurr15MinTimeElapsed
;
946 PerfCurrentCount adslAturChanPerfCurr15MinReceivedBlks
;
947 PerfCurrentCount adslAturChanPerfCurr15MinTransmittedBlks
;
948 PerfCurrentCount adslAturChanPerfCurr15MinCorrectedBlks
;
949 PerfCurrentCount adslAturChanPerfCurr15MinUncorrectBlks
;
950 AdslPerfTimeElapsed adslAturChanPerfCurr1DayTimeElapsed
;
951 AdslPerfCurrDayCount adslAturChanPerfCurr1DayReceivedBlks
;
952 AdslPerfCurrDayCount adslAturChanPerfCurr1DayTransmittedBlks
;
953 AdslPerfCurrDayCount adslAturChanPerfCurr1DayCorrectedBlks
;
954 AdslPerfCurrDayCount adslAturChanPerfCurr1DayUncorrectBlks
;
955 int adslAturChanPerfPrev1DayMoniSecs
;
956 AdslPerfPrevDayCount adslAturChanPerfPrev1DayReceivedBlks
;
957 AdslPerfPrevDayCount adslAturChanPerfPrev1DayTransmittedBlks
;
958 AdslPerfPrevDayCount adslAturChanPerfPrev1DayCorrectedBlks
;
959 AdslPerfPrevDayCount adslAturChanPerfPrev1DayUncorrectBlks
;
961 } aturChannelPerfDataEntry
;
964 //ioctl(int fd, GET_ADSL_ATUC_CHAN_INTVL_INFO, void *struct_adslAtucChanIntvlInfo)
966 typedef struct adslAtucChanIntvlInfo
{
969 PerfIntervalCount chanIntervalRecvdBlks
;
970 PerfIntervalCount chanIntervalXmitBlks
;
971 PerfIntervalCount chanIntervalCorrectedBlks
;
972 PerfIntervalCount chanIntervalUncorrectBlks
;
973 int intervalValidData
;
975 } adslAtucChanIntvlInfo
;
978 //ioctl(int fd, GET_ADSL_ATUR_CHAN_INTVL_INFO, void *struct_adslAturChanIntvlInfo)
980 typedef struct adslAturChanIntvlInfo
{
983 PerfIntervalCount chanIntervalRecvdBlks
;
984 PerfIntervalCount chanIntervalXmitBlks
;
985 PerfIntervalCount chanIntervalCorrectedBlks
;
986 PerfIntervalCount chanIntervalUncorrectBlks
;
987 int intervalValidData
;
989 } adslAturChanIntvlInfo
;
992 //ioctl(int fd, GET_ADSL_ALRM_CONF_PROF, void *struct_adslLineAlarmConfProfileEntry)
993 //ioctl(int fd, SET_ADSL_ALRM_CONF_PROF, void *struct_adslLineAlarmConfProfileEntry)
995 typedef struct adslLineAlarmConfProfileEntry
997 unsigned char adslLineAlarmConfProfileName
[32];
998 int adslAtucThresh15MinLofs
;
999 int adslAtucThresh15MinLoss
;
1000 int adslAtucThresh15MinESs
;
1001 u32 adslAtucThreshFastRateUp
;
1002 u32 adslAtucThreshInterleaveRateUp
;
1003 u32 adslAtucThreshFastRateDown
;
1004 u32 adslAtucThreshInterleaveRateDown
;
1005 int adslAtucInitFailureTrapEnable
;
1006 int adslAturThresh15MinLofs
;
1007 int adslAturThresh15MinLoss
;
1008 int adslAturThresh15MinLprs
;
1009 int adslAturThresh15MinESs
;
1010 u32 adslAturThreshFastRateUp
;
1011 u32 adslAturThreshInterleaveRateUp
;
1012 u32 adslAturThreshFastRateDown
;
1013 u32 adslAturThreshInterleaveRateDown
;
1014 int adslLineAlarmConfProfileRowStatus
;
1016 } adslLineAlarmConfProfileEntry
;
1018 #ifdef IFXMIPS_MEI_MIB_RFC3440
1019 typedef struct adslLineAlarmConfProfileExtEntry
1021 u8 adslLineAlarmConfProfileExtName
[32];
1022 u32 adslAtucThreshold15MinFailedFastR
;
1023 u32 adslAtucThreshold15MinSesL
;
1024 u32 adslAtucThreshold15MinUasL
;
1025 u32 adslAturThreshold15MinSesL
;
1026 u32 adslAturThreshold15MinUasL
;
1028 } adslLineAlarmConfProfileExtEntry
;
1032 /* The following Data Sturctures are added to support the WEB related parameters for ADSL Statistics */
1033 typedef struct adslLineStatus
1035 int adslModemStatus
;
1036 u32 adslModeSelected
;
1037 int adslAtucThresh15MinESs
;
1038 int adslTrellisCodeEnable
;
1041 } adslLineStatusInfo
;
1043 typedef struct adslLineRate
1052 typedef struct adslLineInfo
1054 u32 adslInterleaveDepthds
;
1055 u32 adslInterleaveDepthus
;
1067 typedef struct adslNearEndPerfStats
1069 u32 adslSuperFrames
;
1082 u32 adslneHECErrors
;
1084 } adslNearEndPerfStats
;
1086 typedef struct adslFarEndPerfStats
1100 u32 adslfeHECErrors
;
1102 } adslFarEndPerfStats
;
1104 /* The number of tones (and hence indexes) is dependent on the ADSL mode - G.992.1, G.992.2, G.992.3, * G.992.4 and G.992.5 */
1105 typedef struct adslATURSubcarrierInfo
{
1108 u16 HLINpsds
[1024];/* Even index = real part; Odd Index
1109 = imaginary part for each tone */
1117 s16 GAINpsds
[512]; /* Signed value in 0.1dB units. i.e dB * 10.
1118 Needs to be converted into linear scale*/
1120 }adslATURSubcarrierInfo
;
1122 typedef struct adslATUCSubcarrierInfo
{
1125 u16 HLINpsus
[128];/* Even index = real part; Odd Index
1126 = imaginary part for each tone */
1134 s16 GAINpsus
[64]; /* Signed value in 0.1dB units. i.e dB * 10.
1135 Needs to be converted into linear scale*/
1137 }adslATUCSubcarrierInfo
;
1143 typedef struct adslInitStats
{
1144 u_int16 FullInitializationCount
;
1145 u_int16 FailedFullInitializationCount
;
1146 u_int16 LINIT_Errors
;
1147 u_int16 Init_Timeouts
;
1150 typedef struct adslPowerSpectralDensity
{
1153 }adslPowerSpectralDensity
;
1155 //ioctl(int fd, ADSL_ATUR_TRAPS, void *uint16_flags)
1156 typedef union structpts
{
1157 adslLineTableEntry
* adslLineTableEntry_pt
;
1158 adslAtucPhysEntry
* adslAtucPhysEntry_pt
;
1159 adslAturPhysEntry
* adslAturPhysEntry_pt
;
1160 adslAtucChanInfo
* adslAtucChanInfo_pt
;
1161 adslAturChanInfo
* adslAturChanInfo_pt
;
1162 atucPerfDataEntry
* atucPerfDataEntry_pt
;
1163 aturPerfDataEntry
* aturPerfDataEntry_pt
;
1164 adslAtucIntvlInfo
* adslAtucIntvlInfo_pt
;
1165 adslAturIntvlInfo
* adslAturIntvlInfo_pt
;
1166 atucChannelPerfDataEntry
* atucChannelPerfDataEntry_pt
;
1167 aturChannelPerfDataEntry
* aturChannelPerfDataEntry_pt
;
1168 adslAtucChanIntvlInfo
* adslAtucChanIntvlInfo_pt
;
1169 adslAturChanIntvlInfo
* adslAturChanIntvlInfo_pt
;
1170 adslLineAlarmConfProfileEntry
* adslLineAlarmConfProfileEntry_pt
;
1173 #ifdef IFXMIPS_MEI_MIB_RFC3440
1174 adslLineExtTableEntry
* adslLineExtTableEntry_pt
;
1175 atucPerfDataExtEntry
* atucPerfDataExtEntry_pt
;
1176 adslAtucInvtlExtInfo
* adslAtucInvtlExtInfo_pt
;
1177 aturPerfDataExtEntry
* aturPerfDataExtEntry_pt
;
1178 adslAturInvtlExtInfo
* adslAturInvtlExtInfo_pt
;
1179 adslLineAlarmConfProfileExtEntry
* adslLineAlarmConfProfileExtEntry_pt
;
1181 adslLineStatusInfo
* adslLineStatusInfo_pt
;
1182 adslLineRateInfo
* adslLineRateInfo_pt
;
1183 adslLineInfo
* adslLineInfo_pt
;
1184 adslNearEndPerfStats
* adslNearEndPerfStats_pt
;
1185 adslFarEndPerfStats
* adslFarEndPerfStats_pt
;
1186 adslATUCSubcarrierInfo
* adslATUCSubcarrierInfo_pt
;
1187 adslATURSubcarrierInfo
* adslATURSubcarrierInfo_pt
;
1188 adslPowerSpectralDensity
* adslPowerSpectralDensity_pt
;
1191 #endif /* ] __IFXMIPS_MEI_APP_IOCTL_H */