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