Skip to content
Snippets Groups Projects
dsl_cpe_interface.h 43.1 KiB
Newer Older
  • Learn to ignore specific revisions
  • 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
    /******************************************************************************
    
             Copyright (c) 2019 Intel Corporation
    
      For licensing information, see the file 'LICENSE' in the root folder of
      this software module.
    
    *******************************************************************************/
    #define PATH_SEPARATOR "."
    #define DSL_SECTION_PATH "dsl"
    
    /*! \file dsl_cpe_interface.h
       \brief File contains the structure and function definitions for DSL functionality.
       The objects definitions are based on TR-181 definitions.
    */
    
    /*! \defgroup DSL_STATUS_PARSER Intel DSL Status Parser
     * Lists the entire modules from the DSL CPE Status Parser */
    
    /** \defgroup DSL_STATUS DSL Status
     * Lists the entire modules from the DSL CPE Status group 
     * \ingroup DSL_STATUS_PARSER */
    /** @{  */
    
    
    /** The current operational state of the DSL line (see [Section 4.2.2/TR-181i2]).
        This parameter is based on ifOperStatus from [RFC2863]
        Enumeration of
        - Up
        - Down
        - Unknown (not used)
        - Dormant (not used)
        - NotPresent (not used)
       - LowerLayerDown (not used)
       - Error */
    #define DSL_STAT_LINE_STATUS "status"
    
    /**
       Indicates whether the interface points towards the Internet or towards End Devices.
       Indicates whether the interface points towards the Internet (true) 
       or towards End Devices (false).
       This parameter is always returned as true */
    #define DSL_STAT_UPSTREAM "upstream"
    
    /**
       A string identifying the version of the modem firmware currently installed.
       A string identifying the version of the modem firmware currently installed
       for this interface.
       This is applicable only when the modem firmware is separable from the overall
       CPE software */
    #define DSL_STAT_FIRMWARE_VERSION "firmware_version"
    
    /** Status of the DSL physical link. Enumeration of
        - Up
        - Initializing
        - EstablishingLink
        - NoSignal (not used, upper layer handling)
        - Disabled
        - Error */
    #define DSL_STAT_LINK_STATUS "link_status"
    
    /** 
       List items indicate which DSL standards and recommendations are supported. 
       List items indicate which DSL standards and recommendations are supported 
       by the Line instance.
       Comma-separated list of strings. Each list item is an enumeration of
        - T1.413
        - ETSI_101_388
        - G.992.1_Annex_A
        - G.992.1_Annex_B
        - G.992.1_Annex_C (not supported)
        - G.992.2_Annex_A
        - G.992.2_Annex_B (not supported)
        - G.992.2_Annex_C (not supported)
        - G.992.3_Annex_A
        - G.992.3_Annex_B
        - G.992.4_Annex_A
        - G.992.3_Annex_I
        - G.992.3_Annex_J
        - G.992.4_Annex_I (not supported)
        - G.992.3_Annex_L
        - G.992.3_Annex_M
        - G.992.5_Annex_A
        - G.992.5_Annex_B
        - G.992.5_Annex_I
        - G.992.5_Annex_J
        - G.992.5_Annex_M
        - G.993.2_Annex_A
        - G.993.2_Annex_B
        - G.993.2_Annex_C
          \note In G.997.1, this parameter is called 
             "xDSL Transmission system capabilities".
              See ITU-T Recommendation [G.997.1]*/
    #define DSL_STAT_STANDARDS_SUPPORTED "standards_supported"
    
    /**
       This configuration parameter defines the transmission system types.
       This configuration parameter defines the transmission system types 
       to be allowed by the xTU on this Line instance.
        Each bit is 0 if not allowed or 1 if allowed, as defined for the xTU 
        transmission system enabling (XTSE)
        in ITU-T G.997.1
        \note This parameter is defined as xDSL Transmission system enabling (XTSE) 
             in ITU-T G.997.1.
             For a full definition, see Clause 7.3.1.1.1 of ITU-T 
             Recommendation [G.997.1]*/
    #define DSL_STAT_XTSE "xtse"
    
    /**
       The value MUST be a member of the list reported by the \ref standards_supported parameter.
       Indicates the standard that the Line instance is using for the connection.
          \note In G.997.1, this parameter is called "xDSL Transmission system".
              See ITU-T Recommendation [G.997.1] */
    #define DSL_STAT_STANDARD_USED "standard_used"
    
    /**
       This parameter indicates which DSL standard and recommendation are currently in use.
       This parameter indicates which DSL standard and recommendation are currently
       in use by the Line instance.
       Only one bit is set, as defined for the xTU transmission system enabling
       (XTSE) in ITU-T G.997.1*/
    #define DSL_STAT_XTSE_USED "xtse_used"
    
    /**
       The line encoding method used in establishing the Layer 1 DSL connection.
       The line encoding method used in establishing the Layer 1 DSL connection 
       between the CPE and the DSLAM.
       This parameter is always returned as "DMT" */
    #define DSL_STAT_LINE_ENCODING "line_encoding"
    
    /** List items indicate which VDSL2 profiles are allowed on the line.
        Comma-separated list of strings. Each list item is an enumeration of
        - 8a
        - 8b
        - 8c
        - 8d
        - 12a
        - 12b
        - 17a
        - 30a
        - 35b
        \note In G.997.1, this parameter is called PROFILES.
              See ITU-T Recommendation [G.997.1]*/
    #define DSL_STAT_ALLOWED_PROFILES "allowed_profiles"
    
    /**
       The value MUST be a member of the list reported by the \ref allowed_profiles parameter.
       Or else be an empty string. Indicates which VDSL2 profile is currently in 
       use on the line*/
    #define DSL_STAT_CURRENT_PROFILE "current_profile"
    
    /** The power management state of the line.
       Enumeration of
        - L0
        - L1
        - L2
        - L3
        - L4 (not supported)
          \note See ITU-T Recommendation [G.997.1]. */
    #define DSL_STAT_POWER_MANAGEMENT_STATE "power_management_state"
    
    /**
       The success failure cause of the initialization.
       An enumeration of the following integer values
        - 0: Successful
        - 1: Configuration error
             This error occurs with inconsistencies in configuration parameters, 
             e.g. when the line is initialized in an xDSL Transmission system where
             an xTU does not support the configured Maximum Delay or the configured
             Minimum or Maximum Data Rate for one or more bearer channels
        - 2: Configuration not feasible on the line
             This error occurs if the Minimum Data Rate cannot be reached on the 
             line with the Minimum Noise Margin, Maximum PSD level, Maximum Delay
             and Maximum Bit Error Ratio for one or more bearer channels
        - 3: Communication problem
             This error occurs, for example, due to corrupted messages or bad syntax
             messages or if no common mode can be selected in the G.994.1
             handshaking procedure or due to a timeout
        - 4: No peer xTU detected
             This error occurs if the peer xTU is not powered or not connected or if
             the line is too long to allow detection of a peer xTU
        - 5: Any other or unknown Initialization Failure cause
    
          \note In G.997.1, this parameter is called "Initialization 
             success/failure cause"
             See ITU-T Recommendation [G.997.1]*/
    #define DSL_STAT_SUCCESS_FAILURE_CAUSE "success_failure_cause"
    
    /**
       This parameter represents the last successful transmitted initialization state.
       This parameter represents the last successful transmitted initialization 
       state in the last full initialization performed on the line.
       Initialization states are defined in the individual xDSL Recommendations and
       are counted from 0 (if G.994.1 is used) or 1 (if G.994.1 is not used) up to
       Showtime.
       This parameter needs to be interpreted along with the 
       xDSL Transmission System.
       This parameter is available only when, after a failed full initialization, 
       the line diagnostics procedures
       are activated on the line.
    
        - last_state_transmitted.us for upstream direction
        - last_state_transmitted.ds for downstream direction
    
        \note See ITU-T Recommendation [G.997.1]*/
    #define DSL_STAT_LAST_STATE_TRANSMITTED "last_state_transmitted"
    
    /**
       Indicates the allowed VDSL2 US0 PSD masks for Annex A operation
       Bit mask as specified in ITU-T Recommendation G.997.1
          \note For a VDSL2-capable multimode device operating in a mode other 
             than VDSL2, the value of this parameter SHOULD be set to 0.
          \note See ITU-T Recommendation [G.997.1] */
    #define DSL_STAT_US0_MASK "us0_mask"
    
    /**
       Reports whether trellis coding is enabled.
       A value of 1 indicates that trellis coding is in use, and a value of 0 
       indicates that the trellis is disabled.
    
       - trellis.us for upstream direction
       - trellis.ds for downstream direction
    
          \note For a multimode device operating in a mode in which this parameter
             does not apply, the value of this parameter SHOULD be set to -1.
          \note See ITU-T Recommendation [G.997.1] */
    #define DSL_STAT_TRELLIS "trellis"
    
    /** 
       Reports whether the OPTIONAL virtual noise mechanism is in use.
          A value of 1 indicates the virtual noise mechanism is not in use, 
          and a value of 2 indicates the virtual noise mechanism is in use.
    
           - act_snr_mode.us for upstream direction
           - act_snr_mode.ds for downstream direction
    
             \note For a multimode device operating in a mode in which this parameter
             does not apply, the value of this parameter SHOULD be set to 0.
             \note See ITU-T Recommendation [G.997.1] */
    #define DSL_STAT_ACT_SNR_MODE "act_snr_mode"
    
    /** Signifies the line pair that the modem is using to connection
        LineNumber = 1 is the innermost pair */
    #define DSL_STAT_LINE_NUMBER "line_number"
    
    /** The current maximum attainable data rate (expressed in Kbps) 
       - max_bit_rate.us: The current maximum attainable data rate upstream
       - max_bit_rate.ds: The current maximum attainable data rate downstream
        \note This parameter is related to the G.997.1 parameter ATTNDRus,
        which is measured in bits/s.
        \note See ITU-T Recommendation [G.997.1] */
    #define DSL_STAT_MAX_BIT_RATE "max_bit_rate"
    
    /** The current signal-to-noise ratio margin (expressed in 0.1dB)
       - noise_margin.us: The current signal-to-noise ratio margin in the 
          upstream direction
       - noise_margin.ds: The current signal-to-noise ratio margin in the 
          downstream direction
        \note In G.997.1, this parameter is called SNRMus.
        \note See ITU-T Recommendation [G.997.1] */
    #define DSL_STAT_NOISE_MARGIN "noise_margin"
    
    /** 
       Comma-separated list (maximum list length 24) of strings.
       Indicates the current signal-to-noise ratio margin.
    
       - snr_mpb.us for upstream band
       - snr_mpb.ds for downstream band
    
       \note Interpretation of the values is as defined in ITU-T Rec. G.997.1.
       \note See ITU-T Recommendation [G.997.1] */
    #define DSL_STAT_SNR_MPB "snr_mpb"
    
    /**
       The current output or received power at the CPE's DSL line.
       - power.us: The current output power at the CPE's DSL line 
          (expressed in 0.1dBmV) 
       - power.ds: The current received power at the CPE's DSL line 
          (expressed in 0.1dBmV)*/
    #define DSL_STAT_POWER "power"
    
    /**
       xTU-R vendor identifier as defined in G.994.1 and T1.413.
       In the case of G.994.1 this corresponds to the four-octet provider code,
       which MUST be represented as eight hexadecimal digits.
          \note This parameter is OPTIONAL at the G and S/T interfaces in G.997.1
          Amendment 1.
          \note If the parameter is implemented but no value is available,
          it MUST have the value "00000000".
          \note In G.997.1, this parameter is called "xTU-R G.994.1 Vendor ID".
          \note See ITU-T Recommendation [G.997.1] */
    #define DSL_STAT_XTUR_VENDOR "xtur_vendor"
    
    /**
       T.35 country code of the xTU-R vendor as defined in G.994.1,
       where the two-octet value defined in G.994.1 MUST be represented as
       four hexadecimal digits
          \note This parameter is OPTIONAL at the G and S/T interfaces in G.997.1
          Amendment 1.
          \note If the parameter is implemented but no value is available,
          it MUST have the value "0000".
          \note In G.997.1, this parameter is called "xTU-R G.994.1 Vendor ID".
          \note See ITU-T Recommendation [G.997.1] */
    #define DSL_STAT_XTUR_COUNTRY "xtur_country"
    
    /**
       xTU-R T1.413 Revision Number as defined in T1.413 Issue 2
          \note When T1.413 modulation is not in use,
          the parameter value SHOULD be 0 */
    #define DSL_STAT_XTUR_ANSI_STD "xtur_ansi_std"
    
    /**
       xTU-R Vendor Revision Number as defined in T1.413 Issue 2.
          \note When T1.413 modulation is not in use,
          the parameter value SHOULD be 0 */
    #define DSL_STAT_XTUR_ANSI_REV "xtur_ansi_rev"
    
    /**
       xTU-C vendor identifier as defined in G.994.1 and T1.413.
       In the case of G.994.1 this corresponds to the four-octet provider code,
       which MUST be represented as eight hexadecimal digits
          \note This parameter is OPTIONAL at the G and S/T interfaces in G.997.1 
          Amendment 1.
          \note If the parameter is implemented but no value is available,
          it MUST have the value "00000000" */
    #define DSL_STAT_XTUC_VENDOR "xtuc_vendor"
    
    /**
       T.35 country code of the xTU-C vendor as defined in G.994.1,
       where the two-octet value defined in G.994.1 MUST be represented as 
       four hexadecimal digits.
          \note This parameter is OPTIONAL at the G and S/T
          interfaces in G.997.1 Amendment 1.
          \note If the parameter is implemented but no value is available,
          it MUST have the value "0000". */
    #define DSL_STAT_XTUC_COUNTRY "xtuc_country"
    
    /**
       xTU-C T1.413 Revision Number as defined in T1.413 Issue 2.
          \note When T1.413 modulation is not in use,
          the parameter value SHOULD be 0. */
    #define DSL_STAT_XTUC_ANSI_STD "xtuc_ansi_std"
    
    /** 
       xTU-C Vendor Revision Number as defined in T1.413 Issue 2.
          \note When T1.413 modulation is not in use,
          the parameter value SHOULD be 0. */
    #define DSL_STAT_XTUC_ANSI_REV "xtuc_ansi_rev"
    
    
    /**
       Comma-separated list of unsigned integers (value 0 to 1280, or 2047).
       VTU-R estimated upstream power back-off electrical length per band.
       This parameter is a vector of UPBO electrical length per-band estimates for 
       each supported downstream band, expressed in 0.1 dB at 1 MHz (kl0) calculated
       by the VTU-R, based on separate measurements in the supported downstream bands. 
       The value of each list element ranges from 0 to 128 dB in steps of 0.1 dB, 
       with special value 204.7 which indicates that the estimate is greater than 
       128 dB.
       This parameter is required for the alternative electrical length estimation 
       method (ELE-M1). The value of each list element is coded as an unsigned 
       16 bit number in the range 0 (coded as 0) to 128 dB (coded as 1280) 
       in steps of 0.1 dB.
    
          \note This parameter is defined as UPBOKLE-R-pb in Clause 7.5.1.23.4 of
             ITU-T Recommendation [G.997.1]. */
    #define DSL_STAT_UPBOKLER_PB "upbokler_pb"
    
    /**
       UPBO downstream receiver signal level threshold.
       This parameter reports the downstream received signal level threshold value 
       used in the alternative electrical length estimation method (ELE-M1). 
       This parameter represents an offset from -100 dBm/Hz, and ranges from -64 dB
       to 0 dB in steps of 0.1 dB.
       The value is coded as a 16 bit number in the range -64 (coded as -640) to 
       0 dB (coded as 0) in steps of 0.1 dB.
       
          \note See ITU-T Recommendation [G.997.1]. */
    #define DSL_STAT_RXTHRSH_DS "rxthrsh_ds"
    
    /**
       This parameter indicates the actual active rate adaptation mode.
       - 2: the link is operating in RA-MODE 2 (AT_INIT).
       - 3: the link is operating in RA-MODE 3 (DYNAMIC).
       - 4: the link is operating in RA-MODE 4 (DYNAMIC with SOS).
    
       - act_ra_mode.us for upstream direction
       - act_ra_mode.ds for downstream direction
    
          \note This parameter is defined as ACT-RA-MODEds in Clause 7.5.1.33.1 of 
          ITU-T Recommendation [G.997.1]. */
    #define DSL_STAT_ACT_RA_MODE "act_ra_mode"
    
    /**
       This parameter reports the actual signal-to-noise margin of the robust overhead channel
       (ROC)
       in the upstream direction (expressed in 0.1 dB). The format is identical to 
       the format of the line
       status parameter SNRM margin (noise_margin).
    
          \note This parameter is defined as SNRM-ROC-us in Clause 7.5.1.35.2 ITU-T 
          Recommendation [G.997.1]. */
    #define DSL_STAT_SNR_MROC "snr_mroc"
    
    /**
       The current upstream or downstream signal loss (expressed in 0.1dB).
       - attenuation.us = The current upstream signal loss.
       - attenuation.ds = The current downstream signal loss.*/
    #define DSL_STAT_ATTENUATION "attenuation"
    
    /** 
       The current operational state of the DSL channel (see [Section 4.2.2/TR-181i2]).
       This parameter is based on ifOperStatus from [RFC2863].
       Enumeration of
       - Up
       - Down
       - Unknown (not used)
       - Dormant (not used)
       - NotPresent (not used)
       - LowerLayerDown (not used)
       - Error */
    #define DSL_STAT_CHANNEL_STATUS "status"
    
    /**
       Comma-separated list of strings. List items indicate which link encapsulation
       standards and recommendations are supported by the Channel instance.
       Enumeration of:
       - G.992.3_Annex_K_ATM
       - G.992.3_Annex_K_PTM
       - G.993.2_Annex_K_ATM
       - G.993.2_Annex_K_PTM
       - G.994.1 (Auto) */
    #define DSL_STAT_LINK_ENCAPSULATION_SUPPORTED "link_encapsulation_supported"
    
    /**
       Indicates the link encapsulation standard that the Channel instance is using 
       for the connection.
       Enumeration of:
       - G.992.3_Annex_K_ATM
       - G.992.3_Annex_K_PTM
       - G.993.2_Annex_K_ATM
       - G.993.2_Annex_K_PTM */
    #define DSL_STAT_LINK_ENCAPSULATION_USED "link_encapsulation_used"
    
    /**
       Reports the index of the latency path supporting the bearer channel.
          \note See ITU-T Recommendation [Section 7.5.2.7/G.997.1]. */
    #define DSL_STAT_LPATH "lpath"
    
    /**
       Reports the interleaver depth D for the latency path indicated in \ref lpath.
          \note See ITU-T Recommendation [G.997.1].
          \note For a multimode device operating in a mode in which this parameter 
          does not apply,
          the value of this parameter SHOULD be set to 0. */
    #define DSL_STAT_INTLVDEPTH "intlvdepth"
    
    /** 
       Reports the interleaver block length in use on the latency path indicated in 
       \ref lpath.
          \note See ITU-T Recommendation [G.997.1].
          \note For a multimode device operating in a mode in which this parameter 
          does not apply,
          the value of this parameter SHOULD be set to -1. */
    #define DSL_STAT_INTLVBLOCK "intlvblock"
    
    /**
       Reports the actual delay, in milliseconds, of the latency path due to interleaving.
          \note See ITU-T Recommendation [G.997.1]. */
    #define DSL_STAT_ACTUAL_INTERLEAVING_DELAY "actual_interleaving_delay"
    
    /**
       Reports the actual impulse noise protection (INP) provided by the latency 
       path indicated in \ref lpath.
       The value is the actual INP in the L0 (i.e., Showtime) state.
          \note See ITU-T Recommendation [G.997.1].
          \note For a multimode device operating in a mode in which this 
          parameter does not apply,
          the value of this parameter SHOULD be set to -1. */
    #define DSL_STAT_ACTINP "actinp"
    
    /**
       Reports whether the value reported in \ref actinp was computed assuming the 
       receiver does not use erasure decoding.
       Valid values:
       - 0 (computed per the formula assuming no erasure decoding)
       - 1 (computed by taking into account erasure decoding capabilities of receiver).
    
          \note See ITU-T Recommendation [G.997.1].
          \note For a multimode device operating in a mode in which this 
          parameter does not apply,
          the value of this parameter SHOULD be set to false. */
    #define DSL_STAT_INPREPORT "inpreport"
    
    /**
       Reports the size, in octets, of the Reed-Solomon codeword in use on the 
       latency path indicated in \ref lpath.
          \note See ITU-T Recommendation [G.997.1].
          \note For a multimode device operating in a mode in which this 
          parameter does not apply,
          the value of this parameter SHOULD be set to -1. */
    #define DSL_STAT_NFEC "nfec"
    
    /**
       Reports the number of redundancy bytes per Reed-Solomon codeword on the 
       latency path indicated in \ref lpath.
          \note See ITU-T Recommendation [G.997.1].
          \note For a multimode device operating in a mode in which this parameter 
          does not apply,
          the value of this parameter SHOULD be set to -1. */
    #define DSL_STAT_RFEC "rfec"
    
    /**
       Reports the number of bits per symbol assigned to the latency path indicated in \ref lpath.
       This value does not include overhead due to trellis coding.
          \note See ITU-T Recommendation [G.997.1].
          \note For a multimode device operating in a mode in which this parameter
          does not apply, the value of this parameter SHOULD be set to -1. */
    #define DSL_STAT_LSYMB "lsymb"
    
    /** 
       The current physical layer aggregate data rate (expressed in Kbps).
       - curr_rate.us = The current physical layer aggregate data rate of the 
          upstream DSL connection.
       - curr_rate.ds = The current physical layer aggregate data rate of the 
          downstream DSL connection. */
    #define DSL_STAT_CURR_RATE "curr_rate"
    
    /**
       Obsolete actual net data rate 
       - actndr.us = Actual net data rate expressed in Kbps in upstream direction:
       In L0 state, this parameter reports the net data rate at which the bearer 
       channel is operating. 
       In L2 state, the parameter contains the net data rate in the previous L0 state.
          \note See [ITU T G.992.3], [ITU T G.992.5], [ITU T G.993.2].
          \note See ITU-T Recommendation [G.997.1]."
       - actndr.ds = Actual net data rate expressed in Kbps in downstream direction:
       In L0 state, this parameter reports the net data rate at which the bearer 
       channel is operating.
       In L2 state, the parameter contains the net data rate in the previous L0 state.
          \note See [ITU T G.992.3], [ITU T G.992.5], [ITU T G.993.2].
          \note See ITU-T Recommendation [G.997.1]." */
    #define DSL_STAT_ACTNDR "actndr"
    
    /** 
       Obsolete actual impulse noise protection 
    
       - actinprein.us = Actual impulse noise protection in downstream direction 
       against REIN, expressed in 0.1 DMT symbols.
       If retransmission is used in a given transmit direction, 
       this parameter reports the actual impulse noise protection (INP) against REIN
       (under specific conditions detailed in [ITU T G.998.4]) on the bearer 
       channel in the L0 state. In the L2 state, the parameter contains the INP in
       the previous L0 state. The value is coded in fractions of DMT symbols with a
       granularity of 0.1 symbols. The range is from 0 to 25.4. A special value of 
       25.5 indicates an ACTINP_REIN of 25.5 or higher.
          \note This parameter is defined as ACTINP_REIN in Clause 7.5.2.9 of ITU-T
             Recommendation [G.997.1].
    
       - actinprein.ds = Actual impulse noise protection in upstream direction 
       against REIN, expressed in 0.1 DMT symbols.
       If retransmission is used in a given transmit direction, this parameter 
       reports the actual impulse noiseprotection (INP) against REIN 
       (under specific conditions detailed in [ITU T G.998.4]) on the bearer channel
       in the L0 state. In the L2 state, the parameter contains the INP in the 
       previous L0 state. The value is coded in fractions of DMT symbols with a 
       granularity of 0.1 symbols. The range is from 0 to 25.4. A special value of 
       25.5 indicates an ACTINP_REIN of 25.5 or higher.
          \note This parameter is defined as ACTINP_REIN in Clause 7.5.2.9 of ITU-T 
             Recommendation [G.997.1].
    */
    #define DSL_STAT_ACTINPREIN "actinprein"
    
    /** @} */
    
    /** \defgroup DSL_STATS DSL Stats
     * Lists the entire modules from the DSL CPE Stats group.
     * \ingroup DSL_STATUS_PARSER */
    /** @{ */
    
    /**
       Seconds since the start of the period used for collection of Total statistics.
       Statistics SHOULD continue to be accumulated across CPE reboots, 
       though this might not always be possible.
       \note total_start SHOULD NOT be reset when the interface statistics are reset
       via an interface disable / enable cycle. */
    #define DSL_STAT_TOTAL_START "total_start"
    
    /**
       The Number of seconds since the most recent DSL Showtime 
       The beginning of the period used for collection of Showtime statistics.
       Showtime is defined as successful completion of the DSL link establishment 
       process. The Showtime statistics are those collected since the most recent
       establishment of the DSL link.
       \note showtime_start SHOULD NOT be reset when the interface statistics are 
       reset via an interface disable / enable cycle. */
    #define DSL_STAT_SHOWTIME_START "showtime_start"
    
    /**
       The Number of seconds since the second most recent DSL Showtime.
       The beginning of the period used for collection of LastShowtime statistics.
       If the CPE has not retained information about the second most recent Showtime
       (e.g., on reboot), the start of LastShowtime statistics MAY temporarily
       coincide with the start of Showtime statistics.
       \note last_showtime_start SHOULD NOT be reset when the interface statistics
       are reset via an interface disable / enable cycle. */
    #define DSL_STAT_LAST_SHOWTIME_START "last_showtime_start"
    
    /**
       Seconds since the start of the period used for collection of CurrentDay statistics.
       Statistics SHOULD continue to be accumulated across CPE reboots, 
       though this might not always be possible.
       \note current_day_start SHOULD NOT be reset when the interface statistics are
       reset via an interface disable / enable cycle. */
    #define DSL_STAT_CURRENT_DAY_START "current_day_start"
    
    /**
       Seconds since the start of the period used for collection of QuarterHour statistics.
       Statistics SHOULD continue to be accumulated across CPE reboots, though this 
       might not always be possible.
       \note quarter_hour_start SHOULD NOT be reset when the interface statistics 
       are reset via an interface disable / enable cycle. */
    #define DSL_STAT_QUARTER_HOUR_START "quarter_hour_start"
    
    /**
       DSL Line object total statistics declaration
       based on TR-181 definitions.*/
    #define DSL_STAT_TOTAL "total"
    
    /**
       DSL Line object showtime statistics declaration
       based on TR-181 definitions. */
    #define DSL_STAT_SHOWTIME "showtime"
    
    /**
       DSL Line object last showtime statistics declaration
       based on TR-181 definitions.*/
    #define DSL_STAT_LAST_SHOWTIME "last_showtime"
    
    /**
       DSL Line object current day statistics declaration
       based on TR-181 definitions.*/
    #define DSL_STAT_CURRENT_DAY "current_day"
    
    /**
       DSL Line object quarter hour statistics declaration
       based on TR-181 definitions. */
    #define DSL_STAT_QUARTER_HOUR "quarter_hour"
    
    
    /**
       Common data structure for the several objects.
        - Stats.Total: Total number of errored seconds.
        - Stats.Showtime: Number of errored seconds since the most recent DSL 
             Showtime.
        - Stats.LastShowtime: Number of errored seconds since the second most recent
             DSL Showtime.
        - Stats.CurrentDay: Number of errored seconds accumulated during the
             current day.
        - Stats.QuarterHour: Number of errored seconds accumulated during the
             current quarter hour.
    
          \note ES-L as defined in ITU-T Rec. [G.997.1].
          \note This parameter is OPTIONAL at the G and S/T interfaces in G.997.1
          Amendment 1. */
    #define DSL_STAT_ERRORED_SECS "errored_secs"
    
    /** 
       Common data structure for the several objects.
        - Stats.Total: Total number of severely errored seconds.
        - Stats.Showtime: Number of severely errored seconds since the most recent 
             DSL Showtime.
        - Stats.LastShowtime: Number of severely errored seconds since the second 
             most recent DSL Showtime.
        - Stats.CurrentDay: Number of severely errored seconds accumulated during
             the current day.
        - Stats.QuarterHour: Number of severely errored seconds accumulated during
             the current quarter hour.
    
          \note SES-L as defined in ITU-T Rec. [G.997.1].
          \note This parameter is OPTIONAL at the G and S/T interfaces in G.997.1
             Amendment 1. */
    #define DSL_STAT_SEVERELY_ERRORED_SECS "severely_errored_secs"
    
    
    /**
       Common data structure for the several objects.
        - Stats.Total: Total number of FEC errors detected.
        - Stats.Showtime: Number of FEC errors detected since the most recent DSL
             Showtime.
        - Stats.LastShowtime: Number of FEC errors detected since the second most
             recent DSL Showtime.
        - Stats.CurrentDay: Number of FEC errors detected during the current day.
        - Stats.QuarterHour: Number of FEC errors detected during the current
             quarter hour.
    
          \note FEC-C as defined in ITU-T Rec. [G.997.1]. */
    #define DSL_STAT_XTUR_FEC_ERRORS "xtur_fec_errors"
    
    /**
       Common data structure for the several objects.
        - Stats.Total: Total number of FEC errors detected by the ATU-C.
        - Stats.Showtime: Number of FEC errors detected by the ATU-C since the most
             recent DSL Showtime.
        - Stats.LastShowtime: Number of FEC errors detected by the ATU-C since the
             second most recent DSL Showtime.
        - Stats.CurrentDay: Number of FEC errors detected by the ATU-C during the
             current day.
        - Stats.QuarterHour: Number of FEC errors detected by the ATU-C during the
             current quarter hour.
    
          \note FEC-CFE as defined in ITU-T Rec. [G.997.1]. */
    #define DSL_STAT_XTUC_FEC_ERRORS "xtuc_fec_errors"
    
    /**
       Common data structure for the several objects.
        - Stats.Total: Total number of HEC errors detected.
        - Stats.Showtime: Number of HEC errors detected since the most recent DSL
             Showtime.
        - Stats.LastShowtime: Number of HEC errors detected since the second most
             recent DSL Showtime.
        - Stats.CurrentDay: Number of HEC errors detected during the current day.
        - Stats.QuarterHour: Number of HEC errors detected during the current
             quarter hour.
    
          \note HEC-P as defined in ITU-T Rec. [G.997.1]. */
    #define DSL_STAT_XTUR_HEC_ERRORS "xtur_hec_errors"
    
    /** Common data structure for the several objects.
        - Stats.Total: Total number of HEC errors detected by the ATU-C.
        - Stats.Showtime: Number of HEC errors detected by the ATU-C since the most
             recent DSL Showtime.
        - Stats.LastShowtime: Number of HEC errors detected by the ATU-C since the
             second most recent DSL Showtime.
        - Stats.CurrentDay: Number of HEC errors detected by the ATU-C during the
             current day.
        - Stats.QuarterHour: Number of HEC errors detected by the ATU-C during the
             current quarter hour.
    
          \note HEC-PFE as defined in ITU-T Rec. [G.997.1]. */
    #define DSL_STAT_XTUC_HEC_ERRORS "xtuc_hec_errors"
    
       /** Common data structure for the several objects.
        - Stats.Total: Total number of CRC errors detected.
        - Stats.Showtime: Number of CRC errors detected since the most recent DSL
             Showtime.
        - Stats.LastShowtime: Number of CRC errors detected since the second most
             recent DSL Showtime.
        - Stats.CurrentDay: Number of CRC errors detected during the current day.
        - Stats.QuarterHour: Number of CRC errors detected during the current 
             quarter hour.
    
          \note CV-C as defined in ITU-T Rec. [G.997.1]. */
    #define DSL_STAT_XTUR_CRC_ERRORS "xtur_crc_errors"
    
    /** Common data structure for the several objects.
        - Stats.Total: Total number of CRC errors detected by the ATU-C.
        - Stats.Showtime: Number of CRC errors detected by the ATU-C since the most
             recent DSL Showtime.
        - Stats.LastShowtime: Number of CRC errors detected by the ATU-C since the
             second most recent DSL Showtime.
        - Stats.CurrentDay: Number of CRC errors detected by the ATU-C during the
             current day.
        - Stats.QuarterHour: Number of CRC errors detected by the ATU-C during the
             current quarter hour.
    
          \note CV-CFE as defined in ITU-T Rec. [G.997.1]. */
    #define DSL_STAT_XTUC_CRC_ERRORS "xtuc_crc_errors"
    
    /** @} */
    #define US "us"
    #define DS "ds"
    
    
    /*! \defgroup DSL_CONFIG Intel Configuration Parser
     * Lists the entire modules from the DSL CPE Configuration Parser */
    /** @{  */
    
    /** \defgroup Debugging 
     * \ingroup DSL_CONFIG */
    
    /**  @{  */
    
    /**
       Configuration of test and debug interface usage
    - 0: Do not use debug and test interfaces.
         Independent from feature availability.
    - 1: Use debug and test interfaces on LAN interfaces only. - DEFAULT
         Dependent on feature availability.
    - 2: Use debug and test interfaces on ALL available interfaces.
         Dependent on feature availability. Former default value.
    
    
       \note This configuration value will only have an influence if the DSL
       subsystem has been compiled to include TCP-Messages and/or DTI interface 
       functionality.*/
    #define DSL_CFG_DEBUG_AND_TEST_INTERFACES "debug_and_test_interfaces"
    /** @} */
    
    /** \defgroup StartupInit 
        \ingroup DSL_CONFIG */
    
    /**  @{  */
    /**
       NextMode (DSL) to be used on API startup
       Only of relevance if xDSL multimode is enabled by using VDSL and ADSL
       G997 XTU octet bits.
       DSL:StartupInit:NextMode
         0: use API-default value (if A+V modes are selected VDSL will be used)
         1: use ADSL mode as initial one for multimode handling
         2: use VDSL mode as initial one for multimode handling */
    #define DSL_CFG_NEXT_MODE "next_mode"
    
    /**
       Defines the number of devices/lines which are used on operating the DSL subsystem.
       This value must be equal or smaller than the number of devices which are
       MEI Driver propagates this value via read-only procfs entry as follows
       detected by the MEI Driver at boot time.
       "MaxDeviceNumber" from "/proc/driver/mei_cpe/devinfo"
       The typical configuration will be that the procfs value is used here
       directly which takes care that all available devices will be used. */
    #define DSL_CFG_MAX_DEVICE_NUMBER "max_device_number"
    
    /**
       Defines the number of lines which are used on operating the DSL subsystem.
       It is strictly recommended to use the number which is propagated by the
       MEI Driver at boot time here directly.
       MEI Driver propagates this value via read-only procfs entry as follows
       "LinesPerDevice" from "/proc/driver/mei_cpe/devinfo"
       The default value for VRX518 will be always "1"
       \note Values which are bigger than 1 are only allowed for on-chip bonding
             scenarios which are not supported by VRX518. */
    #define DSL_CFG_LINES_PER_DEVICE "lines_per_device"
    
    /** 
       Defines the number of (bearer) channels which are used on operating the DSL subsystem.
       It is strictly recommended to use the number which is propagated by the
       MEI Driver at boot time here directly.
       MEI Driver propagates this value via read-only procfs entry as follows
       "ChannelsPerLine" from "/proc/driver/mei_cpe/devinfo"
       The default value for VRX518 will be always "1"
       \note Values which are bigger than 1 would be only valid for non-single
             bearer channel scenarios which are not supported by VRX518. */
    #define DSL_CFG_CHANNELS_PER_LINE "channels_per_line"
    
    /** @} */
    /** \defgroup Bitswap 
     * \ingroup DSL_CONFIG
    */
    /** @{ */
    /**
       Configuration of bitswap setting for VDSL mode in Upstream direction
       0: Disable bitswap
       1: Enable bitswap */
    #define DSL_CFG_BITSWAP_VDSL_US "vdsl_us"
    
    /**
       Configuration of bitswap setting for VDSL mode in Downstream direction
       0: Disable bitswap
       1: Enable bitswap */
    #define DSL_CFG_BITSWAP_VDSL_DS "vdsl_ds"
    
    /**
       Configuration of bitswap setting for ADSL mode in Upstream direction
       0: Disable bitswap
       1: Enable bitswap */
    #define DSL_CFG_BITSWAP_ADSL_US "adsl_us"
    
    /**
       Configuration of bitswap setting for ADSL mode in Downstream direction
       0: Disable bitswap
       1: Enable bitswap */
    #define DSL_CFG_BITSWAP_ADSL_DS "adsl_ds"
    /** @} */
    
    /** \defgroup Retransmission 
        \ingroup DSL_CONFIG */
    
    /** @{ */
    /**
       Configuration of retransmission setting for VDSL mode in Upstream direction
       0: Disable retransmission
       1: Enable retransmission
       2: Use API internal default configuration */
    #define DSL_CFG_RETX_VDSL_US "vdsl_us"
    
    /**
       Configuration of retransmission setting for VDSL mode in Downstream direction
       0: Disable retransmission
       1: Enable retransmission
       2: Use API internal default configuration */
    #define DSL_CFG_RETX_VDSL_DS "vdsl_ds"
    
    /**
       Configuration of retransmission setting for ADSL mode in Upstream direction
       0: Disable retransmission
       1: Enable retransmission
       2: Use API internal default configuration */
    #define DSL_CFG_RETX_ADSL_US "adsl_us"
    
    /**
       Configuration of retransmission setting for ADSL mode in Downstream direction
       0: Disable retransmission
       1: Enable retransmission
       2: Use API internal default configuration */
    #define DSL_CFG_RETX_ADSL_DS "adsl_ds"
    /** @} */
    
    /** \defgroup SRA 
        \ingroup DSL_CONFIG */
    
    /** @{ */
    /** Configuration of seamless rate adaptation (SRA) for VDSL in Upstream direction
       0: Disable SRA
       1: Enable SRA
       2: Use API internal default configuration (enabled) */
    #define DSL_CFG_SRA_VDSL_US "vdsl_us"
    
    /**
       Configuration of seamless rate adaptation (SRA) for VDSL in Downstream direction
       0: Disable SRA
       1: Enable SRA
       2: Use API internal default configuration (enabled) */
    #define DSL_CFG_SRA_VDSL_DS "vdsl_ds"
    
    /**
       Configuration of seamless rate adaptation (SRA) for ADSL in Upstream direction
       0: Disable SRA
       1: Enable SRA
       2: Use API internal default configuration (disabled) */
    #define DSL_CFG_SRA_ADSL_US "adsl_us"
    
    /**
       Configuration of seamless rate adaptation (SRA) for ADSL in Downstream direction
       0: Disable SRA
       1: Enable SRA
       2: Use API internal default configuration (disabled) */
    #define DSL_CFG_SRA_ADSL_DS "adsl_ds"
    /** @} */
    
    /** \defgroup VN Virtual Noise 
        \ingroup DSL_CONFIG */
    
    /** @{ */
    /**
       Configuration of virtual noise setting for Upstream direction
       0: Disable virtual noise
       1: Enable virtual noise */
    #define DSL_CFG_VN_US "us"
    
    /**
       Configuration of virtual noise setting for Downstream direction
       0: Disable virtual noise
       1: Enable virtual noise */
    #define DSL_CFG_VN_DS "ds"
    /** @} */
    
    /** \defgroup TcLayer 
        \ingroup DSL_CONFIG */
    
    /** @{ */
    /**
       Configuration of TC-Layer for ADSL mode
       TcLayer_ADSL
         0: Use API internal defaults
         1: ATM-TC
         2: EFM/PTM-TC
         4: Auto-TC */
    #define DSL_CFG_TC_ADSL "adsl"
    
    /**
       Configuration of TC-Layer for VDSL mode
       TcLayer_ADSL
         0: Use API internal defaults
         1: ATM-TC
         2: EFM/PTM-TC
         4: Auto-TC */
    #define DSL_CFG_TC_VDSL "vdsl"
    /** @} */
    
    /** \defgroup RC Reboot Criteria 
        \ingroup DSL_CONFIG */
    
    /** @{ */
    /**
       Reboot criteria for ADSL.
       The value selects the activated reboot criteria's according to the following
       bitmask definitions.
            "0": CLEANED (no reboot criteria active)
            "1": LOM              - default ON
            "2": LOF              - default ON
            "4": LOS              - default ON
            "8": ESE              - default ON
           "10": ES90             - default OFF
          "20": SES30            - default OFF
           "40": NEGATIVE_MARGIN  - default ON
           "80": OOS_BC0          - default OFF
          "100": OOS_BC1          - default OFF
          "200": NCD_BC0          - default OFF
          "400": NCD_BC1          - default OFF