/
SoftDsl.h
executable file
·3587 lines (3248 loc) · 124 KB
/
SoftDsl.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
/****************************************************************************
*
* SoftDsl.h
*
*
* Description:
* This file contains the exported interface for SoftDsl.c
*
*
* Copyright (c) 1993-1998 AltoCom, Inc. All rights reserved.
* Authors: Ilya Stomakhin
*
* $Revision: 1.1.2.1 $
*
* $Id: SoftDsl.h,v 1.1.2.1 2009/11/19 06:39:17 l43571 Exp $
*
* $Log: SoftDsl.h,v $
* Revision 1.1.2.1 2009/11/19 06:39:17 l43571
* 【变更分类】
* 【问题单号】
* 【问题描述】
* 【修改说明】
*
* Revision 1.1 2008/08/25 06:41:06 l65130
* 【变更分类】建立基线
* 【问题单号】
* 【问题描述】
* 【修改说明】
*
* Revision 1.1 2008/06/20 06:21:25 z67625
* *** empty log message ***
*
* Revision 1.1 2008/01/14 02:47:41 z30370
* *** empty log message ***
*
* Revision 1.2 2007/12/16 10:09:57 z45221
* 合入人:
* s48571
*
* 合入内容:
* ADSL驱动更新版本至A2x020h
* ADSLfirmware版本更换版本至a2pb023k/b2pb023k
*
* 修改文件列表:
* /bcmdrivers/broadcom/char/adsl/impl1/AdslCore.c
* /bcmdrivers/broadcom/char/adsl/impl1/AdslCore.h
* /bcmdrivers/broadcom/char/adsl/impl1/AdslCoreFrame.c
* /bcmdrivers/broadcom/char/adsl/impl1/AdslCoreFrame.h
* /bcmdrivers/broadcom/char/adsl/impl1/AdslCoreMap.h
* /bcmdrivers/broadcom/char/adsl/impl1/AdslDrvVersion.h
* /bcmdrivers/broadcom/char/adsl/impl1/AdslFile.c
* /bcmdrivers/broadcom/char/adsl/impl1/AdslFile.h
* /bcmdrivers/broadcom/char/adsl/impl1/AdslSelfTest.c
* /bcmdrivers/broadcom/char/adsl/impl1/AdslSelfTest.h
* /bcmdrivers/broadcom/char/adsl/impl1/BcmAdslCore.c
* /bcmdrivers/broadcom/char/adsl/impl1/BcmAdslCore.h
* /bcmdrivers/broadcom/char/adsl/impl1/BcmAdslDiag.h
* /bcmdrivers/broadcom/char/adsl/impl1/BcmAdslDiagLinux.c
* /bcmdrivers/broadcom/char/adsl/impl1/BcmAdslDiagNone.c
* /bcmdrivers/broadcom/char/adsl/impl1/BcmAdslDiagRtems.c
* /bcmdrivers/broadcom/char/adsl/impl1/BcmOs.h
* /bcmdrivers/broadcom/char/adsl/impl1/Makefile
* /bcmdrivers/broadcom/char/adsl/impl1/adsl.c
* /bcmdrivers/broadcom/char/adsl/impl1/adsldrv.c
* /bcmdrivers/broadcom/char/adsl/impl1/adslcore6348/adsl_defs.h
* /bcmdrivers/broadcom/char/adsl/impl1/adslcore6348/adsl_lmem.c
* /bcmdrivers/broadcom/char/adsl/impl1/adslcore6348/adsl_lmem.h
* /bcmdrivers/broadcom/char/adsl/impl1/adslcore6348/adsl_sdram.c
* /bcmdrivers/broadcom/char/adsl/impl1/adslcore6348/adsl_sdram.h
* /bcmdrivers/broadcom/char/adsl/impl1/adslcore6348B/adsl_defs.h
* /bcmdrivers/broadcom/char/adsl/impl1/adslcore6348B/adsl_lmem.c
* /bcmdrivers/broadcom/char/adsl/impl1/adslcore6348B/adsl_lmem.h
* /bcmdrivers/broadcom/char/adsl/impl1/adslcore6348B/adsl_sdram.c
* /bcmdrivers/broadcom/char/adsl/impl1/adslcore6348B/adsl_sdram.h
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/AdslCoreDefs.h
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/AdslMib.c
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/AdslMib.gh
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/AdslMib.h
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/AdslMibObj.c
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/AdslMibOid.h
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/AdslXfaceData.h
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/BlockUtil.h
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/CircBuf.h
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/DslFramer.c
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/DslFramer.h
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/Flatten.c
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/Flatten.h
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/G992p3OvhMsg.c
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/G992p3OvhMsg.gh
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/G992p3OvhMsg.h
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/G997.c
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/G997.gh
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/G997.h
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/HdlcByte.c
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/HdlcFramer.c
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/HdlcFramer.h
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/MathUtil.h
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/MipsAsm.h
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/MiscUtil.h
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/SoftAtmVc.h
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/SoftDsl.gh
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/SoftDsl.h
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/SoftDslFrame.c
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/SoftModem.h
* /bcmdrivers/broadcom/char/adsl/impl1/softdsl/SoftModemTypes.h
*
* /bcmdrivers/broadcom/includeAdslMibDef.h
* /bcmdrivers/broadcom/includeDiagDef.h
* /bcmdrivers/broadcom/includeadsldrv.h
* /bcmdrivers/broadcom/includebcmadsl.h
*
* /userapps/broadcom/adslctl/adslctl.c
* /userapps/broadcom/adslctl/adsluser.c
*
* /userapps/broadcom/cfm/html/statsadsl.html
* /userapps/broadcom/cfm/html/countrysupport/italy_vdf/info.html
* /userapps/broadcom/cfm/inc/syscall.h
* /userapps/broadcom/cfm/main/adslcfgmngr/adslctlapi.c
* /userapps/broadcom/cfm/util/system/syscall.c
* /userapps/broadcom/cfm/web/cgimain.c
* /userapps/broadcom/cfm/web/cgimain.h
*
* Revision 1.337 2007/04/10 19:44:10 tonytran
* Merged with release_A2pB024_rc4; Adsl Driver/Dsldiags need the head version+ changes in _A2pB024_rc4
*
* Revision 1.336 2007/04/09 20:46:21 mprahlad
* add VDSL codepoints - initial rev
*
* Revision 1.335 2007/03/16 15:43:35 jboxho
* Remove useless NEW_FIRE_PARAMS compilation flag
*
* Revision 1.334 2007/02/26 13:22:34 jboxho
* Fire new parameters implementation (INPmax and minReXmtRate) (PR30818)
*
* Revision 1.333 2007/02/14 22:33:59 ilyas
* Commented out DSLVARS_GLOBAL_REG
*
* Revision 1.332 2007/02/14 22:31:49 ilyas
* Redefine gDslVars to use persistent register. Added macros to 'remove' gDslVars - first function parameter
*
* Revision 1.331 2007/02/01 20:15:23 tonytran
* Updated Fire counter define
*
* Revision 1.330 2007/01/25 01:25:43 tonytran
* Added binary status output filtering; display Fire, AS and Bitswap counters in the State Summary Window
*
* Revision 1.329 2007/01/20 05:00:27 yongbing
* PR30908: Create another control status when part of the band have margins below -1dB
*
* Revision 1.328 2007/01/19 21:15:37 ilyas
* Merged vdsl-sjc tree
*
* Revision 1.327 2007/01/16 00:48:54 ovandewi
* add BB pln reset indication
*
* Revision 1.326 2007/01/15 15:41:02 jboxho
* Fire state reporting (PR30818)
*
* Revision 1.325 2006/12/22 14:46:41 jboxho
* FIRE feature implementation: handshake, counters, block interleaving, new retransmit request format
*
* Revision 1.324 2006/12/08 17:46:13 ovandewi
* bit is reserved regardless of FIRE being in the PHY
*
* Revision 1.323 2006/12/08 17:20:51 jboxho
* DS Fire capability foreseen in demodCapabilities2 (PR30818)
*
* Revision 1.322 2006/10/27 00:16:51 ilyas
* Added definitions for time based profiling
*
* Revision 1.321 2006/10/11 00:00:28 yongbing
* PR 30854: Reduce SDRAM size by eliminating debug printf
*
* Revision 1.320 2006/09/04 14:25:21 ovandewi
* means to retrain on min margin
*
* Revision 1.319 2006/07/06 20:59:41 mding
* add status to update Gi only in the mib
*
* Revision 1.318 2006/06/15 17:10:48 ovandewi
* add a bit to control 24 kbytes option
*
* Revision 1.317 2006/05/19 23:45:34 yongbing
* Move some non-time-critial codes/data from Lmem to SDRAM for 24K, PR 30468
*
* Revision 1.316 2006/05/18 22:42:52 yongbing
* Reverse last check in, uchar for D in G.DMT is sufficient, PR 30753
*
* Revision 1.315 2006/04/20 16:43:44 ovandewi
* support D multiple of 32
*
* Revision 1.314 2006/04/18 06:56:39 ilyas
* Added commands for setting ATM cells portID
*
* Revision 1.313 2006/04/15 11:53:20 ovandewi
* annex M custom mode definition
*
* Revision 1.312 2006/03/24 18:01:38 ovandewi
* add SES retrain defs
*
* Revision 1.311 2006/03/22 08:53:44 jboxho
* Non-linear detection tool upgrade
*
* Revision 1.310 2006/02/24 19:38:55 ilyas
* Added I432 command to chnage header handler callback for more efficient EOP workaround implementation
*
* Revision 1.309 2006/02/16 19:39:05 ilyas
* Added AAL5 cell EOP monitoring
*
* Revision 1.308 2006/02/16 11:26:54 ovandewi
* use status to report drop reason
*
* Revision 1.307 2006/02/06 21:11:10 ilyas
* Implemented using to address dslSlowVars (conditional compile)
*
* Revision 1.306 2006/02/04 02:32:48 linyin
* Add AFE sample loss status
*
* Revision 1.305 2006/02/04 02:27:53 linyin
* Reduce the possiblity to AFE sample lose
*
* Revision 1.304 2006/01/31 16:35:41 jboxho
* PLN : Cycle optimization
*
* Revision 1.303 2006/01/30 17:03:46 jboxho
* PLN: Cycle issue solved for short loop, Nitro off and interleave mode
*
* Revision 1.302 2006/01/26 16:21:36 jboxho
* PLN tool: PLN message base re-initialized at each G994.1 start
*
* Revision 1.301 2006/01/16 15:15:06 jboxho
* PLN Fix for Bin Table Initialization
*
* Revision 1.300 2006/01/13 17:14:06 ovandewi
* PLN clean-up and add constants for diags compilation
*
* Revision 1.299 2006/01/12 00:12:35 ilyas
* Defined macros and functions for checking SDRAM write completion and cache writeback
*
* Revision 1.298 2006/01/05 04:05:34 dadityan
* PLN Status
*
* Revision 1.297 2006/01/04 16:38:00 jboxho
* PLN command update: Impulse duration and inter-arrival bin definition tables & PLN status command
*
* Revision 1.296 2005/12/24 00:01:33 ilyas
* Added definitions for PLN's programmable bins extensions
*
* Revision 1.295 2005/12/13 02:42:22 dslsjtst
* PLN Control for Counters Added
*
* Revision 1.294 2005/11/22 18:45:22 ilyas
* Added definitions for EC update in showtime (cold start), loop diagnostic (LD), SNR
*
* Revision 1.293 2005/11/02 18:17:20 ilyas
* Added status for PLN message base (negotiated in NSIF)
*
* Revision 1.292 2005/10/31 18:28:53 ovandewi
* add L2 disable flag + command if for pln margins
*
* Revision 1.291 2005/10/25 15:48:54 ovandewi
* PLN bit mask for adaptive status
*
* Revision 1.290 2005/10/21 21:13:49 ilyas
* Implemented queueing of background functions SoftDslBgScheduleXxx API
*
* Revision 1.289 2005/10/19 18:53:05 ilyas
* Added margin level parameters (spec) to PLNStart command
*
* Revision 1.288 2005/10/19 06:05:50 ilyas
* Enabled PLN and fix compile problems
*
* Revision 1.287 2005/10/13 22:14:53 ilyas
* Pass G992p3 capability structure to DslDiags for printing
*
* Revision 1.286 2005/10/11 03:55:45 ilyas
* Added more commands and statuses for PLN data
*
* Revision 1.285 2005/09/27 02:02:08 ilyas
* Added commands and statuses for PLN measurements
*
* Revision 1.284 2005/09/25 05:27:37 ilyas
* Added statuses for sample buffer reporting. Ifdef'ed out unused code
*
* Revision 1.283 2005/09/15 21:28:08 ilyas
* Made unaligned DebugData work by marking offset and DMAing from word aligned address
*
* Revision 1.282 2005/07/29 02:50:39 kdu
* PR30498: Report special value to driver for SNR margin in DELT mode
*
* Revision 1.281 2005/07/27 14:08:07 ovandewi
* annexM PSD mask G992.[35] info
*
* Revision 1.280 2005/07/19 23:01:55 ovandewi
* annex M EU 56 def
*
* Revision 1.279 2005/07/14 19:28:29 ilyas
* Added macros to print data buffers and printf with string id
*
* Revision 1.278 2005/06/24 21:51:39 ilyas
* Added definitions for debug data logging
*
* Revision 1.277 2005/06/10 17:37:25 yongbing
* Add status definition for RDI recovery
*
* Revision 1.276 2005/06/08 00:42:48 ilyas
* Merged G.994/T1.413 switch time change from 18c_branch
*
* Revision 1.275 2005/04/28 22:55:36 ilyas
* Cleaned up kDslG992RunAnnexaP3ModeInAnnexaP5, kG992EnableAnnexM and kDslAtuChangeTxFilterRequest definitions
*
* Revision 1.274 2005/04/27 20:57:32 yongbing
* Implement 32 frequency break points for TSSI, PR 30211
*
* Revision 1.273 2005/04/02 03:27:52 kdu
* PR30236: Define kDslEnableRoundUpDSLoopAttn, this is shared with kDslCentilliumCRCWorkAroundEnabled.
*
* Revision 1.272 2005/04/01 21:56:39 ilyas
* Added more test commands definitions
*
* Revision 1.271 2005/02/11 05:03:57 ilyas
* Added support for DslOs
*
* Revision 1.270 2005/02/11 03:33:22 lke
* Support 2X, 4X, and 8X spectrum in ANNEX_I DS
*
* Revision 1.269 2005/01/08 00:11:58 ilyas
* Added definition for AnnexL status
*
* Revision 1.268 2004/12/18 00:52:35 mprahlad
* Add Dig US Pwr cutback status
*
* Revision 1.267 2004/11/08 22:21:38 ytan
* init swap state after retrain
*
* Revision 1.266 2004/11/05 21:16:50 ilyas
* Added support for pwmSyncClock
*
* Revision 1.265 2004/10/28 20:05:17 gsyu
* Fixed compilation errors for simulation targets
*
* Revision 1.264 2004/10/23 00:16:35 nino
* Added kDslHardwareSetRcvAGC status to set absolute rcv agc gain.
*
* Revision 1.263 2004/10/22 21:21:06 ilyas
* Fixed bit definition overlap in demodCapabilities
*
* Revision 1.262 2004/10/20 00:43:20 gsyu
* Added constants to support new xmt sample buffer control scheme
*
* Revision 1.261 2004/10/12 01:09:28 nino
* Remove kDslHardwareEnablePwmSyncClk and kDslHardwareSetPwmSyncClkFreq
* status definitions. Add kDslEnablePwmSyncClk and kDslSetPwmSyncClkFreq
* command definitions.
*
* Revision 1.260 2004/10/11 20:21:26 nino
* Added kDslHardwareEnablePwmSyncClk and kDslHardwareSetPwmSynClkFreq hardware statuses.
*
* Revision 1.259 2004/10/07 19:17:29 nino
* Added kDslHardwareGetRcvAGC status.
*
* Revision 1.258 2004/10/02 00:17:14 nino
* Added kDslHardwareAGCSetPga2 and kDslSetPilotEyeDisplay status definitions.
*
* Revision 1.257 2004/08/27 01:00:30 mprahlad
*
* Keep kDslAtuChangeTxFilterRequest defined by default so ADSL1 only targets can
* build
*
* Revision 1.256 2004/08/20 19:00:34 ilyas
* Added power management code for 2+
*
* Revision 1.255 2004/08/17 23:18:25 kdu
* Merged interop changes for TDC lab from a023e9.
*
* Revision 1.254 2004/07/22 00:56:03 yongbing
* Add ADSL2 Annex B modulation definition
*
* Revision 1.253 2004/07/16 22:23:28 nino
* - Defined macros to extract subcarrier and supported set information
* for tssi. Subcarrier and suported set indicator is packed into
* dsSubcarrier index array.
*
* Revision 1.252 2004/07/01 00:11:22 nino
* Added preliminary code for debugDataHandler (inside of #if DEBUG_DATA_HANDLER).
*
* Revision 1.251 2004/06/24 03:08:39 ilyas
* Added GFC mapping control for ATM bonding
*
* Revision 1.250 2004/06/23 00:03:20 khp
* - shorten self test result register length to 1 (satisfied requirement
* at DT, no known requirement anywhere else)
*
* Revision 1.249 2004/06/15 20:18:33 ilyas
* Made D uchar again for compatibility with older ADSl drivers that use this structure. ADSL driver will rely on G992p3 parameters for large D
*
* Revision 1.248 2004/06/12 00:26:03 gsyu
* Added constants for AnnexM
*
* Revision 1.247 2004/06/10 18:53:24 yjchen
* add large D support
*
* Revision 1.246 2004/06/04 01:55:00 linyin
* Add a constant for SRA enable/disable
*
* Revision 1.245 2004/05/19 23:22:23 linyin
* Support L2
*
* Revision 1.244 2004/05/15 03:04:58 ilyas
* Added L3 test definition
*
* Revision 1.243 2004/05/14 03:04:38 ilyas
* Fixed structure name typo
*
* Revision 1.242 2004/05/14 02:01:01 ilyas
* Fixed structure name typo
*
* Revision 1.241 2004/05/14 01:21:49 nino
* Added kDslSignalAttenuation, kDslAttainableNetDataRate kDslHLinScale constant definitions.
*
* Revision 1.240 2004/05/13 19:07:58 ilyas
* Added new statuses for ADSL2
*
* Revision 1.239 2004/05/01 01:09:51 ilyas
* Added power management command and statuses
*
* Revision 1.238 2004/04/23 22:50:38 ilyas
* Implemented double buffering to ensure G.997 HDLC frame (OvhMsg) is continuous
*
* Revision 1.237 2004/03/31 18:57:39 ilyas
* Added drop on data error capability control
*
* Revision 1.236 2004/03/30 03:11:30 ilyas
* Added #ifdef for CFE build
*
* Revision 1.235 2004/03/29 23:06:39 ilyas
* Added status for BG table update
*
* Revision 1.234 2004/03/17 02:49:49 ilyas
* Turn off ATM bit reversal for Alcatel DSLAM only
*
* Revision 1.233 2004/03/11 03:09:48 mprahlad
* Add test mode for afeloopback test
*
* Revision 1.232 2004/03/10 23:15:53 ilyas
* Added ETSI modem support
*
* Revision 1.231 2004/03/04 19:28:14 linyin
* Support adsl2plus
*
* Revision 1.230 2004/02/28 00:06:21 ilyas
* Added OLR message definitions for ADSL2+
*
* Revision 1.229 2004/02/13 03:21:15 mprahlad
* define kDslAturHwAgcMaxGain correctly for 6348
*
* Revision 1.228 2004/02/09 05:06:17 yongbing
* Add ADSL2 bit swap function
*
* Revision 1.227 2004/02/04 02:08:19 linyin
* remove the redefined kG992p5AnnexA
*
* Revision 1.226 2004/02/04 01:41:48 linyin
* Add some variables for G992P5
*
* Revision 1.225 2004/02/03 19:12:22 gsyu
* Added a dedicate structure and constants for G992P5
*
* Revision 1.224 2004/01/24 01:18:34 ytan
* add multi-section swapping flag
*
* Revision 1.223 2004/01/17 00:21:48 ilyas
* Added commands and statuses for OLR
*
* Revision 1.222 2004/01/13 19:12:37 gsyu
* Added more constants for Double upstream
*
* Revision 1.221 2003/12/23 21:19:04 mprahlad
* Define BCM6348_TEMP_MOVE_TO_LMEM to FAST_TEXT for 6348 targets - this is for
* ADSL2/AnnexA multimode builds - move a few functions to Lmem for now to avoid
* changes for swap on 6348.
*
* Revision 1.220 2003/12/19 21:21:53 ilyas
* Added dying gasp support for ADSL2
*
* Revision 1.219 2003/12/05 02:09:51 mprahlad
* Leave the AnalogEC defs in - saves ifdef-ing all uses of these defines.
* Include Bcm6345_To_Bcm6348.h - to be able to pick up macros for the
* transition
*
* Revision 1.218 2003/12/04 02:10:58 linyin
* Redefine some constants for supporting different pilot and TTR
*
* Revision 1.217 2003/12/03 02:24:39 gsyu
* Reverse previous check in for Double Upstream demo
*
* Revision 1.215 2003/11/20 00:58:47 yongbing
* Merge ADSL2 functionalities into Annex A branch
*
* Revision 1.214 2003/11/06 00:35:06 nino
* Added kDslWriteAfeRegCmd and kDslReadAfeRegCmd commands.
*
* Revision 1.213 2003/11/05 21:04:23 ilyas
* Added more codes for LOG data
*
* Revision 1.212 2003/10/22 00:51:52 yjchen
* define constant for quiet line noise
*
* Revision 1.211 2003/10/20 22:08:57 nino
* Added kDslSetRcvGainCmd and kDslBypassRcvHpfCmd debug commands.
*
* Revision 1.210 2003/10/18 00:04:59 yjchen
* define constants for G992P3 diagnostic mode channel response
*
* Revision 1.209 2003/10/17 22:41:29 yongbing
* Add INP message support
*
* Revision 1.208 2003/10/16 00:06:09 uid1249
* Moved G.994 definitions from G.994p1MainTypes.h
*
* Revision 1.207 2003/10/15 20:45:11 linyin
* Add some constants for support Revision 2
*
* Revision 1.206 2003/10/14 22:04:02 ilyas
* Added Nino's AFE statuses for 6348
*
* Revision 1.205 2003/10/10 18:49:26 gsyu
* Added test modes to workaround the clock domain crossing bug, PR18038
*
* Revision 1.204 2003/09/30 19:27:46 mprahlad
* ifdef AnalogEC definies with #ifndef BCM6348_SRC
*
* Revision 1.203 2003/09/26 19:36:34 linyin
* Add annexi constant and vars
*
* Revision 1.202 2003/09/25 20:16:13 yjchen
* remove featureNTR definition
*
* Revision 1.201 2003/09/08 20:29:51 ilyas
* Added test commands for chip regression tests
*
* Revision 1.200 2003/08/26 00:58:14 ilyas
* Added I432 reset command (for header compression)
* Fixed SoftDsl time (for I432 header compression)
*
* Revision 1.199 2003/08/26 00:37:29 ilyas
* #ifdef'ed DslFrameFunctions in dslCommand structure to save space
*
* Revision 1.198 2003/08/22 22:45:00 liang
* Change the NF field in G992CodingParams from uchar to ushort to support K=256 (dataRate=255*32kbps) in fast path.
*
* Revision 1.197 2003/08/21 21:19:05 ilyas
* Changed dataPumpCapabilities structure for G992P3
*
* Revision 1.196 2003/08/12 22:44:28 khp
* - for Haixiang: added kDslTestMarginTweak command and marginTweakSpec
*
* Revision 1.195 2003/07/24 17:28:16 ovandewi
* added Tx filter change request code
*
* Revision 1.194 2003/07/24 15:48:55 yongbing
* Reduce TSSI buffer size to avoid crash at the beginning of G.994.1. Need to find out why
*
* Revision 1.193 2003/07/19 07:11:47 nino
* Revert back to version 1.191.
*
* Revision 1.191 2003/07/17 21:25:25 yongbing
* Add support for READSL2 and TSSI
*
* Revision 1.190 2003/07/14 19:42:33 yjchen
* add constants for G992P3
*
* Revision 1.189 2003/07/10 23:07:11 liang
* Add demodCapability bit to minimize showtime ATUC xmt power through b&g table.
*
* Revision 1.188 2003/07/08 22:18:50 liang
* Added demodCapability bit for G.994.1 Annex A multimode operation.
*
* Revision 1.187 2003/07/07 23:24:43 ilyas
* Added G.dmt.bis definitions
*
* Revision 1.186 2003/06/25 02:44:02 liang
* Added demod capability bit kDslUE9000ADI918FECFixEnabled.
* Added back kDslHWEnableAnalogECUpdate & kDslHWEnableAnalogEC for backward compatibility (annex A).
*
* Revision 1.185 2003/06/18 01:39:19 ilyas
* Added AFE test commands. Add #defines for driver's builds
*
* Revision 1.184 2003/06/06 23:58:09 ilyas
* Added command and status for standalone AFE tests
*
* Revision 1.183 2003/05/29 21:09:32 nino
* - kDslHWEnableAnalogECUpdate define replaced with kDslHWSetDigitalEcUpdateMode
* - kDslHWEnableAnalogEC define replaced with kDslHWDisableDigitalECUpdate
*
* Revision 1.182 2003/04/15 22:08:15 liang
* Changed one of the demodCapability bit name from last checkin.
*
* Revision 1.181 2003/04/13 19:25:54 liang
* Added three more demodCapability bits.
*
* Revision 1.180 2003/04/02 02:09:17 liang
* Added demodCapability bit for ADI low rate option fix disable.
*
* Revision 1.179 2003/03/18 18:22:06 yongbing
* Use 32 tap TEQ for Annex I
*
* Revision 1.178 2003/03/06 00:58:07 ilyas
* Added SetStausBuffer command
*
* Revision 1.177 2003/02/25 00:46:26 ilyas
* Added T1.413 EOC vendor ID
*
* Revision 1.176 2003/02/21 23:30:54 ilyas
* Added Xmtgain command framing mode status and T1413VendorId parameters
*
* Revision 1.175 2003/02/07 22:13:55 liang
* Add demodCapabilities bits for sub-sample alignment and higher T1.413 level (used internally only).
*
* Revision 1.174 2003/01/23 02:54:07 liang
* Added demod capability bit for bitswap enable.
*
* Revision 1.173 2002/12/13 18:36:33 yongbing
* Add support for G.992.2 Annex C
*
* Revision 1.172 2002/12/10 23:27:12 ilyas
* Extended dslException parameter structure to allow printout from DslDiags
*
* Revision 1.171 2002/12/06 02:10:19 liang
* Moved the T1.413 RAck1/RAck2 switching variables to connection setup structure.
* Added/Modified the training progress codes for T1.413 RAck1/RAck2 and upstream 2x IFFT disable.
*
* Revision 1.170 2002/11/11 00:20:05 liang
* Add demod capability constant for internally disabling upstream 2x IFFT in T1.413 mode.
*
* Revision 1.169 2002/11/06 03:46:19 liang
* Add training progress code for upstream 2x IFFT disable.
*
* Revision 1.168 2002/11/01 01:41:06 ilyas
* Added flags for Centillium 4103 workarround
*
* Revision 1.167 2002/10/26 01:26:11 gsyu
* Move SoftDslLineHandler from SDRAM to LMEM
*
* Revision 1.166 2002/10/20 18:56:20 khp
* - for linyin
* - #ifdef NEC_NSIF_WORKAROUND:
* - add macros to extract NSIF status and fail counter vars
*
* Revision 1.165 2002/10/14 05:24:35 liang
* Add training status code to request alternate xmt filter (for Samsung 6-port ADI918 DSLAMs) to meet KT 2km spec.
*
* Revision 1.164 2002/10/08 21:44:50 ilyas
* Fixed EOC stuffing byte to indicate "no synchronization" action
*
* Revision 1.163 2002/10/03 19:34:24 ilyas
* Added size for EOC serial number register
*
* Revision 1.162 2002/09/28 02:42:27 yongbing
* Add retrain in T1.413 with R-Ack1 tone
*
* Revision 1.161 2002/09/28 01:23:35 gsyu
* Reverse us2xifft change so that we can install new us2xifft on the tree
*
* Revision 1.160 2002/09/26 23:30:48 yongbing
* Add synch symbol detection in Showtime
*
* Revision 1.159 2002/09/20 23:47:52 khp
* - for gsyu: enable 2X IFFT for Annex A (XMT_FFT_SIZE_2X)
*
* Revision 1.158 2002/09/14 03:26:39 ilyas
* Changed far-end RDI reporting
*
* Revision 1.157 2002/09/13 21:10:54 ilyas
* Added reporting of remote modem LOS and RDI.
* Moved G992CodingParams definition to SoftDsl.h
*
* Revision 1.156 2002/09/12 21:07:19 ilyas
* Added HEC, OCD and LCD counters
*
* Revision 1.155 2002/09/09 21:31:30 linyin
* Add two constant to support long reach
*
* Revision 1.154 2002/09/07 01:31:51 ilyas
* Added support for OEM parameters
*
* Revision 1.153 2002/09/04 22:36:14 mprahlad
* defines for non standard info added
*
* Revision 1.152 2002/08/02 21:59:09 liang
* Enable G.992.2 carrierInfo in capabitilities when G.992.1 annex A is used for G.992.2.
*
* Revision 1.151 2002/07/29 20:01:03 ilyas
* Added command for Atm VC map table change
*
* Revision 1.150 2002/07/18 22:30:47 liang
* Add xmt power and power cutback related constants.
*
* Revision 1.149 2002/07/11 01:30:58 ilyas
* Changed status for ShowtimeMargin reporting
*
* Revision 1.148 2002/07/09 19:19:09 ilyas
* Added status parameters for ShowtimeSNRMargin info and command to filter
* out SNR margin data
*
* Revision 1.147 2002/06/27 21:50:24 liang
* Added test command related demodCapabilities bits.
*
* Revision 1.146 2002/06/26 21:29:00 liang
* Added dsl test cmd structure and showtime margin connection info status.
*
* Revision 1.145 2002/06/15 05:15:51 ilyas
* Added definitions for Ping, Dying Gasp and other test commands
*
* Revision 1.144 2002/05/30 19:55:15 ilyas
* Added status for ADSL PHY MIPS exception
* Changed conflicting definition for higher rates (S=1/2)
*
* Revision 1.143 2002/05/21 23:41:07 yongbing
* First check-in of Annex C S=1/2 codes
*
* Revision 1.142 2002/04/29 22:25:09 georgep
* Merge from branch annexC_demo - add status message constants
*
* Revision 1.141 2002/04/18 19:00:35 ilyas
* Added include file for builds in CommEngine environment
*
* Revision 1.140 2002/04/18 00:18:36 yongbing
* Add detailed timeout error messages
*
* Revision 1.139 2002/04/02 10:03:18 ilyas
* Merged BERT from AnnexA branch
*
* Revision 1.138 2002/03/26 01:42:29 ilyas
* Added timeout message constants for annex C
*
* Revision 1.137 2002/03/22 19:39:22 yongbing
* Modify for co-exist of G994P1 and T1P413
*
* Revision 1.136 2002/03/22 01:19:40 ilyas
* Add status message constants for total FEXT Bits, NEXT bits
*
* Revision 1.135 2002/03/10 22:32:24 liang
* Added report constants for LOS recovery and timing tone index.
*
* Revision 1.134 2002/03/07 22:06:32 georgep
* Replace ifdef G992P1 with G992P1_ANNEX_A for annex A variables
*
* Revision 1.133 2002/02/16 01:08:18 georgep
* Add log constant for showtime mse
*
* Revision 1.132 2002/02/08 04:36:27 ilyas
* Added commands for LOG file and fixed Idle mode pointer update
*
* Revision 1.131 2002/01/24 20:21:30 georgep
* Add logging defines, remove fast retrain defines
*
* Revision 1.130 2002/01/19 23:59:17 ilyas
* Added support for LOG and eye data to ADSL core target
*
* Revision 1.129 2002/01/16 23:43:54 liang
* Remove the carriage return character from last checkin.
*
* Revision 1.128 2002/01/15 22:27:13 ilyas
* Added command for ADSL loopback
*
* Revision 1.127 2002/01/10 07:18:22 ilyas
* Added status for printf (mainly for ADSL core debugging)
*
* Revision 1.126 2001/12/21 22:45:34 ilyas
* Added support for ADSL MIB data object
*
* Revision 1.125 2001/12/13 02:24:22 ilyas
* Added G997 (Clear EOC and G997 framer) support
*
* Revision 1.124 2001/11/30 05:56:31 liang
* Merged top of the branch AnnexBDevelopment onto top of the tree.
*
* Revision 1.123 2001/11/15 19:01:07 yongbing
* Modify only T1.413 part to the top of tree based on AnnexBDevelopment branch
*
* Revision 1.122 2001/10/19 00:12:07 ilyas
* Added support for frame oriented (no ATM) data link layer
*
* Revision 1.121 2001/10/09 22:35:13 ilyas
* Added more ATM statistics and OAM support
*
* Revision 1.105.2.20 2001/11/27 02:32:03 liang
* Combine vendor ID, serial #, and version number into SoftModemVersionNumber.c.
*
* Revision 1.105.2.19 2001/11/21 01:29:14 georgep
* Add a status message define for annexC
*
* Revision 1.105.2.18 2001/11/08 23:26:28 yongbing
* Add carrier selection function for Annex A and B
*
* Revision 1.105.2.17 2001/11/07 22:55:30 liang
* Report G992 rcv msg CRC error as what it is instead of time out.
*
* Revision 1.105.2.16 2001/11/05 19:56:21 liang
* Add DC offset info code.
*
* Revision 1.105.2.15 2001/10/16 00:47:16 yongbing
* Add return-to-T1p413 starting point if in error
*
* Revision 1.105.2.14 2001/10/15 23:14:01 yjchen
* remove ADSL_SINGLE_SYMBOL_BLOCK
*
* Revision 1.105.2.13 2001/10/12 18:07:16 yongbing
* Add support for T1.413
*
* Revision 1.105.2.12 2001/10/04 00:23:52 liang
* Add connection info constants for TEQ coef and PSD.
*
* Revision 1.105.2.11 2001/10/03 01:44:01 liang
* Merged with codes from main tree (tag SoftDsl_2_18).
*
* Revision 1.105.2.10 2001/09/28 22:10:04 liang
* Add G994 exchange message status reports.
*
* Revision 1.105.2.9 2001/09/26 18:08:21 georgep
* Send status error message in case features field is not setup properly
*
* Revision 1.105.2.8 2001/09/05 01:58:13 georgep
* Added status message for annexC measured delay
*
* Revision 1.105.2.7 2001/08/29 00:37:52 georgep
* Add log constants for annexC
*
* Revision 1.105.2.6 2001/08/18 00:01:34 georgep
* Add constants for annexC
*
* Revision 1.105.2.5 2001/08/08 17:33:28 yongbing
* Merge with tag SoftDsl_2_17
*
* Revision 1.120 2001/08/29 02:56:01 ilyas
* Added tests for flattening/unflatenning command and statuses (dual mode)
*
* Revision 1.119 2001/08/28 03:26:32 ilyas
* Added support for running host and adsl core parts separately ("dual" mode)
*
* Revision 1.118 2001/08/16 02:16:10 khp
* - mark functions with FAST_TEXT to reduce cycle counts for QPROC targets
* (replaces use of LMEM_INSN)
*
* Revision 1.117 2001/06/18 20:06:35 ilyas
* Added forward declaration of dslCommandStruc to avoid gcc warnings
*
* Revision 1.116 2001/06/18 19:49:36 ilyas
* Changes to include support for HOST_ONLY mode
*
* Revision 1.115 2001/06/01 22:00:33 ilyas
* Changed ATM PHY interface to accomodate UTOPIA needs
*
* Revision 1.114 2001/05/16 06:22:24 liang
* Added status reports for xmt & rcv prefix enable position.
*
* Revision 1.113 2001/05/02 20:34:32 georgep
* Added log constants for snr1 calculation
*
* Revision 1.112 2001/04/25 01:20:11 ilyas
*
* Don't use DSL frame functions if ATM_LAYER is not defined
*
* Revision 1.111 2001/04/17 21:13:00 georgep
* Define status constant kDslHWSetDigitalEcUpdateShift
*
* Revision 1.110 2001/04/16 23:38:36 georgep
* Add HW AGC constants for ATUR
*
* Revision 1.109 2001/04/06 23:44:53 georgep
* Added status constant for setting up digitalEcGainShift
*
* Revision 1.108 2001/03/29 05:58:34 liang
* Replaced the Aware compatibility codes with automatic detection codes.
*
* Revision 1.107 2001/03/25 06:11:22 liang
* Combined separate loop attenuation status for ATUR & ATUC into one status.
* Replace separate hardware AGC info status for ATUR & ATUC into hardware AGC
* request status and hardware AGC obtained status.
* Use store AGC command to save hardware AGC value instead of returning value
* from status report.
*
* Revision 1.106 2001/03/24 00:43:22 liang
* Report more checksum results (NumOfCalls, txSignal, rxSignal & eyeData).
*
* Revision 1.105 2001/03/16 23:57:31 georgep
* Added more loop attenuation reporting status constants
*
* Revision 1.104 2001/03/15 00:22:07 liang
* Back to version 1.101.
*
* Revision 1.103 2001/03/15 00:03:44 yjchen
* use kDslATURHardwareAGCInfo for AltoE14 AGC as well
*
* Revision 1.102 2001/03/14 23:10:56 yjchen
* add defns for AltoE14 AGC
*
* Revision 1.101 2001/03/08 23:31:34 georgep
* Added R, S, D, coding parameters to dslDataPumpCapabilities
*
* Revision 1.100 2001/02/10 03:03:09 ilyas
* Added one more DslFrame function
*
* Revision 1.99 2001/02/09 01:55:27 ilyas
* Added status codes and macros to support printing of AAL packets
*
* Revision 1.98 2001/01/30 23:28:10 georgep
* Added kDslDspControlStatus for handling changes to dsp params
*
* Revision 1.97 2001/01/12 01:17:18 georgep
* Added bit in demodCapabilities for analog echo cancellor
*
* Revision 1.96 2001/01/04 05:51:03 ilyas
* Added more dslStatuses
*
* Revision 1.95 2000/12/21 05:46:07 ilyas
* Added name for struct _dslFrame
*
* Revision 1.94 2000/12/13 22:04:39 liang
* Add Reed-Solomon coding enable bit in demodCapabilities.
*
* Revision 1.93 2000/11/29 20:42:02 liang
* Add defines for SNR & max achivable rate status and DEC enable demodCapabilities bit.
*
* Revision 1.92 2000/09/22 21:55:13 ilyas
* Added support for DSL + Atm physical layer only (I.432) simulations
*
* Revision 1.91 2000/09/10 09:20:53 lkaplan
* Improve interface for sending Eoc messages
*
* Revision 1.90 2000/09/08 19:37:58 lkaplan
* Added code for handling EOC messages
*
* Revision 1.89 2000/09/07 23:02:27 georgep
* Add HarwareAGC Bit to demod Capabilities
*
* Revision 1.88 2000/09/01 00:57:34 georgep
* Added Hardware AGC status defines
*
* Revision 1.87 2000/08/31 19:04:26 liang
* Added external reference for stack size requirement test functions.
*
* Revision 1.86 2000/08/24 23:16:46 liang
* Increased sample block size for noBlock.
*
* Revision 1.85 2000/08/23 18:34:39 ilyas
* Added XxxVcConfigure function
*
* Revision 1.84 2000/08/05 00:25:04 georgep
* Redefine sampling freq constants
*
* Revision 1.83 2000/08/03 14:04:00 liang
* Add hardware time tracking clock error reset code.
*
* Revision 1.82 2000/07/23 20:52:52 ilyas
* Added xxxFrameBufSetAddress() function for ATM framer layers
* Rearranged linkLayer functions in one structure which is passed as a
* parameter to xxxLinkLayerInit() function to be set there
*
* Revision 1.81 2000/07/18 20:03:24 ilyas
* Changed DslFrame functions definitions to macros,
* Removed gDslVars from their parameter list
*
* Revision 1.80 2000/07/17 21:08:15 lkaplan
* removed global pointer
*
* Revision 1.79 2000/06/21 20:38:44 georgep
* Added bit to demodCapabilities for HW_TIME_TRACKING
*
* Revision 1.78 2000/06/19 19:57:55 georgep
* Added constants for logging of HWResampler data
*
* Revision 1.77 2000/06/02 18:57:21 ilyas
* Added support for DSL buffers consisting of many ATM cells
*
* Revision 1.76 2000/05/27 02:19:28 liang
* G992MonitorParams structure is moved here, and Tx/Rx data handler type definitions changed.
*
* Revision 1.75 2000/05/15 18:17:21 liang
* Added statuses for sent and received frames
*
* Revision 1.74 2000/05/14 01:56:38 ilyas
* Added ATM cell printouts
*
* Revision 1.73 2000/05/09 23:00:26 ilyas
* Added ATM status messages, ATM timer, Tx frames flush on timeout
* Fixed a bug - adding flushed Tx frames to the list of free Rx frames
*
* Revision 1.72 2000/05/03 18:01:18 georgep
* Removed old function declarations for Eoc/Aoc
*
* Revision 1.71 2000/05/03 03:57:04 ilyas
* Added LOG file support for writing ATM data
*
* Revision 1.70 2000/05/02 00:04:36 liang
* Add showtime monitoring and message exchange info constants.
*
* Revision 1.69 2000/04/28 23:34:20 yongbing
* Add constants for reporting error events in performance monitoring