openbcm

Git mirror of https://github.com/Broadcom-Network-Switching-Software/OpenBCM
git clone git://git.finwo.net/mirror/broadcom/openbcm
Log | Files | Refs | README

ui_rom_defi_fap20v.h (440136B)


      1 /* 
      2  * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file.
      3  * 
      4  * Copyright 2007-2020 Broadcom Inc. All rights reserved.
      5 */
      6 #ifndef UI_ROM_DEFI_FAP20V_INCLUDED
      7 /* { */
      8 #define UI_ROM_DEFI_FAP20V_INCLUDED
      9 
     10 
     11 #include <ui_pure_defi.h>
     12 #include <ui_pure_defi_fap20v.h>
     13 
     14 #include <soc/dpp/SOC_SAND_FAP20V/fap20v_api_general.h>
     15 #include <soc/dpp/SOC_SAND_FAP20V/fap20v_api_statistics.h>
     16 #include <soc/dpp/SOC_SAND_FAP20V/fap20v_api_spatial_multicast.h>
     17 #include <soc/dpp/SOC_SAND_FAP20V/fap20v_api_configuration.h>
     18 #include <soc/dpp/SOC_SAND_FAP20V/fap20v_api_scheduler_flows.h>
     19 
     20 #include <soc/dpp/SOC_SAND_FAP20V/fap20v_chip_defines.h>
     21 #include <soc/dpp/SOC_SAND_FAP20V/fap20v_configuration.h>
     22 
     23 
     24 
     25 /*
     26  * UI definition{
     27  */
     28 
     29 /********************************************************
     30 *NAME
     31 *  Fap20v_true_false_vals
     32 *TYPE: BUFFER
     33 *DATE: 20/FEB/2002
     34 *FUNCTION:
     35 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
     36 *  RELATED TO THE PARAMETER "DOWNLOAD_MIBS" IN THE
     37 *  CONTEXT OF SUBJECT 'NVRAM'.
     38 *ORGANIZATION:
     39 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
     40 *    int val_type -
     41 *      Type of value. Can be:
     42 *        VAL_END_OF_LIST 0
     43 *        VAL_NUMERIC     1
     44 *        VAL_SYMBOL      2
     45 *        VAL_TEXT        3
     46 *        VAL_IP          4
     47 *      The first one is only to indicate the end of
     48 *      this array. The others indicate what kind of
     49 *      value this is.
     50 *    VAL_DESCRIPTOR val_descriptor -
     51 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
     52 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
     53 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
     54 *      See details in file of definition. Note: Symbols
     55 *      must be small letters only!
     56 *USAGE:
     57 *  SEE ORGANIZATION.
     58 *REMARKS:
     59 *  NONE.
     60 *SEE ALSO:
     61  */
     62 EXTERN CONST
     63    PARAM_VAL_RULES
     64      Fap20v_true_false_vals[]
     65 #ifdef INIT
     66    =
     67 {
     68   {
     69     VAL_SYMBOL,
     70     "true",
     71     {
     72       {
     73         1,
     74           /*
     75            * Casting added here just to keep the compiler silent.
     76            */
     77         (long)"    TRUE.",
     78           /*
     79            * Pointer to a function to call after symbolic value
     80            * has been accepted. Casting should be 'VAL_PROC_PTR'.
     81            * Casting to 'long' added here just to keep the
     82            * compiler silent.
     83            */
     84         (long)NULL
     85       }
     86     }
     87   },
     88   {
     89     VAL_SYMBOL,
     90     "false",
     91     {
     92       {
     93         0,
     94           /*
     95            * Casting added here just to keep the compiler silent.
     96            */
     97         (long)"    FALSE.",
     98           /*
     99            * Pointer to a function to call after symbolic value
    100            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    101            * Casting to 'long' added here just to keep the
    102            * compiler silent.
    103            */
    104         (long)NULL
    105       }
    106     }
    107   },
    108 /*
    109  * Last element. Do not remove.
    110  */
    111   {
    112     VAL_END_OF_LIST
    113   }
    114 }
    115 #endif
    116 ;
    117 
    118 
    119 /********************************************************
    120 *NAME
    121 *  Fap20v_counter_type
    122 *TYPE: BUFFER
    123 *DATE: 31/DEC/2002
    124 *FUNCTION:
    125 *  ARRAY CONTAINING THE DEFAULT VALUE
    126 *  RELATED TO THE PARAMETER "DATA".
    127 *ORGANIZATION:
    128 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    129 *    int val_type -
    130 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
    131 *      VAL_IP OR VAL_SYMBOL)
    132 *    union value -
    133 *      Union of one of
    134 *        int            int_value
    135 *        char           *string_value
    136 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
    137 *        unsigned long  ip_value ;
    138 *      Value of default variable.
    139 *USAGE:
    140 *  SEE ORGANIZATION.
    141 *REMARKS:
    142 *  NONE.
    143 *SEE ALSO:
    144  */
    145 EXTERN CONST
    146    PARAM_VAL_RULES
    147      Fap20v_counter_type[]
    148 #ifdef INIT
    149    =
    150 {
    151   {
    152     VAL_SYMBOL,
    153     "tdm_a_pkt",
    154     {
    155       {
    156         FAP20V_TDM_A_PKT_CNT,
    157           /*
    158            * Casting added here just to keep the compiler silent.
    159            */
    160         (long)"    fap20v counter.",
    161           /*
    162            * Pointer to a function to call after symbolic value
    163            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    164            * Casting to 'long' added here just to keep the
    165            * compiler silent.
    166            */
    167         (long)NULL
    168       }
    169     }
    170   },
    171   {
    172     VAL_SYMBOL,
    173     "tdm_b_pkt",
    174     {
    175       {
    176         FAP20V_TDM_B_PKT_CNT,
    177           /*
    178            * Casting added here just to keep the compiler silent.
    179            */
    180         (long)"    fap20v counter.",
    181           /*
    182            * Pointer to a function to call after symbolic value
    183            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    184            * Casting to 'long' added here just to keep the
    185            * compiler silent.
    186            */
    187         (long)NULL
    188       }
    189     }
    190   },
    191 
    192   {
    193     VAL_SYMBOL,
    194     "lbp_pkt",
    195     {
    196       {
    197         FAP20V_LBP_PKT_CNT,
    198           /*
    199            * Casting added here just to keep the compiler silent.
    200            */
    201         (long)"    fap20v counter.",
    202           /*
    203            * Pointer to a function to call after symbolic value
    204            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    205            * Casting to 'long' added here just to keep the
    206            * compiler silent.
    207            */
    208         (long)NULL
    209       }
    210     }
    211   },
    212   {
    213     VAL_SYMBOL,
    214     "en_q_pkt",
    215     {
    216       {
    217         FAP20V_EN_Q_PKT_CNT,
    218           /*
    219            * Casting added here just to keep the compiler silent.
    220            */
    221         (long)"    fap20v counter.",
    222           /*
    223            * Pointer to a function to call after symbolic value
    224            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    225            * Casting to 'long' added here just to keep the
    226            * compiler silent.
    227            */
    228         (long)NULL
    229       }
    230     }
    231   },
    232   {
    233     VAL_SYMBOL,
    234     "en_q_byte",
    235     {
    236       {
    237         FAP20V_EN_Q_BYTE_CNT,
    238           /*
    239            * Casting added here just to keep the compiler silent.
    240            */
    241         (long)"    fap20v counter.",
    242           /*
    243            * Pointer to a function to call after symbolic value
    244            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    245            * Casting to 'long' added here just to keep the
    246            * compiler silent.
    247            */
    248         (long)NULL
    249       }
    250     }
    251   },
    252   {
    253     VAL_SYMBOL,
    254     "hd_del_pkt",
    255     {
    256       {
    257         FAP20V_HD_DEL_PKT_CNT,
    258           /*
    259            * Casting added here just to keep the compiler silent.
    260            */
    261         (long)"    fap20v counter.",
    262           /*
    263            * Pointer to a function to call after symbolic value
    264            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    265            * Casting to 'long' added here just to keep the
    266            * compiler silent.
    267            */
    268         (long)NULL
    269       }
    270     }
    271   },
    272   {
    273     VAL_SYMBOL,
    274     "hd_del_byte",
    275     {
    276       {
    277         FAP20V_HD_DEL_BYTE_CNT,
    278           /*
    279            * Casting added here just to keep the compiler silent.
    280            */
    281         (long)"    fap20v counter.",
    282           /*
    283            * Pointer to a function to call after symbolic value
    284            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    285            * Casting to 'long' added here just to keep the
    286            * compiler silent.
    287            */
    288         (long)NULL
    289       }
    290     }
    291   },
    292   {
    293     VAL_SYMBOL,
    294     "de_q_pkt",
    295     {
    296       {
    297         FAP20V_DE_Q_PKT_CNT,
    298           /*
    299            * Casting added here just to keep the compiler silent.
    300            */
    301         (long)"    fap20v counter.",
    302           /*
    303            * Pointer to a function to call after symbolic value
    304            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    305            * Casting to 'long' added here just to keep the
    306            * compiler silent.
    307            */
    308         (long)NULL
    309       }
    310     }
    311   },
    312   {
    313     VAL_SYMBOL,
    314     "de_q_byte",
    315     {
    316       {
    317         FAP20V_DE_Q_BYTE_CNT,
    318           /*
    319            * Casting added here just to keep the compiler silent.
    320            */
    321         (long)"    fap20v counter.",
    322           /*
    323            * Pointer to a function to call after symbolic value
    324            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    325            * Casting to 'long' added here just to keep the
    326            * compiler silent.
    327            */
    328         (long)NULL
    329       }
    330     }
    331   },
    332   {
    333     VAL_SYMBOL,
    334     "tail_del_pkt",
    335     {
    336       {
    337         FAP20V_TAIL_DEL_PKT_CNT,
    338           /*
    339            * Casting added here just to keep the compiler silent.
    340            */
    341         (long)"    fap20v counter.",
    342           /*
    343            * Pointer to a function to call after symbolic value
    344            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    345            * Casting to 'long' added here just to keep the
    346            * compiler silent.
    347            */
    348         (long)NULL
    349       }
    350     }
    351   },
    352   {
    353     VAL_SYMBOL,
    354     "tail_del_byte",
    355     {
    356       {
    357         FAP20V_TAIL_DEL_BYTE_CNT,
    358           /*
    359            * Casting added here just to keep the compiler silent.
    360            */
    361         (long)"    fap20v counter.",
    362           /*
    363            * Pointer to a function to call after symbolic value
    364            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    365            * Casting to 'long' added here just to keep the
    366            * compiler silent.
    367            */
    368         (long)NULL
    369       }
    370     }
    371   },
    372   {
    373     VAL_SYMBOL,
    374     "flow_sts_msg",
    375     {
    376       {
    377         FAP20V_FLOW_STS_MSG_CNT,
    378           /*
    379            * Casting added here just to keep the compiler silent.
    380            */
    381         (long)"    fap20v counter.",
    382           /*
    383            * Pointer to a function to call after symbolic value
    384            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    385            * Casting to 'long' added here just to keep the
    386            * compiler silent.
    387            */
    388         (long)NULL
    389       }
    390     }
    391   },
    392   {
    393     VAL_SYMBOL,
    394     "eg_prg_en_q_pkt",
    395     {
    396       {
    397         FAP20V_EG_PRG_EN_Q_PKT_CNT,
    398           /*
    399            * Casting added here just to keep the compiler silent.
    400            */
    401         (long)"    fap20v counter.",
    402           /*
    403            * Pointer to a function to call after symbolic value
    404            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    405            * Casting to 'long' added here just to keep the
    406            * compiler silent.
    407            */
    408         (long)NULL
    409       }
    410     }
    411   },
    412   {
    413     VAL_SYMBOL,
    414     "eg_prg_en_q_byte",
    415     {
    416       {
    417         FAP20V_EG_PRG_EN_Q_BYTE_CNT,
    418           /*
    419            * Casting added here just to keep the compiler silent.
    420            */
    421         (long)"    fap20v counter.",
    422           /*
    423            * Pointer to a function to call after symbolic value
    424            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    425            * Casting to 'long' added here just to keep the
    426            * compiler silent.
    427            */
    428         (long)NULL
    429       }
    430     }
    431   },
    432   {
    433     VAL_SYMBOL,
    434     "eg_prg_ds_q_pkt",
    435     {
    436       {
    437         FAP20V_EG_PRG_DS_Q_PKT_CNT,
    438           /*
    439            * Casting added here just to keep the compiler silent.
    440            */
    441         (long)"    fap20v counter.",
    442           /*
    443            * Pointer to a function to call after symbolic value
    444            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    445            * Casting to 'long' added here just to keep the
    446            * compiler silent.
    447            */
    448         (long)NULL
    449       }
    450     }
    451   },
    452   {
    453     VAL_SYMBOL,
    454     "eg_prg_ds_q_byte",
    455     {
    456       {
    457         FAP20V_EG_PRG_DS_Q_BYTE_CNT,
    458           /*
    459            * Casting added here just to keep the compiler silent.
    460            */
    461         (long)"    fap20v counter.",
    462           /*
    463            * Pointer to a function to call after symbolic value
    464            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    465            * Casting to 'long' added here just to keep the
    466            * compiler silent.
    467            */
    468         (long)NULL
    469       }
    470     }
    471   },
    472   {
    473     VAL_SYMBOL,
    474     "eg_en_q_pkt",
    475     {
    476       {
    477         FAP20V_EG_EN_Q_PKT_CNT,
    478           /*
    479            * Casting added here just to keep the compiler silent.
    480            */
    481         (long)"    fap20v counter.",
    482           /*
    483            * Pointer to a function to call after symbolic value
    484            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    485            * Casting to 'long' added here just to keep the
    486            * compiler silent.
    487            */
    488         (long)NULL
    489       }
    490     }
    491   },
    492   {
    493     VAL_SYMBOL,
    494     "eg_en_q_byte",
    495     {
    496       {
    497         FAP20V_EG_EN_Q_BYTE_CNT,
    498           /*
    499            * Casting added here just to keep the compiler silent.
    500            */
    501         (long)"    fap20v counter.",
    502           /*
    503            * Pointer to a function to call after symbolic value
    504            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    505            * Casting to 'long' added here just to keep the
    506            * compiler silent.
    507            */
    508         (long)NULL
    509       }
    510     }
    511   },
    512   {
    513     VAL_SYMBOL,
    514     "eg_ds_q_pkt",
    515     {
    516       {
    517         FAP20V_EG_DS_Q_PKT_CNT,
    518           /*
    519            * Casting added here just to keep the compiler silent.
    520            */
    521         (long)"    fap20v counter.",
    522           /*
    523            * Pointer to a function to call after symbolic value
    524            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    525            * Casting to 'long' added here just to keep the
    526            * compiler silent.
    527            */
    528         (long)NULL
    529       }
    530     }
    531   },
    532   {
    533     VAL_SYMBOL,
    534     "eg_ds_q_byte",
    535     {
    536       {
    537         FAP20V_EG_DS_Q_BYTE_CNT,
    538           /*
    539            * Casting added here just to keep the compiler silent.
    540            */
    541         (long)"    fap20v counter.",
    542           /*
    543            * Pointer to a function to call after symbolic value
    544            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    545            * Casting to 'long' added here just to keep the
    546            * compiler silent.
    547            */
    548         (long)NULL
    549       }
    550     }
    551   },
    552   {
    553     VAL_SYMBOL,
    554     "eg_los_tdm_a_pkt",
    555     {
    556       {
    557         FAP20V_EG_LOS_TDM_A_PKT_CNT,
    558           /*
    559            * Casting added here just to keep the compiler silent.
    560            */
    561         (long)"    fap20v counter.",
    562           /*
    563            * Pointer to a function to call after symbolic value
    564            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    565            * Casting to 'long' added here just to keep the
    566            * compiler silent.
    567            */
    568         (long)NULL
    569       }
    570     }
    571   },
    572   {
    573     VAL_SYMBOL,
    574     "eg_los_tdm_b_pkt",
    575     {
    576       {
    577         FAP20V_EG_LOS_TDM_B_PKT_CNT,
    578           /*
    579            * Casting added here just to keep the compiler silent.
    580            */
    581         (long)"    fap20v counter.",
    582           /*
    583            * Pointer to a function to call after symbolic value
    584            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    585            * Casting to 'long' added here just to keep the
    586            * compiler silent.
    587            */
    588         (long)NULL
    589       }
    590     }
    591   },
    592 
    593 /*
    594  * Last element. Do not remove.
    595  */
    596   {
    597     VAL_END_OF_LIST
    598   }
    599 }
    600 #endif
    601 ;
    602 /********************************************************
    603 *NAME
    604 *  Fap20v_pause_after_read_mem_read_vals
    605 *TYPE: BUFFER
    606 *DATE: 22/MAR/2002
    607 *FUNCTION:
    608 *  ARRAY CONTAINING THE DEFAULT VALUE
    609 *  RELATED TO THE PARAMETER "PAUSE_AFTER_READ"  IN THE CONTEXT
    610 *  OF SUBJECT 'MEM'.
    611 *ORGANIZATION:
    612 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    613 *    int val_type -
    614 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
    615 *      VAL_IP OR VAL_SYMBOL)
    616 *    union value -
    617 *      Union of one of
    618 *        int            int_value
    619 *        char           *string_value
    620 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
    621 *        unsigned long  ip_value ;
    622 *      Value of default variable.
    623 *USAGE:
    624 *  SEE ORGANIZATION.
    625 *REMARKS:
    626 *  NONE.
    627 *SEE ALSO:
    628  */
    629 EXTERN CONST
    630    PARAM_VAL_RULES
    631      Fap20v_pause_after_read_mem_read_vals[]
    632 #ifdef INIT
    633    =
    634 {
    635   {
    636     VAL_NUMERIC,SYMB_NAME_NUMERIC,
    637     {
    638       {
    639         HAS_MIN_VALUE | HAS_MAX_VALUE,
    640         1000000,0,
    641           /*
    642            * Number of times this value can be repeated (i.e.,
    643            * value is an array). Must be at least 1!
    644            */
    645         1,
    646         (VAL_PROC_PTR)NULL
    647       }
    648     }
    649   },
    650 /*
    651  * Last element. Do not remove.
    652  */
    653   {
    654     VAL_END_OF_LIST
    655   }
    656 }
    657 #endif
    658 ;
    659 /********************************************************
    660 *NAME
    661 *  Fap20v_pause_after_read_mem_read_default
    662 *TYPE: BUFFER
    663 *DATE: 22/MAR/2002
    664 *FUNCTION:
    665 *  ARRAY CONTAINING THE DEFAULT VALUE
    666 *  RELATED TO THE PARAMETER "PAUSE_AFTER_READ"  IN THE CONTEXT
    667 *  OF SUBJECT 'MEM'.
    668 *ORGANIZATION:
    669 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    670 *    int val_type -
    671 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
    672 *      VAL_IP OR VAL_SYMBOL)
    673 *    union value -
    674 *      Union of one of
    675 *        int            int_value
    676 *        char           *string_value
    677 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
    678 *        unsigned long  ip_value ;
    679 *      Value of default variable.
    680 *USAGE:
    681 *  SEE ORGANIZATION.
    682 *REMARKS:
    683 *  NONE.
    684 *SEE ALSO:
    685  */
    686 EXTERN CONST
    687    PARAM_VAL
    688      Fap20v_pause_after_read_mem_read_default
    689 #ifdef INIT
    690    =
    691 {
    692   VAL_NUMERIC,
    693   0,
    694   {
    695     /*
    696      * Casting may be required here only to keep the compiler silent.
    697      */
    698     (unsigned long)0
    699   }
    700 }
    701 #endif
    702 ;
    703 /********************************************************
    704 *NAME
    705 *  Fap20v_nof_times_mem_read_vals
    706 *TYPE: BUFFER
    707 *DATE: 22/MAR/2002
    708 *FUNCTION:
    709 *  ARRAY CONTAINING THE DEFAULT VALUE
    710 *  RELATED TO THE PARAMETER "NOF_TIME"  IN THE CONTEXT
    711 *  OF SUBJECT 'MEM'.
    712 *ORGANIZATION:
    713 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    714 *    int val_type -
    715 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
    716 *      VAL_IP OR VAL_SYMBOL)
    717 *    union value -
    718 *      Union of one of
    719 *        int            int_value
    720 *        char           *string_value
    721 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
    722 *        unsigned long  ip_value ;
    723 *      Value of default variable.
    724 *USAGE:
    725 *  SEE ORGANIZATION.
    726 *REMARKS:
    727 *  NONE.
    728 *SEE ALSO:
    729  */
    730 EXTERN CONST
    731    PARAM_VAL_RULES
    732      Fap20v_nof_times_mem_read_vals[]
    733 #ifdef INIT
    734    =
    735 {
    736   {
    737     VAL_NUMERIC,SYMB_NAME_NUMERIC,
    738     {
    739       {
    740         HAS_MIN_VALUE | HAS_MAX_VALUE,
    741         10000,0,
    742           /*
    743            * Number of times this value can be repeated (i.e.,
    744            * value is an array). Must be at least 1!
    745            */
    746         1,
    747         (VAL_PROC_PTR)NULL
    748       }
    749     }
    750   },
    751 /*
    752  * Last element. Do not remove.
    753  */
    754   {
    755     VAL_END_OF_LIST
    756   }
    757 }
    758 #endif
    759 ;
    760 /********************************************************
    761 *NAME
    762 *  Fap20v_nof_times_mem_read_default
    763 *TYPE: BUFFER
    764 *DATE: 22/MAR/2002
    765 *FUNCTION:
    766 *  ARRAY CONTAINING THE DEFAULT VALUE
    767 *  RELATED TO THE PARAMETER "PAUSE_AFTER_READ"  IN THE CONTEXT
    768 *  OF SUBJECT 'MEM'.
    769 *ORGANIZATION:
    770 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    771 *    int val_type -
    772 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
    773 *      VAL_IP OR VAL_SYMBOL)
    774 *    union value -
    775 *      Union of one of
    776 *        int            int_value
    777 *        char           *string_value
    778 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
    779 *        unsigned long  ip_value ;
    780 *      Value of default variable.
    781 *USAGE:
    782 *  SEE ORGANIZATION.
    783 *REMARKS:
    784 *  NONE.
    785 *SEE ALSO:
    786  */
    787 EXTERN CONST
    788    PARAM_VAL
    789      Fap20v_nof_times_mem_read_default
    790 #ifdef INIT
    791    =
    792 {
    793   VAL_NUMERIC,
    794   0,
    795   {
    796     /*
    797      * Casting may be required here only to keep the compiler silent.
    798      */
    799     (unsigned long)1
    800   }
    801 }
    802 #endif
    803 ;
    804 
    805 /********************************************************
    806 *NAME
    807 *  Fap20v_nof_times_mem_read_default
    808 *TYPE: BUFFER
    809 *DATE: 22/MAR/2002
    810 *FUNCTION:
    811 *  ARRAY CONTAINING THE DEFAULT VALUE
    812 *  RELATED TO THE PARAMETER "PAUSE_AFTER_READ"  IN THE CONTEXT
    813 *  OF SUBJECT 'MEM'.
    814 *ORGANIZATION:
    815 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    816 *    int val_type -
    817 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
    818 *      VAL_IP OR VAL_SYMBOL)
    819 *    union value -
    820 *      Union of one of
    821 *        int            int_value
    822 *        char           *string_value
    823 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
    824 *        unsigned long  ip_value ;
    825 *      Value of default variable.
    826 *USAGE:
    827 *  SEE ORGANIZATION.
    828 *REMARKS:
    829 *  NONE.
    830 *SEE ALSO:
    831  */
    832 EXTERN CONST
    833    PARAM_VAL
    834      Fap20v_read_size_default
    835 #ifdef INIT
    836    =
    837 {
    838   VAL_NUMERIC,
    839   0,
    840   {
    841     /*
    842      * Casting may be required here only to keep the compiler silent.
    843      */
    844     (unsigned long)4
    845   }
    846 }
    847 #endif
    848 ;
    849 /********************************************************
    850 *NAME
    851 *  Fap20v_pp_port_default
    852 *TYPE: BUFFER
    853 *DATE: 25/MAR/2003
    854 *FUNCTION:
    855 *  Default number if no amplitude.
    856 *ORGANIZATION:
    857 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    858 *    int val_type -
    859 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
    860 *      VAL_IP OR VAL_SYMBOL)
    861 *    union value -
    862 *      Union of one of
    863 *        int            int_value
    864 *        char           *string_value
    865 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
    866 *        unsigned long  ip_value ;
    867 *      Value of default variable.
    868 *USAGE:
    869 *  SEE ORGANIZATION.
    870 *REMARKS:
    871 *  NONE.
    872 *SEE ALSO:
    873  */
    874 EXTERN CONST
    875    PARAM_VAL
    876      Fap20v_pp_port_default
    877 #ifdef INIT
    878    =
    879 {
    880   VAL_NUMERIC,
    881   0,
    882   {
    883     /*
    884      * Casting may be required here only to keep the compiler silent.
    885      */
    886     (unsigned long)5
    887   }
    888 }
    889 #endif
    890 ;
    891 /********************************************************
    892 *NAME
    893 *  Fap20v_vlan_id_vals
    894 *TYPE: BUFFER
    895 *DATE: 25/MAR/2003
    896 *FUNCTION:
    897 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
    898 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
    899 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
    900 *ORGANIZATION:
    901 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    902 *    int val_type -
    903 *      Type of value. Can be:
    904 *        VAL_END_OF_LIST 0
    905 *        VAL_NUMERIC     1
    906 *        VAL_SYMBOL      2
    907 *        VAL_TEXT        3
    908 *        VAL_IP          4
    909 *      The first one is only to indicate the end of
    910 *      this array. The others indicate what kind of
    911 *      value this is.
    912 *    char *symb_val -
    913 *      ASCII presentation of the symbolic value.
    914 *      Note: Must be small letters only!
    915 *      For numeric variables:
    916 *      This is a dummy variable. Enables searching
    917 *      array of 'PARAM_VAL_RULES' for name (string)
    918 *      matching without special case for numeric
    919 *      variable.
    920 *    VAL_DESCRIPTOR val_descriptor -
    921 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
    922 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
    923 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
    924 *      See details in file of definition. Note: Symbols
    925 *      must be small letters only!
    926 *USAGE:
    927 *  SEE ORGANIZATION.
    928 *REMARKS:
    929 *  NONE.
    930 *SEE ALSO:
    931  */
    932 EXTERN CONST
    933    PARAM_VAL_RULES
    934      Fap20v_vlan_id_vals[]
    935 #ifdef INIT
    936    =
    937 {
    938   {
    939     VAL_NUMERIC,SYMB_NAME_NUMERIC,
    940     {
    941       {
    942         HAS_MIN_VALUE | HAS_MAX_VALUE,
    943         BIT(12)-1,0,
    944           /*
    945            * Number of times this value can be repeated (i.e.,
    946            * value is an array). Must be at least 1!
    947            */
    948         1,
    949         (VAL_PROC_PTR)NULL
    950       }
    951     }
    952   },
    953 /*
    954  * Last element. Do not remove.
    955  */
    956   {
    957     VAL_END_OF_LIST
    958   }
    959 }
    960 #endif
    961 ;
    962 
    963 /********************************************************
    964 *NAME
    965 *  Fap20v_vlan_id_default
    966 *TYPE: BUFFER
    967 *DATE: 25/MAR/2003
    968 *FUNCTION:
    969 *  Default number if no amplitude.
    970 *ORGANIZATION:
    971 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    972 *    int val_type -
    973 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
    974 *      VAL_IP OR VAL_SYMBOL)
    975 *    union value -
    976 *      Union of one of
    977 *        int            int_value
    978 *        char           *string_value
    979 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
    980 *        unsigned long  ip_value ;
    981 *      Value of default variable.
    982 *USAGE:
    983 *  SEE ORGANIZATION.
    984 *REMARKS:
    985 *  NONE.
    986 *SEE ALSO:
    987  */
    988 EXTERN CONST
    989    PARAM_VAL
    990      Fap20v_vlan_id_default
    991 #ifdef INIT
    992    =
    993 {
    994   VAL_NUMERIC,
    995   0,
    996   {
    997     /*
    998      * Casting may be required here only to keep the compiler silent.
    999      */
   1000     (unsigned long)1
   1001   }
   1002 }
   1003 #endif
   1004 ;
   1005 /********************************************************
   1006 *NAME
   1007 *  Fap20v_wfq0_weight_default
   1008 *TYPE: BUFFER
   1009 *DATE: 25/MAR/2003
   1010 *FUNCTION:
   1011 *  Default number if no amplitude.
   1012 *ORGANIZATION:
   1013 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1014 *    int val_type -
   1015 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   1016 *      VAL_IP OR VAL_SYMBOL)
   1017 *    union value -
   1018 *      Union of one of
   1019 *        int            int_value
   1020 *        char           *string_value
   1021 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   1022 *        unsigned long  ip_value ;
   1023 *      Value of default variable.
   1024 *USAGE:
   1025 *  SEE ORGANIZATION.
   1026 *REMARKS:
   1027 *  NONE.
   1028 *SEE ALSO:
   1029  */
   1030 EXTERN CONST
   1031    PARAM_VAL
   1032      Fap20v_wfq0_weight_default
   1033 #ifdef INIT
   1034    =
   1035 {
   1036   VAL_NUMERIC,
   1037   0,
   1038   {
   1039     /*
   1040      * Casting may be required here only to keep the compiler silent.
   1041      */
   1042     (unsigned long)50
   1043   }
   1044 }
   1045 #endif
   1046 ;
   1047 /********************************************************
   1048 *NAME
   1049 *  FAP20V_initial_output_link_num_vals
   1050 *TYPE: BUFFER
   1051 *DATE: 25/MAR/2003
   1052 *FUNCTION:
   1053 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   1054 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   1055 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   1056 *ORGANIZATION:
   1057 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1058 *    int val_type -
   1059 *      Type of value. Can be:
   1060 *        VAL_END_OF_LIST 0
   1061 *        VAL_NUMERIC     1
   1062 *        VAL_SYMBOL      2
   1063 *        VAL_TEXT        3
   1064 *        VAL_IP          4
   1065 *      The first one is only to indicate the end of
   1066 *      this array. The others indicate what kind of
   1067 *      value this is.
   1068 *    char *symb_val -
   1069 *      ASCII presentation of the symbolic value.
   1070 *      Note: Must be small letters only!
   1071 *      For numeric variables:
   1072 *      This is a dummy variable. Enables searching
   1073 *      array of 'PARAM_VAL_RULES' for name (string)
   1074 *      matching without special case for numeric
   1075 *      variable.
   1076 *    VAL_DESCRIPTOR val_descriptor -
   1077 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   1078 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   1079 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   1080 *      See details in file of definition. Note: Symbols
   1081 *      must be small letters only!
   1082 *USAGE:
   1083 *  SEE ORGANIZATION.
   1084 *REMARKS:
   1085 *  NONE.
   1086 *SEE ALSO:
   1087  */
   1088 EXTERN CONST
   1089    PARAM_VAL_RULES
   1090      FAP20V_initial_output_link_num_vals[]
   1091 #ifdef INIT
   1092    =
   1093 {
   1094   {
   1095     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   1096     {
   1097       {
   1098         HAS_MIN_VALUE | HAS_MAX_VALUE,
   1099         8,0,
   1100           /*
   1101            * Number of times this value can be repeated (i.e.,
   1102            * value is an array). Must be at least 1!
   1103            */
   1104         1,
   1105         (VAL_PROC_PTR)NULL
   1106       }
   1107     }
   1108   },
   1109 /*
   1110  * Last element. Do not remove.
   1111  */
   1112   {
   1113     VAL_END_OF_LIST
   1114   }
   1115 }
   1116 #endif
   1117 ;
   1118 /********************************************************
   1119 *NAME
   1120 *  FAP20V_fe1_link_num_vals
   1121 *TYPE: BUFFER
   1122 *DATE: 25/MAR/2003
   1123 *FUNCTION:
   1124 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   1125 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   1126 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   1127 *ORGANIZATION:
   1128 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1129 *    int val_type -
   1130 *      Type of value. Can be:
   1131 *        VAL_END_OF_LIST 0
   1132 *        VAL_NUMERIC     1
   1133 *        VAL_SYMBOL      2
   1134 *        VAL_TEXT        3
   1135 *        VAL_IP          4
   1136 *      The first one is only to indicate the end of
   1137 *      this array. The others indicate what kind of
   1138 *      value this is.
   1139 *    char *symb_val -
   1140 *      ASCII presentation of the symbolic value.
   1141 *      Note: Must be small letters only!
   1142 *      For numeric variables:
   1143 *      This is a dummy variable. Enables searching
   1144 *      array of 'PARAM_VAL_RULES' for name (string)
   1145 *      matching without special case for numeric
   1146 *      variable.
   1147 *    VAL_DESCRIPTOR val_descriptor -
   1148 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   1149 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   1150 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   1151 *      See details in file of definition. Note: Symbols
   1152 *      must be small letters only!
   1153 *USAGE:
   1154 *  SEE ORGANIZATION.
   1155 *REMARKS:
   1156 *  NONE.
   1157 *SEE ALSO:
   1158  */
   1159 EXTERN CONST
   1160    PARAM_VAL_RULES
   1161      FAP20V_fe1_link_num_vals[]
   1162 #ifdef INIT
   1163    =
   1164 {
   1165   {
   1166     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   1167     {
   1168       {
   1169         HAS_MIN_VALUE | HAS_MAX_VALUE,
   1170         31,0,
   1171           /*
   1172            * Number of times this value can be repeated (i.e.,
   1173            * value is an array). Must be at least 1!
   1174            */
   1175         1,
   1176         (VAL_PROC_PTR)NULL
   1177       }
   1178     }
   1179   },
   1180 /*
   1181  * Last element. Do not remove.
   1182  */
   1183   {
   1184     VAL_END_OF_LIST
   1185   }
   1186 }
   1187 #endif
   1188 ;
   1189 /********************************************************
   1190 *NAME
   1191 *  Fap20v_Interrupt_mockup_default
   1192 *TYPE: BUFFER
   1193 *DATE: 25/MAR/2003
   1194 *FUNCTION:
   1195 *  Default number if no amplitude.
   1196 *ORGANIZATION:
   1197 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1198 *    int val_type -
   1199 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   1200 *      VAL_IP OR VAL_SYMBOL)
   1201 *    union value -
   1202 *      Union of one of
   1203 *        int            int_value
   1204 *        char           *string_value
   1205 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   1206 *        unsigned long  ip_value ;
   1207 *      Value of default variable.
   1208 *USAGE:
   1209 *  SEE ORGANIZATION.
   1210 *REMARKS:
   1211 *  NONE.
   1212 *SEE ALSO:
   1213  */
   1214 EXTERN CONST
   1215    PARAM_VAL
   1216      Fap20v_Interrupt_mockup_default
   1217 #ifdef INIT
   1218    =
   1219 {
   1220   VAL_SYMBOL,
   1221   2,
   1222   {
   1223     /*
   1224      * Casting may be required here only to keep the compiler silent.
   1225      */
   1226     (unsigned long)"dont_mockup_interruupts"
   1227   }
   1228 }
   1229 #endif
   1230 ;
   1231 /********************************************************
   1232 *NAME
   1233 *  Fap20v_fe1_link_default
   1234 *TYPE: BUFFER
   1235 *DATE: 25/MAR/2003
   1236 *FUNCTION:
   1237 *  Default number if no amplitude.
   1238 *ORGANIZATION:
   1239 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1240 *    int val_type -
   1241 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   1242 *      VAL_IP OR VAL_SYMBOL)
   1243 *    union value -
   1244 *      Union of one of
   1245 *        int            int_value
   1246 *        char           *string_value
   1247 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   1248 *        unsigned long  ip_value ;
   1249 *      Value of default variable.
   1250 *USAGE:
   1251 *  SEE ORGANIZATION.
   1252 *REMARKS:
   1253 *  NONE.
   1254 *SEE ALSO:
   1255  */
   1256 EXTERN CONST
   1257    PARAM_VAL
   1258      Fap20v_fe1_link_default
   1259 #ifdef INIT
   1260    =
   1261 {
   1262   VAL_NUMERIC,
   1263   0,
   1264   {
   1265     /*
   1266      * Casting may be required here only to keep the compiler silent.
   1267      */
   1268     (unsigned long)0
   1269   }
   1270 }
   1271 #endif
   1272 ;
   1273 /********************************************************
   1274 *NAME
   1275 *  FAP20V_fe2_link_num_vals
   1276 *TYPE: BUFFER
   1277 *DATE: 25/MAR/2003
   1278 *FUNCTION:
   1279 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   1280 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   1281 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   1282 *ORGANIZATION:
   1283 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1284 *    int val_type -
   1285 *      Type of value. Can be:
   1286 *        VAL_END_OF_LIST 0
   1287 *        VAL_NUMERIC     1
   1288 *        VAL_SYMBOL      2
   1289 *        VAL_TEXT        3
   1290 *        VAL_IP          4
   1291 *      The first one is only to indicate the end of
   1292 *      this array. The others indicate what kind of
   1293 *      value this is.
   1294 *    char *symb_val -
   1295 *      ASCII presentation of the symbolic value.
   1296 *      Note: Must be small letters only!
   1297 *      For numeric variables:
   1298 *      This is a dummy variable. Enables searching
   1299 *      array of 'PARAM_VAL_RULES' for name (string)
   1300 *      matching without special case for numeric
   1301 *      variable.
   1302 *    VAL_DESCRIPTOR val_descriptor -
   1303 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   1304 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   1305 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   1306 *      See details in file of definition. Note: Symbols
   1307 *      must be small letters only!
   1308 *USAGE:
   1309 *  SEE ORGANIZATION.
   1310 *REMARKS:
   1311 *  NONE.
   1312 *SEE ALSO:
   1313  */
   1314 EXTERN CONST
   1315    PARAM_VAL_RULES
   1316      FAP20V_fe2_link_num_vals[]
   1317 #ifdef INIT
   1318    =
   1319 {
   1320   {
   1321     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   1322     {
   1323       {
   1324         HAS_MIN_VALUE | HAS_MAX_VALUE,
   1325         63,0,
   1326           /*
   1327            * Number of times this value can be repeated (i.e.,
   1328            * value is an array). Must be at least 1!
   1329            */
   1330         1,
   1331         (VAL_PROC_PTR)NULL
   1332       }
   1333     }
   1334   },
   1335 /*
   1336  * Last element. Do not remove.
   1337  */
   1338   {
   1339     VAL_END_OF_LIST
   1340   }
   1341 }
   1342 #endif
   1343 ;
   1344 /********************************************************
   1345 *NAME
   1346 *  Fap20v_fe2_link_default
   1347 *TYPE: BUFFER
   1348 *DATE: 25/MAR/2003
   1349 *FUNCTION:
   1350 *  Default number if no amplitude.
   1351 *ORGANIZATION:
   1352 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1353 *    int val_type -
   1354 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   1355 *      VAL_IP OR VAL_SYMBOL)
   1356 *    union value -
   1357 *      Union of one of
   1358 *        int            int_value
   1359 *        char           *string_value
   1360 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   1361 *        unsigned long  ip_value ;
   1362 *      Value of default variable.
   1363 *USAGE:
   1364 *  SEE ORGANIZATION.
   1365 *REMARKS:
   1366 *  NONE.
   1367 *SEE ALSO:
   1368  */
   1369 EXTERN CONST
   1370    PARAM_VAL
   1371      Fap20v_fe2_link_default
   1372 #ifdef INIT
   1373    =
   1374 {
   1375   VAL_NUMERIC,
   1376   0,
   1377   {
   1378     /*
   1379      * Casting may be required here only to keep the compiler silent.
   1380      */
   1381     (unsigned long)0
   1382   }
   1383 }
   1384 #endif
   1385 ;
   1386 /********************************************************
   1387 *NAME
   1388 *  Fap20v_fe3_link_num_vals
   1389 *TYPE: BUFFER
   1390 *DATE: 25/MAR/2003
   1391 *FUNCTION:
   1392 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   1393 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   1394 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   1395 *ORGANIZATION:
   1396 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1397 *    int val_type -
   1398 *      Type of value. Can be:
   1399 *        VAL_END_OF_LIST 0
   1400 *        VAL_NUMERIC     1
   1401 *        VAL_SYMBOL      2
   1402 *        VAL_TEXT        3
   1403 *        VAL_IP          4
   1404 *      The first one is only to indicate the end of
   1405 *      this array. The others indicate what kind of
   1406 *      value this is.
   1407 *    char *symb_val -
   1408 *      ASCII presentation of the symbolic value.
   1409 *      Note: Must be small letters only!
   1410 *      For numeric variables:
   1411 *      This is a dummy variable. Enables searching
   1412 *      array of 'PARAM_VAL_RULES' for name (string)
   1413 *      matching without special case for numeric
   1414 *      variable.
   1415 *    VAL_DESCRIPTOR val_descriptor -
   1416 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   1417 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   1418 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   1419 *      See details in file of definition. Note: Symbols
   1420 *      must be small letters only!
   1421 *USAGE:
   1422 *  SEE ORGANIZATION.
   1423 *REMARKS:
   1424 *  NONE.
   1425 *SEE ALSO:
   1426  */
   1427 EXTERN CONST
   1428    PARAM_VAL_RULES
   1429      Fap20v_fe3_link_num_vals[]
   1430 #ifdef INIT
   1431    =
   1432 {
   1433   {
   1434     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   1435     {
   1436       {
   1437         HAS_MIN_VALUE | HAS_MAX_VALUE,
   1438         31,0,
   1439           /*
   1440            * Number of times this value can be repeated (i.e.,
   1441            * value is an array). Must be at least 1!
   1442            */
   1443         1,
   1444         (VAL_PROC_PTR)NULL
   1445       }
   1446     }
   1447   },
   1448 /*
   1449  * Last element. Do not remove.
   1450  */
   1451   {
   1452     VAL_END_OF_LIST
   1453   }
   1454 }
   1455 #endif
   1456 ;
   1457 /********************************************************
   1458 *NAME
   1459 *  Fap20v_fe3_link_default
   1460 *TYPE: BUFFER
   1461 *DATE: 25/MAR/2003
   1462 *FUNCTION:
   1463 *  Default number if no amplitude.
   1464 *ORGANIZATION:
   1465 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1466 *    int val_type -
   1467 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   1468 *      VAL_IP OR VAL_SYMBOL)
   1469 *    union value -
   1470 *      Union of one of
   1471 *        int            int_value
   1472 *        char           *string_value
   1473 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   1474 *        unsigned long  ip_value ;
   1475 *      Value of default variable.
   1476 *USAGE:
   1477 *  SEE ORGANIZATION.
   1478 *REMARKS:
   1479 *  NONE.
   1480 *SEE ALSO:
   1481  */
   1482 EXTERN CONST
   1483    PARAM_VAL
   1484      Fap20v_fe3_link_default
   1485 #ifdef INIT
   1486    =
   1487 {
   1488   VAL_NUMERIC,
   1489   0,
   1490   {
   1491     /*
   1492      * Casting may be required here only to keep the compiler silent.
   1493      */
   1494     (unsigned long)0
   1495   }
   1496 }
   1497 #endif
   1498 ;
   1499 /********************************************************
   1500 *NAME
   1501 *  Fap20v_source_chip_id_num_val
   1502 *TYPE: BUFFER
   1503 *DATE: 25/MAR/2003
   1504 *FUNCTION:
   1505 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   1506 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   1507 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   1508 *ORGANIZATION:
   1509 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1510 *    int val_type -
   1511 *      Type of value. Can be:
   1512 *        VAL_END_OF_LIST 0
   1513 *        VAL_NUMERIC     1
   1514 *        VAL_SYMBOL      2
   1515 *        VAL_TEXT        3
   1516 *        VAL_IP          4
   1517 *      The first one is only to indicate the end of
   1518 *      this array. The others indicate what kind of
   1519 *      value this is.
   1520 *    char *symb_val -
   1521 *      ASCII presentation of the symbolic value.
   1522 *      Note: Must be small letters only!
   1523 *      For numeric variables:
   1524 *      This is a dummy variable. Enables searching
   1525 *      array of 'PARAM_VAL_RULES' for name (string)
   1526 *      matching without special case for numeric
   1527 *      variable.
   1528 *    VAL_DESCRIPTOR val_descriptor -
   1529 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   1530 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   1531 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   1532 *      See details in file of definition. Note: Symbols
   1533 *      must be small letters only!
   1534 *USAGE:
   1535 *  SEE ORGANIZATION.
   1536 *REMARKS:
   1537 *  NONE.
   1538 *SEE ALSO:
   1539  */
   1540 EXTERN CONST
   1541    PARAM_VAL_RULES
   1542      Fap20v_source_chip_id_num_val[]
   1543 #ifdef INIT
   1544    =
   1545 {
   1546   {
   1547     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   1548     {
   1549       {
   1550         HAS_MIN_VALUE | HAS_MAX_VALUE,
   1551         FAP20V_NOF_FAPS_IN_SYSTEM-1 /* 255 */,0,
   1552           /*
   1553            * Number of times this value can be repeated (i.e.,
   1554            * value is an array). Must be at least 1!
   1555            */
   1556         1,
   1557         (VAL_PROC_PTR)NULL
   1558       }
   1559     }
   1560   },
   1561 /*
   1562  * Last element. Do not remove.
   1563  */
   1564   {
   1565     VAL_END_OF_LIST
   1566   }
   1567 }
   1568 #endif
   1569 ;
   1570 /********************************************************
   1571 *NAME
   1572 *  Fap20v_source_chip_id_default
   1573 *TYPE: BUFFER
   1574 *DATE: 25/MAR/2003
   1575 *FUNCTION:
   1576 *  Default number if no amplitude.
   1577 *ORGANIZATION:
   1578 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1579 *    int val_type -
   1580 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   1581 *      VAL_IP OR VAL_SYMBOL)
   1582 *    union value -
   1583 *      Union of one of
   1584 *        int            int_value
   1585 *        char           *string_value
   1586 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   1587 *        unsigned long  ip_value ;
   1588 *      Value of default variable.
   1589 *USAGE:
   1590 *  SEE ORGANIZATION.
   1591 *REMARKS:
   1592 *  NONE.
   1593 *SEE ALSO:
   1594  */
   1595 EXTERN CONST
   1596    PARAM_VAL
   1597      Fap20v_source_chip_id_default
   1598 #ifdef INIT
   1599    =
   1600 {
   1601   VAL_NUMERIC,
   1602   0,
   1603   {
   1604     /*
   1605      * Casting may be required here only to keep the compiler silent.
   1606      */
   1607     (unsigned long)-1
   1608   }
   1609 }
   1610 #endif
   1611 ;
   1612 /********************************************************
   1613 *NAME
   1614 *  Fap20v_cell_body_num_vals
   1615 *TYPE: BUFFER
   1616 *DATE: 25/MAR/2003
   1617 *FUNCTION:
   1618 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   1619 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   1620 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   1621 *ORGANIZATION:
   1622 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1623 *    int val_type -
   1624 *      Type of value. Can be:
   1625 *        VAL_END_OF_LIST 0
   1626 *        VAL_NUMERIC     1
   1627 *        VAL_SYMBOL      2
   1628 *        VAL_TEXT        3
   1629 *        VAL_IP          4
   1630 *      The first one is only to indicate the end of
   1631 *      this array. The others indicate what kind of
   1632 *      value this is.
   1633 *    char *symb_val -
   1634 *      ASCII presentation of the symbolic value.
   1635 *      Note: Must be small letters only!
   1636 *      For numeric variables:
   1637 *      This is a dummy variable. Enables searching
   1638 *      array of 'PARAM_VAL_RULES' for name (string)
   1639 *      matching without special case for numeric
   1640 *      variable.
   1641 *    VAL_DESCRIPTOR val_descriptor -
   1642 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   1643 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   1644 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   1645 *      See details in file of definition. Note: Symbols
   1646 *      must be small letters only!
   1647 *USAGE:
   1648 *  SEE ORGANIZATION.
   1649 *REMARKS:
   1650 *  NONE.
   1651 *SEE ALSO:
   1652  */
   1653 EXTERN CONST
   1654    PARAM_VAL_RULES
   1655      Fap20v_cell_body_num_vals[]
   1656 #ifdef INIT
   1657    =
   1658 {
   1659   {
   1660     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   1661     {
   1662       {
   1663         0,
   1664         0,0,
   1665           /*
   1666            * Number of times this value can be repeated (i.e.,
   1667            * value is an array). Must be at least 1!
   1668            */
   1669         8,
   1670         (VAL_PROC_PTR)NULL
   1671       }
   1672     }
   1673   },
   1674 /*
   1675  * Last element. Do not remove.
   1676  */
   1677   {
   1678     VAL_END_OF_LIST
   1679   }
   1680 }
   1681 #endif
   1682 ;
   1683 /********************************************************
   1684 *NAME
   1685 *  Fap20v_list_of_links_num_vals
   1686 *TYPE: BUFFER
   1687 *DATE: 25/MAR/2003
   1688 *FUNCTION:
   1689 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   1690 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   1691 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   1692 *ORGANIZATION:
   1693 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1694 *    int val_type -
   1695 *      Type of value. Can be:
   1696 *        VAL_END_OF_LIST 0
   1697 *        VAL_NUMERIC     1
   1698 *        VAL_SYMBOL      2
   1699 *        VAL_TEXT        3
   1700 *        VAL_IP          4
   1701 *      The first one is only to indicate the end of
   1702 *      this array. The others indicate what kind of
   1703 *      value this is.
   1704 *    char *symb_val -
   1705 *      ASCII presentation of the symbolic value.
   1706 *      Note: Must be small letters only!
   1707 *      For numeric variables:
   1708 *      This is a dummy variable. Enables searching
   1709 *      array of 'PARAM_VAL_RULES' for name (string)
   1710 *      matching without special case for numeric
   1711 *      variable.
   1712 *    VAL_DESCRIPTOR val_descriptor -
   1713 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   1714 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   1715 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   1716 *      See details in file of definition. Note: Symbols
   1717 *      must be small letters only!
   1718 *USAGE:
   1719 *  SEE ORGANIZATION.
   1720 *REMARKS:
   1721 *  NONE.
   1722 *SEE ALSO:
   1723  */
   1724 EXTERN CONST
   1725    PARAM_VAL_RULES
   1726      Fap20v_list_of_links_num_vals[]
   1727 #ifdef INIT
   1728    =
   1729 {
   1730   {
   1731     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   1732     {
   1733       {
   1734         0,
   1735         0,0,
   1736           /*
   1737            * Number of times this value can be repeated (i.e.,
   1738            * value is an array). Must be at least 1!
   1739            */
   1740         1,
   1741         (VAL_PROC_PTR)NULL
   1742       }
   1743     }
   1744   },
   1745 /*
   1746  * Last element. Do not remove.
   1747  */
   1748   {
   1749     VAL_END_OF_LIST
   1750   }
   1751 }
   1752 #endif
   1753 ;
   1754 /********************************************************
   1755 *NAME
   1756 *  Fap20v_entity_type
   1757 *TYPE: BUFFER
   1758 *DATE: 1/JAN/2003
   1759 *FUNCTION:
   1760 *  ARRAY CONTAINING THE DEFAULT VALUE
   1761 *  RELATED TO THE PARAMETER "DATA".
   1762 *ORGANIZATION:
   1763 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1764 *    int val_type -
   1765 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   1766 *      VAL_IP OR VAL_SYMBOL)
   1767 *    union value -
   1768 *      Union of one of
   1769 *        int            int_value
   1770 *        char           *string_value
   1771 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   1772 *        unsigned long  ip_value ;
   1773 *      Value of default variable.
   1774 *USAGE:
   1775 *  SEE ORGANIZATION.
   1776 *REMARKS:
   1777 *  NONE.
   1778 *SEE ALSO:
   1779  */
   1780 EXTERN CONST
   1781    PARAM_VAL_RULES
   1782      Fap20v_entity_type[]
   1783 #ifdef INIT
   1784    =
   1785 {
   1786   {
   1787     VAL_SYMBOL,
   1788     "fe1",
   1789     {
   1790       {
   1791         SOC_SAND_FE1_ENTITY,
   1792           /*
   1793            * Casting added here just to keep the compiler silent.
   1794            */
   1795         (long)"    fe1 entity type.",
   1796           /*
   1797            * Pointer to a function to call after symbolic value
   1798            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   1799            * Casting to 'long' added here just to keep the
   1800            * compiler silent.
   1801            */
   1802         (long)NULL
   1803       }
   1804     }
   1805   },
   1806   {
   1807     VAL_SYMBOL,
   1808     "fe2",
   1809     {
   1810       {
   1811         SOC_SAND_FE2_ENTITY,
   1812           /*
   1813            * Casting added here just to keep the compiler silent.
   1814            */
   1815         (long)"    fe2 entity type.",
   1816           /*
   1817            * Pointer to a function to call after symbolic value
   1818            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   1819            * Casting to 'long' added here just to keep the
   1820            * compiler silent.
   1821            */
   1822         (long)NULL
   1823       }
   1824     }
   1825   },
   1826   {
   1827     VAL_SYMBOL,
   1828     "fe3",
   1829     {
   1830       {
   1831         SOC_SAND_FE3_ENTITY,
   1832           /*
   1833            * Casting added here just to keep the compiler silent.
   1834            */
   1835         (long)"    fe3 entity type.",
   1836           /*
   1837            * Pointer to a function to call after symbolic value
   1838            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   1839            * Casting to 'long' added here just to keep the
   1840            * compiler silent.
   1841            */
   1842         (long)NULL
   1843       }
   1844     }
   1845   },
   1846   {
   1847     VAL_SYMBOL,
   1848     "fip",
   1849     {
   1850       {
   1851         SOC_SAND_FIP_ENTITY,
   1852           /*
   1853            * Casting added here just to keep the compiler silent.
   1854            */
   1855         (long)"    fip entity type.",
   1856           /*
   1857            * Pointer to a function to call after symbolic value
   1858            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   1859            * Casting to 'long' added here just to keep the
   1860            * compiler silent.
   1861            */
   1862         (long)NULL
   1863       }
   1864     }
   1865   },
   1866   {
   1867     VAL_SYMBOL,
   1868     "fop",
   1869     {
   1870       {
   1871         SOC_SAND_FOP_ENTITY,
   1872           /*
   1873            * Casting added here just to keep the compiler silent.
   1874            */
   1875         (long)"    fop entity type.",
   1876           /*
   1877            * Pointer to a function to call after symbolic value
   1878            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   1879            * Casting to 'long' added here just to keep the
   1880            * compiler silent.
   1881            */
   1882         (long)NULL
   1883       }
   1884     }
   1885   },
   1886   {
   1887     VAL_SYMBOL,
   1888     "don't care",
   1889     {
   1890       {
   1891         SOC_SAND_DONT_CARE_ENTITY,
   1892           /*
   1893            * Casting added here just to keep the compiler silent.
   1894            */
   1895         (long)"    don't care what's entity type.",
   1896           /*
   1897            * Pointer to a function to call after symbolic value
   1898            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   1899            * Casting to 'long' added here just to keep the
   1900            * compiler silent.
   1901            */
   1902         (long)NULL
   1903       }
   1904     }
   1905   },
   1906 /*
   1907  * Last element. Do not remove.
   1908  */
   1909   {
   1910     VAL_END_OF_LIST
   1911   }
   1912 }
   1913 #endif
   1914 ;
   1915 /********************************************************
   1916 *NAME
   1917 *  Fap20v_local_loopback_on_vals
   1918 *TYPE: BUFFER
   1919 *DATE: 15/APR/2003
   1920 *FUNCTION:
   1921 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   1922 *  RELATED TO THE PARAMETER "DOWNLOAD_MIBS" IN THE
   1923 *  CONTEXT OF SUBJECT 'NVRAM'.
   1924 *ORGANIZATION:
   1925 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1926 *    int val_type -
   1927 *      Type of value. Can be:
   1928 *        VAL_END_OF_LIST 0
   1929 *        VAL_NUMERIC     1
   1930 *        VAL_SYMBOL      2
   1931 *        VAL_TEXT        3
   1932 *        VAL_IP          4
   1933 *      The first one is only to indicate the end of
   1934 *      this array. The others indicate what kind of
   1935 *      value this is.
   1936 *    VAL_DESCRIPTOR val_descriptor -
   1937 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   1938 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   1939 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   1940 *      See details in file of definition. Note: Symbols
   1941 *      must be small letters only!
   1942 *USAGE:
   1943 *  SEE ORGANIZATION.
   1944 *REMARKS:
   1945 *  NONE.
   1946 *SEE ALSO:
   1947  */
   1948 EXTERN CONST
   1949    PARAM_VAL_RULES
   1950      Fap20v_local_loopback_on_vals[]
   1951 #ifdef INIT
   1952    =
   1953 {
   1954   {
   1955     VAL_SYMBOL,
   1956     "on",
   1957     {
   1958       {
   1959         ON_EQUIVALENT,
   1960           /*
   1961            * Casting added here just to keep the compiler silent.
   1962            */
   1963         (long)"    loppback mode is set to local.",
   1964           /*
   1965            * Pointer to a function to call after symbolic value
   1966            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   1967            * Casting to 'long' added here just to keep the
   1968            * compiler silent.
   1969            */
   1970         (long)NULL
   1971       }
   1972     }
   1973   },
   1974   {
   1975     VAL_SYMBOL,
   1976     "off",
   1977     {
   1978       {
   1979         OFF_EQUIVALENT,
   1980           /*
   1981            * Casting added here just to keep the compiler silent.
   1982            */
   1983         (long)"    loppback mode is not set to local.",
   1984           /*
   1985            * Pointer to a function to call after symbolic value
   1986            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   1987            * Casting to 'long' added here just to keep the
   1988            * compiler silent.
   1989            */
   1990         (long)NULL
   1991       }
   1992     }
   1993   },
   1994 /*
   1995  * Last element. Do not remove.
   1996  */
   1997   {
   1998     VAL_END_OF_LIST
   1999   }
   2000 }
   2001 #endif
   2002 ;
   2003 /********************************************************
   2004 *NAME
   2005 *  Fap20v_activate_prbs_generator_vals
   2006 *TYPE: BUFFER
   2007 *DATE: 15/APR/2003
   2008 *FUNCTION:
   2009 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2010 *  RELATED TO THE PARAMETER "DOWNLOAD_MIBS" IN THE
   2011 *  CONTEXT OF SUBJECT 'NVRAM'.
   2012 *ORGANIZATION:
   2013 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2014 *    int val_type -
   2015 *      Type of value. Can be:
   2016 *        VAL_END_OF_LIST 0
   2017 *        VAL_NUMERIC     1
   2018 *        VAL_SYMBOL      2
   2019 *        VAL_TEXT        3
   2020 *        VAL_IP          4
   2021 *      The first one is only to indicate the end of
   2022 *      this array. The others indicate what kind of
   2023 *      value this is.
   2024 *    VAL_DESCRIPTOR val_descriptor -
   2025 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2026 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2027 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2028 *      See details in file of definition. Note: Symbols
   2029 *      must be small letters only!
   2030 *USAGE:
   2031 *  SEE ORGANIZATION.
   2032 *REMARKS:
   2033 *  NONE.
   2034 *SEE ALSO:
   2035  */
   2036 EXTERN CONST
   2037    PARAM_VAL_RULES
   2038      Fap20v_activate_prbs_generator_vals[]
   2039 #ifdef INIT
   2040    =
   2041 {
   2042   {
   2043     VAL_SYMBOL,
   2044     "on",
   2045     {
   2046       {
   2047         ON_EQUIVALENT,
   2048           /*
   2049            * Casting added here just to keep the compiler silent.
   2050            */
   2051         (long)"    Activate prbs generator.",
   2052           /*
   2053            * Pointer to a function to call after symbolic value
   2054            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   2055            * Casting to 'long' added here just to keep the
   2056            * compiler silent.
   2057            */
   2058         (long)NULL
   2059       }
   2060     }
   2061   },
   2062   {
   2063     VAL_SYMBOL,
   2064     "off",
   2065     {
   2066       {
   2067         OFF_EQUIVALENT,
   2068           /*
   2069            * Casting added here just to keep the compiler silent.
   2070            */
   2071         (long)"    Deactivate prbs generator.",
   2072           /*
   2073            * Pointer to a function to call after symbolic value
   2074            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   2075            * Casting to 'long' added here just to keep the
   2076            * compiler silent.
   2077            */
   2078         (long)NULL
   2079       }
   2080     }
   2081   },
   2082 /*
   2083  * Last element. Do not remove.
   2084  */
   2085   {
   2086     VAL_END_OF_LIST
   2087   }
   2088 }
   2089 #endif
   2090 ;
   2091 /********************************************************
   2092 *NAME
   2093 *  Fap20v_activate_prbs_checker_vals
   2094 *TYPE: BUFFER
   2095 *DATE: 15/APR/2003
   2096 *FUNCTION:
   2097 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2098 *  RELATED TO THE PARAMETER "DOWNLOAD_MIBS" IN THE
   2099 *  CONTEXT OF SUBJECT 'NVRAM'.
   2100 *ORGANIZATION:
   2101 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2102 *    int val_type -
   2103 *      Type of value. Can be:
   2104 *        VAL_END_OF_LIST 0
   2105 *        VAL_NUMERIC     1
   2106 *        VAL_SYMBOL      2
   2107 *        VAL_TEXT        3
   2108 *        VAL_IP          4
   2109 *      The first one is only to indicate the end of
   2110 *      this array. The others indicate what kind of
   2111 *      value this is.
   2112 *    VAL_DESCRIPTOR val_descriptor -
   2113 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2114 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2115 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2116 *      See details in file of definition. Note: Symbols
   2117 *      must be small letters only!
   2118 *USAGE:
   2119 *  SEE ORGANIZATION.
   2120 *REMARKS:
   2121 *  NONE.
   2122 *SEE ALSO:
   2123  */
   2124 EXTERN CONST
   2125    PARAM_VAL_RULES
   2126      Fap20v_activate_prbs_checker_vals[]
   2127 #ifdef INIT
   2128    =
   2129 {
   2130   {
   2131     VAL_SYMBOL,
   2132     "on",
   2133     {
   2134       {
   2135         ON_EQUIVALENT,
   2136           /*
   2137            * Casting added here just to keep the compiler silent.
   2138            */
   2139         (long)"    Activate prbs checker.",
   2140           /*
   2141            * Pointer to a function to call after symbolic value
   2142            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   2143            * Casting to 'long' added here just to keep the
   2144            * compiler silent.
   2145            */
   2146         (long)NULL
   2147       }
   2148     }
   2149   },
   2150   {
   2151     VAL_SYMBOL,
   2152     "off",
   2153     {
   2154       {
   2155         OFF_EQUIVALENT,
   2156           /*
   2157            * Casting added here just to keep the compiler silent.
   2158            */
   2159         (long)"    Deactivate prbs checker.",
   2160           /*
   2161            * Pointer to a function to call after symbolic value
   2162            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   2163            * Casting to 'long' added here just to keep the
   2164            * compiler silent.
   2165            */
   2166         (long)NULL
   2167       }
   2168     }
   2169   },
   2170 /*
   2171  * Last element. Do not remove.
   2172  */
   2173   {
   2174     VAL_END_OF_LIST
   2175   }
   2176 }
   2177 #endif
   2178 ;
   2179 /********************************************************
   2180 *NAME
   2181 *  Fap20v_serdes_number_num_vals
   2182 *TYPE: BUFFER
   2183 *DATE: 25/MAR/2003
   2184 *FUNCTION:
   2185 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2186 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   2187 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   2188 *ORGANIZATION:
   2189 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2190 *    int val_type -
   2191 *      Type of value. Can be:
   2192 *        VAL_END_OF_LIST 0
   2193 *        VAL_NUMERIC     1
   2194 *        VAL_SYMBOL      2
   2195 *        VAL_TEXT        3
   2196 *        VAL_IP          4
   2197 *      The first one is only to indicate the end of
   2198 *      this array. The others indicate what kind of
   2199 *      value this is.
   2200 *    char *symb_val -
   2201 *      ASCII presentation of the symbolic value.
   2202 *      Note: Must be small letters only!
   2203 *      For numeric variables:
   2204 *      This is a dummy variable. Enables searching
   2205 *      array of 'PARAM_VAL_RULES' for name (string)
   2206 *      matching without special case for numeric
   2207 *      variable.
   2208 *    VAL_DESCRIPTOR val_descriptor -
   2209 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2210 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2211 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2212 *      See details in file of definition. Note: Symbols
   2213 *      must be small letters only!
   2214 *USAGE:
   2215 *  SEE ORGANIZATION.
   2216 *REMARKS:
   2217 *  NONE.
   2218 *SEE ALSO:
   2219  */
   2220 EXTERN CONST
   2221    PARAM_VAL_RULES
   2222      Fap20v_serdes_number_num_vals[]
   2223 #ifdef INIT
   2224    =
   2225 {
   2226   {
   2227     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   2228     {
   2229       {
   2230         HAS_MIN_VALUE | HAS_MAX_VALUE,
   2231         FAP20V_NUMBER_OF_LINKS-1,0,
   2232           /*
   2233            * Number of times this value can be repeated (i.e.,
   2234            * value is an array). Must be at least 1!
   2235            */
   2236         1,
   2237         (VAL_PROC_PTR)NULL
   2238       }
   2239     }
   2240   },
   2241 /*
   2242  * Last element. Do not remove.
   2243  */
   2244   {
   2245     VAL_END_OF_LIST
   2246   }
   2247 }
   2248 #endif
   2249 ;
   2250 /********************************************************
   2251 *NAME
   2252 *  Fap20v_serdes_number_default
   2253 *TYPE: BUFFER
   2254 *DATE: 25/MAR/2003
   2255 *FUNCTION:
   2256 *  Default number if no amplitude.
   2257 *ORGANIZATION:
   2258 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2259 *    int val_type -
   2260 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   2261 *      VAL_IP OR VAL_SYMBOL)
   2262 *    union value -
   2263 *      Union of one of
   2264 *        int            int_value
   2265 *        char           *string_value
   2266 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   2267 *        unsigned long  ip_value ;
   2268 *      Value of default variable.
   2269 *USAGE:
   2270 *  SEE ORGANIZATION.
   2271 *REMARKS:
   2272 *  NONE.
   2273 *SEE ALSO:
   2274  */
   2275 EXTERN CONST
   2276    PARAM_VAL
   2277      Fap20v_serdes_number_default
   2278 #ifdef INIT
   2279    =
   2280 {
   2281   VAL_NUMERIC,
   2282   0,
   2283   {
   2284     /*
   2285      * Casting may be required here only to keep the compiler silent.
   2286      */
   2287     (unsigned long)0
   2288   }
   2289 }
   2290 #endif
   2291 ;
   2292 /********************************************************
   2293 *NAME
   2294 *  Fap20v_serdes_amplitude_num_vals
   2295 *TYPE: BUFFER
   2296 *DATE: 25/MAR/2003
   2297 *FUNCTION:
   2298 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2299 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   2300 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   2301 *ORGANIZATION:
   2302 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2303 *    int val_type -
   2304 *      Type of value. Can be:
   2305 *        VAL_END_OF_LIST 0
   2306 *        VAL_NUMERIC     1
   2307 *        VAL_SYMBOL      2
   2308 *        VAL_TEXT        3
   2309 *        VAL_IP          4
   2310 *      The first one is only to indicate the end of
   2311 *      this array. The others indicate what kind of
   2312 *      value this is.
   2313 *    char *symb_val -
   2314 *      ASCII presentation of the symbolic value.
   2315 *      Note: Must be small letters only!
   2316 *      For numeric variables:
   2317 *      This is a dummy variable. Enables searching
   2318 *      array of 'PARAM_VAL_RULES' for name (string)
   2319 *      matching without special case for numeric
   2320 *      variable.
   2321 *    VAL_DESCRIPTOR val_descriptor -
   2322 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2323 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2324 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2325 *      See details in file of definition. Note: Symbols
   2326 *      must be small letters only!
   2327 *USAGE:
   2328 *  SEE ORGANIZATION.
   2329 *REMARKS:
   2330 *  NONE.
   2331 *SEE ALSO:
   2332  */
   2333 EXTERN CONST
   2334    PARAM_VAL_RULES
   2335      Fap20v_serdes_driver_tx_num_vals[]
   2336 #ifdef INIT
   2337    =
   2338 {
   2339   {
   2340     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   2341     {
   2342       {
   2343         HAS_MIN_VALUE | HAS_MAX_VALUE,
   2344         FAP20V_SERDES_DRIVER_TX_MAX,0,
   2345           /*
   2346            * Number of times this value can be repeated (i.e.,
   2347            * value is an array). Must be at least 1!
   2348            */
   2349         1,
   2350         (VAL_PROC_PTR)NULL
   2351       }
   2352     }
   2353   },
   2354 /*
   2355  * Last element. Do not remove.
   2356  */
   2357   {
   2358     VAL_END_OF_LIST
   2359   }
   2360 }
   2361 #endif
   2362 ;
   2363 /********************************************************
   2364 *NAME
   2365 *  Fap20v_serdes_driver_tx_default
   2366 *TYPE: BUFFER
   2367 *DATE: 25/MAR/2003
   2368 *FUNCTION:
   2369 *  Default number if no amplitude.
   2370 *ORGANIZATION:
   2371 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2372 *    int val_type -
   2373 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   2374 *      VAL_IP OR VAL_SYMBOL)
   2375 *    union value -
   2376 *      Union of one of
   2377 *        int            int_value
   2378 *        char           *string_value
   2379 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   2380 *        unsigned long  ip_value ;
   2381 *      Value of default variable.
   2382 *USAGE:
   2383 *  SEE ORGANIZATION.
   2384 *REMARKS:
   2385 *  NONE.
   2386 *SEE ALSO:
   2387  */
   2388 EXTERN CONST
   2389    PARAM_VAL
   2390      Fap20v_serdes_driver_tx_default
   2391 #ifdef INIT
   2392    =
   2393 {
   2394   VAL_NUMERIC,
   2395   0,
   2396   {
   2397     /*
   2398      * Casting may be required here only to keep the compiler silent.
   2399      */
   2400     (unsigned long)1
   2401   }
   2402 }
   2403 #endif
   2404 ;
   2405 /********************************************************
   2406 *NAME
   2407 *  Fap20v_serdes_common_mode_num_vals
   2408 *TYPE: BUFFER
   2409 *DATE: 25/MAR/2003
   2410 *FUNCTION:
   2411 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2412 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   2413 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   2414 *ORGANIZATION:
   2415 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2416 *    int val_type -
   2417 *      Type of value. Can be:
   2418 *        VAL_END_OF_LIST 0
   2419 *        VAL_NUMERIC     1
   2420 *        VAL_SYMBOL      2
   2421 *        VAL_TEXT        3
   2422 *        VAL_IP          4
   2423 *      The first one is only to indicate the end of
   2424 *      this array. The others indicate what kind of
   2425 *      value this is.
   2426 *    char *symb_val -
   2427 *      ASCII presentation of the symbolic value.
   2428 *      Note: Must be small letters only!
   2429 *      For numeric variables:
   2430 *      This is a dummy variable. Enables searching
   2431 *      array of 'PARAM_VAL_RULES' for name (string)
   2432 *      matching without special case for numeric
   2433 *      variable.
   2434 *    VAL_DESCRIPTOR val_descriptor -
   2435 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2436 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2437 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2438 *      See details in file of definition. Note: Symbols
   2439 *      must be small letters only!
   2440 *USAGE:
   2441 *  SEE ORGANIZATION.
   2442 *REMARKS:
   2443 *  NONE.
   2444 *SEE ALSO:
   2445  */
   2446 EXTERN CONST
   2447    PARAM_VAL_RULES
   2448      Fap20v_serdes_driver_eq_num_vals[]
   2449 #ifdef INIT
   2450    =
   2451 {
   2452   {
   2453     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   2454     {
   2455       {
   2456         HAS_MIN_VALUE | HAS_MAX_VALUE,
   2457         FAP20V_SERDES_DRIVER_EQ_MAX,0,
   2458           /*
   2459            * Number of times this value can be repeated (i.e.,
   2460            * value is an array). Must be at least 1!
   2461            */
   2462         1,
   2463         (VAL_PROC_PTR)NULL
   2464       }
   2465     }
   2466   },
   2467 /*
   2468  * Last element. Do not remove.
   2469  */
   2470   {
   2471     VAL_END_OF_LIST
   2472   }
   2473 }
   2474 #endif
   2475 ;
   2476 /********************************************************
   2477 *NAME
   2478 *  Fap20v_serdes_driver_eq_default
   2479 *TYPE: BUFFER
   2480 *DATE: 25/MAR/2003
   2481 *FUNCTION:
   2482 *  Default number if no amplitude.
   2483 *ORGANIZATION:
   2484 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2485 *    int val_type -
   2486 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   2487 *      VAL_IP OR VAL_SYMBOL)
   2488 *    union value -
   2489 *      Union of one of
   2490 *        int            int_value
   2491 *        char           *string_value
   2492 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   2493 *        unsigned long  ip_value ;
   2494 *      Value of default variable.
   2495 *USAGE:
   2496 *  SEE ORGANIZATION.
   2497 *REMARKS:
   2498 *  NONE.
   2499 *SEE ALSO:
   2500  */
   2501 EXTERN CONST
   2502    PARAM_VAL
   2503      Fap20v_serdes_driver_eq_default
   2504 #ifdef INIT
   2505    =
   2506 {
   2507   VAL_NUMERIC,
   2508   0,
   2509   {
   2510     /*
   2511      * Casting may be required here only to keep the compiler silent.
   2512      */
   2513     (unsigned long)2
   2514   }
   2515 }
   2516 #endif
   2517 ;
   2518 /********************************************************
   2519 *NAME
   2520 *  Fap20v_zero_one_num_vals
   2521 *TYPE: BUFFER
   2522 *DATE: 25/MAR/2003
   2523 *FUNCTION:
   2524 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2525 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   2526 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   2527 *ORGANIZATION:
   2528 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2529 *    int val_type -
   2530 *      Type of value. Can be:
   2531 *        VAL_END_OF_LIST 0
   2532 *        VAL_NUMERIC     1
   2533 *        VAL_SYMBOL      2
   2534 *        VAL_TEXT        3
   2535 *        VAL_IP          4
   2536 *      The first one is only to indicate the end of
   2537 *      this array. The others indicate what kind of
   2538 *      value this is.
   2539 *    char *symb_val -
   2540 *      ASCII presentation of the symbolic value.
   2541 *      Note: Must be small letters only!
   2542 *      For numeric variables:
   2543 *      This is a dummy variable. Enables searching
   2544 *      array of 'PARAM_VAL_RULES' for name (string)
   2545 *      matching without special case for numeric
   2546 *      variable.
   2547 *    VAL_DESCRIPTOR val_descriptor -
   2548 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2549 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2550 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2551 *      See details in file of definition. Note: Symbols
   2552 *      must be small letters only!
   2553 *USAGE:
   2554 *  SEE ORGANIZATION.
   2555 *REMARKS:
   2556 *  NONE.
   2557 *SEE ALSO:
   2558  */
   2559 EXTERN CONST
   2560    PARAM_VAL_RULES
   2561      Fap20v_zero_one_num_vals[]
   2562 #ifdef INIT
   2563    =
   2564 {
   2565   {
   2566     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   2567     {
   2568       {
   2569         HAS_MIN_VALUE | HAS_MAX_VALUE,
   2570         1,0,
   2571           /*
   2572            * Number of times this value can be repeated (i.e.,
   2573            * value is an array). Must be at least 1!
   2574            */
   2575         1,
   2576         (VAL_PROC_PTR)NULL
   2577       }
   2578     }
   2579   },
   2580 /*
   2581  * Last element. Do not remove.
   2582  */
   2583   {
   2584     VAL_END_OF_LIST
   2585   }
   2586 }
   2587 #endif
   2588 ;
   2589 /********************************************************
   2590 *NAME
   2591 *  Fap20v_zero_default
   2592 *TYPE: BUFFER
   2593 *DATE: 25/MAR/2003
   2594 *FUNCTION:
   2595 *  Default number if no amplitude.
   2596 *ORGANIZATION:
   2597 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2598 *    int val_type -
   2599 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   2600 *      VAL_IP OR VAL_SYMBOL)
   2601 *    union value -
   2602 *      Union of one of
   2603 *        int            int_value
   2604 *        char           *string_value
   2605 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   2606 *        unsigned long  ip_value ;
   2607 *      Value of default variable.
   2608 *USAGE:
   2609 *  SEE ORGANIZATION.
   2610 *REMARKS:
   2611 *  NONE.
   2612 *SEE ALSO:
   2613  */
   2614 EXTERN CONST
   2615    PARAM_VAL
   2616      Fap20v_zero_default
   2617 #ifdef INIT
   2618    =
   2619 {
   2620   VAL_NUMERIC,
   2621   0,
   2622   {
   2623     /*
   2624      * Casting may be required here only to keep the compiler silent.
   2625      */
   2626     (unsigned long)0
   2627   }
   2628 }
   2629 #endif
   2630 ;
   2631 
   2632 /********************************************************
   2633 *NAME
   2634 *  Fap20v_percent
   2635 *TYPE: BUFFER
   2636 *DATE: 25/MAR/2003
   2637 *FUNCTION:
   2638 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2639 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   2640 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   2641 *ORGANIZATION:
   2642 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2643 *    int val_type -
   2644 *      Type of value. Can be:
   2645 *        VAL_END_OF_LIST 0
   2646 *        VAL_NUMERIC     1
   2647 *        VAL_SYMBOL      2
   2648 *        VAL_TEXT        3
   2649 *        VAL_IP          4
   2650 *      The first one is only to indicate the end of
   2651 *      this array. The others indicate what kind of
   2652 *      value this is.
   2653 *    char *symb_val -
   2654 *      ASCII presentation of the symbolic value.
   2655 *      Note: Must be small letters only!
   2656 *      For numeric variables:
   2657 *      This is a dummy variable. Enables searching
   2658 *      array of 'PARAM_VAL_RULES' for name (string)
   2659 *      matching without special case for numeric
   2660 *      variable.
   2661 *    VAL_DESCRIPTOR val_descriptor -
   2662 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2663 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2664 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2665 *      See details in file of definition. Note: Symbols
   2666 *      must be small letters only!
   2667 *USAGE:
   2668 *  SEE ORGANIZATION.
   2669 *REMARKS:
   2670 *  NONE.
   2671 *SEE ALSO:
   2672  */
   2673 EXTERN CONST
   2674    PARAM_VAL_RULES
   2675      Fap20v_percent[]
   2676 #ifdef INIT
   2677    =
   2678 {
   2679   {
   2680     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   2681     {
   2682       {
   2683         HAS_MIN_VALUE | HAS_MAX_VALUE,
   2684         100,0,
   2685           /*
   2686            * Number of times this value can be repeated (i.e.,
   2687            * value is an array). Must be at least 1!
   2688            */
   2689         1,
   2690         (VAL_PROC_PTR)NULL
   2691       }
   2692     }
   2693   },
   2694 /*
   2695  * Last element. Do not remove.
   2696  */
   2697   {
   2698     VAL_END_OF_LIST
   2699   }
   2700 }
   2701 #endif
   2702 ;
   2703 /********************************************************
   2704 *NAME
   2705 *  Fap20v_sms_max_bandwidth
   2706 *TYPE: BUFFER
   2707 *DATE: 25/MAR/2003
   2708 *FUNCTION:
   2709 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2710 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   2711 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   2712 *ORGANIZATION:
   2713 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2714 *    int val_type -
   2715 *      Type of value. Can be:
   2716 *        VAL_END_OF_LIST 0
   2717 *        VAL_NUMERIC     1
   2718 *        VAL_SYMBOL      2
   2719 *        VAL_TEXT        3
   2720 *        VAL_IP          4
   2721 *      The first one is only to indicate the end of
   2722 *      this array. The others indicate what kind of
   2723 *      value this is.
   2724 *    char *symb_val -
   2725 *      ASCII presentation of the symbolic value.
   2726 *      Note: Must be small letters only!
   2727 *      For numeric variables:
   2728 *      This is a dummy variable. Enables searching
   2729 *      array of 'PARAM_VAL_RULES' for name (string)
   2730 *      matching without special case for numeric
   2731 *      variable.
   2732 *    VAL_DESCRIPTOR val_descriptor -
   2733 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2734 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2735 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2736 *      See details in file of definition. Note: Symbols
   2737 *      must be small letters only!
   2738 *USAGE:
   2739 *  SEE ORGANIZATION.
   2740 *REMARKS:
   2741 *  NONE.
   2742 *SEE ALSO:
   2743  */
   2744 EXTERN CONST
   2745    PARAM_VAL_RULES
   2746      Fap20v_sms_max_bandwidth[]
   2747 #ifdef INIT
   2748    =
   2749 {
   2750   {
   2751     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   2752     {
   2753       {
   2754         HAS_MIN_VALUE | HAS_MAX_VALUE,
   2755         160000,0,
   2756           /*
   2757            * Number of times this value can be repeated (i.e.,
   2758            * value is an array). Must be at least 1!
   2759            */
   2760         1,
   2761         (VAL_PROC_PTR)NULL
   2762       }
   2763     }
   2764   },
   2765 /*
   2766  * Last element. Do not remove.
   2767  */
   2768   {
   2769     VAL_END_OF_LIST
   2770   }
   2771 }
   2772 #endif
   2773 ;
   2774 EXTERN CONST
   2775    PARAM_VAL_RULES
   2776      Fap20v_sms_max_burst_size[]
   2777 #ifdef INIT
   2778    =
   2779 {
   2780   {
   2781     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   2782     {
   2783       {
   2784         HAS_MIN_VALUE | HAS_MAX_VALUE,
   2785         128,0,
   2786           /*
   2787            * Number of times this value can be repeated (i.e.,
   2788            * value is an array). Must be at least 1!
   2789            */
   2790         1,
   2791         (VAL_PROC_PTR)NULL
   2792       }
   2793     }
   2794   },
   2795 /*
   2796  * Last element. Do not remove.
   2797  */
   2798   {
   2799     VAL_END_OF_LIST
   2800   }
   2801 }
   2802 #endif
   2803 ;
   2804 /********************************************************
   2805 *NAME
   2806 *  Fap20v_spatial_multicast_id
   2807 *TYPE: BUFFER
   2808 *DATE: 25/MAR/2003
   2809 *FUNCTION:
   2810 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2811 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   2812 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   2813 *ORGANIZATION:
   2814 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2815 *    int val_type -
   2816 *      Type of value. Can be:
   2817 *        VAL_END_OF_LIST 0
   2818 *        VAL_NUMERIC     1
   2819 *        VAL_SYMBOL      2
   2820 *        VAL_TEXT        3
   2821 *        VAL_IP          4
   2822 *      The first one is only to indicate the end of
   2823 *      this array. The others indicate what kind of
   2824 *      value this is.
   2825 *    char *symb_val -
   2826 *      ASCII presentation of the symbolic value.
   2827 *      Note: Must be small letters only!
   2828 *      For numeric variables:
   2829 *      This is a dummy variable. Enables searching
   2830 *      array of 'PARAM_VAL_RULES' for name (string)
   2831 *      matching without special case for numeric
   2832 *      variable.
   2833 *    VAL_DESCRIPTOR val_descriptor -
   2834 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2835 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2836 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2837 *      See details in file of definition. Note: Symbols
   2838 *      must be small letters only!
   2839 *USAGE:
   2840 *  SEE ORGANIZATION.
   2841 *REMARKS:
   2842 *  NONE.
   2843 *SEE ALSO:
   2844  */
   2845 EXTERN CONST
   2846    PARAM_VAL_RULES
   2847      Fap20v_spatial_multicast_id[]
   2848 #ifdef INIT
   2849    =
   2850 {
   2851   {
   2852     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   2853     {
   2854       {
   2855         HAS_MIN_VALUE | HAS_MAX_VALUE,
   2856         FAP20V_NOF_MULTICAST_GROUPS_FROM_PP-1,0,
   2857           /*
   2858            * Number of times this value can be repeated (i.e.,
   2859            * value is an array). Must be at least 1!
   2860            */
   2861         1,
   2862         (VAL_PROC_PTR)NULL
   2863       }
   2864     }
   2865   },
   2866 /*
   2867  * Last element. Do not remove.
   2868  */
   2869   {
   2870     VAL_END_OF_LIST
   2871   }
   2872 }
   2873 #endif
   2874 ;
   2875 /********************************************************
   2876 *NAME
   2877 *  Fap20v_max_nof_ports
   2878 *TYPE: BUFFER
   2879 *DATE: 25/MAR/2003
   2880 *FUNCTION:
   2881 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2882 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   2883 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   2884 *ORGANIZATION:
   2885 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2886 *    int val_type -
   2887 *      Type of value. Can be:
   2888 *        VAL_END_OF_LIST 0
   2889 *        VAL_NUMERIC     1
   2890 *        VAL_SYMBOL      2
   2891 *        VAL_TEXT        3
   2892 *        VAL_IP          4
   2893 *      The first one is only to indicate the end of
   2894 *      this array. The others indicate what kind of
   2895 *      value this is.
   2896 *    char *symb_val -
   2897 *      ASCII presentation of the symbolic value.
   2898 *      Note: Must be small letters only!
   2899 *      For numeric variables:
   2900 *      This is a dummy variable. Enables searching
   2901 *      array of 'PARAM_VAL_RULES' for name (string)
   2902 *      matching without special case for numeric
   2903 *      variable.
   2904 *    VAL_DESCRIPTOR val_descriptor -
   2905 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2906 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2907 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2908 *      See details in file of definition. Note: Symbols
   2909 *      must be small letters only!
   2910 *USAGE:
   2911 *  SEE ORGANIZATION.
   2912 *REMARKS:
   2913 *  NONE.
   2914 *SEE ALSO:
   2915  */
   2916 EXTERN CONST
   2917    PARAM_VAL_RULES
   2918      Fap20v_max_nof_ports[]
   2919 #ifdef INIT
   2920    =
   2921 {
   2922   {
   2923     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   2924     {
   2925       {
   2926         HAS_MIN_VALUE | HAS_MAX_VALUE,
   2927         FAP20V_NOF_SCH_PORTS-2,0,
   2928           /*
   2929            * Number of times this value can be repeated (i.e.,
   2930            * value is an array). Must be at least 1!
   2931            */
   2932         1,
   2933         (VAL_PROC_PTR)NULL
   2934       }
   2935     }
   2936   },
   2937 /*
   2938  * Last element. Do not remove.
   2939  */
   2940   {
   2941     VAL_END_OF_LIST
   2942   }
   2943 }
   2944 #endif
   2945 ;
   2946 /********************************************************
   2947 *NAME
   2948 *  Fap20v_spatial_multicast_queue
   2949 *TYPE: BUFFER
   2950 *DATE: 25/MAR/2003
   2951 *FUNCTION:
   2952 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2953 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   2954 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   2955 *ORGANIZATION:
   2956 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2957 *    int val_type -
   2958 *      Type of value. Can be:
   2959 *        VAL_END_OF_LIST 0
   2960 *        VAL_NUMERIC     1
   2961 *        VAL_SYMBOL      2
   2962 *        VAL_TEXT        3
   2963 *        VAL_IP          4
   2964 *      The first one is only to indicate the end of
   2965 *      this array. The others indicate what kind of
   2966 *      value this is.
   2967 *    char *symb_val -
   2968 *      ASCII presentation of the symbolic value.
   2969 *      Note: Must be small letters only!
   2970 *      For numeric variables:
   2971 *      This is a dummy variable. Enables searching
   2972 *      array of 'PARAM_VAL_RULES' for name (string)
   2973 *      matching without special case for numeric
   2974 *      variable.
   2975 *    VAL_DESCRIPTOR val_descriptor -
   2976 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2977 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2978 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2979 *      See details in file of definition. Note: Symbols
   2980 *      must be small letters only!
   2981 *USAGE:
   2982 *  SEE ORGANIZATION.
   2983 *REMARKS:
   2984 *  NONE.
   2985 *SEE ALSO:
   2986  */
   2987 EXTERN CONST
   2988    PARAM_VAL_RULES
   2989      Fap20v_spatial_multicast_queue[]
   2990 #ifdef INIT
   2991    =
   2992 {
   2993   {
   2994     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   2995     {
   2996       {
   2997         HAS_MIN_VALUE | HAS_MAX_VALUE,
   2998         FAP20V_SP_QUEUE_3,FAP20V_SP_QUEUE_0,
   2999           /*
   3000            * Number of times this value can be repeated (i.e.,
   3001            * value is an array). Must be at least 1!
   3002            */
   3003         1,
   3004         (VAL_PROC_PTR)NULL
   3005       }
   3006     }
   3007   },
   3008 /*
   3009  * Last element. Do not remove.
   3010  */
   3011   {
   3012     VAL_END_OF_LIST
   3013   }
   3014 }
   3015 #endif
   3016 ;
   3017 /********************************************************
   3018 *NAME
   3019 *  Fap20v_flow_id
   3020 *TYPE: BUFFER
   3021 *DATE: 25/MAR/2003
   3022 *FUNCTION:
   3023 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3024 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   3025 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   3026 *ORGANIZATION:
   3027 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3028 *    int val_type -
   3029 *      Type of value. Can be:
   3030 *        VAL_END_OF_LIST 0
   3031 *        VAL_NUMERIC     1
   3032 *        VAL_SYMBOL      2
   3033 *        VAL_TEXT        3
   3034 *        VAL_IP          4
   3035 *      The first one is only to indicate the end of
   3036 *      this array. The others indicate what kind of
   3037 *      value this is.
   3038 *    char *symb_val -
   3039 *      ASCII presentation of the symbolic value.
   3040 *      Note: Must be small letters only!
   3041 *      For numeric variables:
   3042 *      This is a dummy variable. Enables searching
   3043 *      array of 'PARAM_VAL_RULES' for name (string)
   3044 *      matching without special case for numeric
   3045 *      variable.
   3046 *    VAL_DESCRIPTOR val_descriptor -
   3047 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3048 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3049 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3050 *      See details in file of definition. Note: Symbols
   3051 *      must be small letters only!
   3052 *USAGE:
   3053 *  SEE ORGANIZATION.
   3054 *REMARKS:
   3055 *  NONE.
   3056 *SEE ALSO:
   3057  */
   3058 EXTERN CONST
   3059    PARAM_VAL_RULES
   3060      Fap20v_flow_id[]
   3061 #ifdef INIT
   3062    =
   3063 {
   3064   {
   3065     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   3066     {
   3067       {
   3068         HAS_MIN_VALUE | HAS_MAX_VALUE,
   3069         FAP20V_NOF_FLOWS-1,0,
   3070           /*
   3071            * Number of times this value can be repeated (i.e.,
   3072            * value is an array). Must be at least 1!
   3073            */
   3074         1,
   3075         (VAL_PROC_PTR)NULL
   3076       }
   3077     }
   3078   },
   3079 /*
   3080  * Last element. Do not remove.
   3081  */
   3082   {
   3083     VAL_END_OF_LIST
   3084   }
   3085 }
   3086 #endif
   3087 ;
   3088 /********************************************************
   3089 *NAME
   3090 *  fap20v_scheduler_recycle_flow_weight_vals
   3091 *TYPE: BUFFER
   3092 *DATE: 25/MAR/2003
   3093 *FUNCTION:
   3094 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3095 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   3096 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   3097 *ORGANIZATION:
   3098 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3099 *    int val_type -
   3100 *      Type of value. Can be:
   3101 *        VAL_END_OF_LIST 0
   3102 *        VAL_NUMERIC     1
   3103 *        VAL_SYMBOL      2
   3104 *        VAL_TEXT        3
   3105 *        VAL_IP          4
   3106 *      The first one is only to indicate the end of
   3107 *      this array. The others indicate what kind of
   3108 *      value this is.
   3109 *    char *symb_val -
   3110 *      ASCII presentation of the symbolic value.
   3111 *      Note: Must be small letters only!
   3112 *      For numeric variables:
   3113 *      This is a dummy variable. Enables searching
   3114 *      array of 'PARAM_VAL_RULES' for name (string)
   3115 *      matching without special case for numeric
   3116 *      variable.
   3117 *    VAL_DESCRIPTOR val_descriptor -
   3118 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3119 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3120 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3121 *      See details in file of definition. Note: Symbols
   3122 *      must be small letters only!
   3123 *USAGE:
   3124 *  SEE ORGANIZATION.
   3125 *REMARKS:
   3126 *  NONE.
   3127 *SEE ALSO:
   3128  */
   3129 EXTERN CONST
   3130    PARAM_VAL_RULES
   3131      fap20v_scheduler_recycle_flow_weight_vals[]
   3132 #ifdef INIT
   3133    =
   3134 {
   3135   {
   3136     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   3137     {
   3138       {
   3139         HAS_MIN_VALUE | HAS_MAX_VALUE,
   3140         63, 0,
   3141           /*
   3142            * Number of times this value can be repeated (i.e.,
   3143            * value is an array). Must be at least 1!
   3144            */
   3145         1,
   3146         (VAL_PROC_PTR)NULL
   3147       }
   3148     }
   3149   },
   3150 /*
   3151  * Last element. Do not remove.
   3152  */
   3153   {
   3154     VAL_END_OF_LIST
   3155   }
   3156 }
   3157 #endif
   3158 ;
   3159 /********************************************************
   3160 *NAME
   3161 *  Fap20v_profile_id
   3162 *TYPE: BUFFER
   3163 *DATE: 25/MAR/2003
   3164 *FUNCTION:
   3165 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3166 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   3167 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   3168 *ORGANIZATION:
   3169 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3170 *    int val_type -
   3171 *      Type of value. Can be:
   3172 *        VAL_END_OF_LIST 0
   3173 *        VAL_NUMERIC     1
   3174 *        VAL_SYMBOL      2
   3175 *        VAL_TEXT        3
   3176 *        VAL_IP          4
   3177 *      The first one is only to indicate the end of
   3178 *      this array. The others indicate what kind of
   3179 *      value this is.
   3180 *    char *symb_val -
   3181 *      ASCII presentation of the symbolic value.
   3182 *      Note: Must be small letters only!
   3183 *      For numeric variables:
   3184 *      This is a dummy variable. Enables searching
   3185 *      array of 'PARAM_VAL_RULES' for name (string)
   3186 *      matching without special case for numeric
   3187 *      variable.
   3188 *    VAL_DESCRIPTOR val_descriptor -
   3189 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3190 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3191 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3192 *      See details in file of definition. Note: Symbols
   3193 *      must be small letters only!
   3194 *USAGE:
   3195 *  SEE ORGANIZATION.
   3196 *REMARKS:
   3197 *  NONE.
   3198 *SEE ALSO:
   3199  */
   3200 EXTERN CONST
   3201    PARAM_VAL_RULES
   3202      Fap20v_profile_id[]
   3203 #ifdef INIT
   3204    =
   3205 {
   3206   {
   3207     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   3208     {
   3209       {
   3210         HAS_MIN_VALUE | HAS_MAX_VALUE,
   3211         FAP20V_NOF_PRE_DEFINED_PROFILES-1,0,
   3212           /*
   3213            * Number of times this value can be repeated (i.e.,
   3214            * value is an array). Must be at least 1!
   3215            */
   3216         1,
   3217         (VAL_PROC_PTR)NULL
   3218       }
   3219     }
   3220   },
   3221 /*
   3222  * Last element. Do not remove.
   3223  */
   3224   {
   3225     VAL_END_OF_LIST
   3226   }
   3227 }
   3228 #endif
   3229 ;
   3230 /********************************************************
   3231 *NAME
   3232 *  Fap20v_nof_queues
   3233 *TYPE: BUFFER
   3234 *DATE: 25/MAR/2003
   3235 *FUNCTION:
   3236 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3237 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   3238 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   3239 *ORGANIZATION:
   3240 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3241 *    int val_type -
   3242 *      Type of value. Can be:
   3243 *        VAL_END_OF_LIST 0
   3244 *        VAL_NUMERIC     1
   3245 *        VAL_SYMBOL      2
   3246 *        VAL_TEXT        3
   3247 *        VAL_IP          4
   3248 *      The first one is only to indicate the end of
   3249 *      this array. The others indicate what kind of
   3250 *      value this is.
   3251 *    char *symb_val -
   3252 *      ASCII presentation of the symbolic value.
   3253 *      Note: Must be small letters only!
   3254 *      For numeric variables:
   3255 *      This is a dummy variable. Enables searching
   3256 *      array of 'PARAM_VAL_RULES' for name (string)
   3257 *      matching without special case for numeric
   3258 *      variable.
   3259 *    VAL_DESCRIPTOR val_descriptor -
   3260 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3261 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3262 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3263 *      See details in file of definition. Note: Symbols
   3264 *      must be small letters only!
   3265 *USAGE:
   3266 *  SEE ORGANIZATION.
   3267 *REMARKS:
   3268 *  NONE.
   3269 *SEE ALSO:
   3270  */
   3271 EXTERN CONST
   3272    PARAM_VAL_RULES
   3273      Fap20v_nof_queues[]
   3274 #ifdef INIT
   3275    =
   3276 {
   3277   {
   3278     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   3279     {
   3280       {
   3281         HAS_MIN_VALUE | HAS_MAX_VALUE,
   3282         FAP20V_NOF_QUEUES,0,
   3283           /*
   3284            * Number of times this value can be repeated (i.e.,
   3285            * value is an array). Must be at least 1!
   3286            */
   3287         1,
   3288         (VAL_PROC_PTR)NULL
   3289       }
   3290     }
   3291   },
   3292 /*
   3293  * Last element. Do not remove.
   3294  */
   3295   {
   3296     VAL_END_OF_LIST
   3297   }
   3298 }
   3299 #endif
   3300 ;
   3301 /********************************************************
   3302 *NAME
   3303 *  Fap20v_queue_id
   3304 *TYPE: BUFFER
   3305 *DATE: 25/MAR/2003
   3306 *FUNCTION:
   3307 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3308 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   3309 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   3310 *ORGANIZATION:
   3311 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3312 *    int val_type -
   3313 *      Type of value. Can be:
   3314 *        VAL_END_OF_LIST 0
   3315 *        VAL_NUMERIC     1
   3316 *        VAL_SYMBOL      2
   3317 *        VAL_TEXT        3
   3318 *        VAL_IP          4
   3319 *      The first one is only to indicate the end of
   3320 *      this array. The others indicate what kind of
   3321 *      value this is.
   3322 *    char *symb_val -
   3323 *      ASCII presentation of the symbolic value.
   3324 *      Note: Must be small letters only!
   3325 *      For numeric variables:
   3326 *      This is a dummy variable. Enables searching
   3327 *      array of 'PARAM_VAL_RULES' for name (string)
   3328 *      matching without special case for numeric
   3329 *      variable.
   3330 *    VAL_DESCRIPTOR val_descriptor -
   3331 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3332 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3333 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3334 *      See details in file of definition. Note: Symbols
   3335 *      must be small letters only!
   3336 *USAGE:
   3337 *  SEE ORGANIZATION.
   3338 *REMARKS:
   3339 *  NONE.
   3340 *SEE ALSO:
   3341  */
   3342 EXTERN CONST
   3343    PARAM_VAL_RULES
   3344      Fap20v_queue_id[]
   3345 #ifdef INIT
   3346    =
   3347 {
   3348   {
   3349     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   3350     {
   3351       {
   3352         HAS_MIN_VALUE | HAS_MAX_VALUE,
   3353         FAP20V_NOF_QUEUES-1,0,
   3354           /*
   3355            * Number of times this value can be repeated (i.e.,
   3356            * value is an array). Must be at least 1!
   3357            */
   3358         1,
   3359         (VAL_PROC_PTR)NULL
   3360       }
   3361     }
   3362   },
   3363 /*
   3364  * Last element. Do not remove.
   3365  */
   3366   {
   3367     VAL_END_OF_LIST
   3368   }
   3369 }
   3370 #endif
   3371 ;
   3372 /********************************************************
   3373 *NAME
   3374 *  Fap20v_destination_id
   3375 *TYPE: BUFFER
   3376 *DATE: 25/MAR/2003
   3377 *FUNCTION:
   3378 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3379 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   3380 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   3381 *ORGANIZATION:
   3382 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3383 *    int val_type -
   3384 *      Type of value. Can be:
   3385 *        VAL_END_OF_LIST 0
   3386 *        VAL_NUMERIC     1
   3387 *        VAL_SYMBOL      2
   3388 *        VAL_TEXT        3
   3389 *        VAL_IP          4
   3390 *      The first one is only to indicate the end of
   3391 *      this array. The others indicate what kind of
   3392 *      value this is.
   3393 *    char *symb_val -
   3394 *      ASCII presentation of the symbolic value.
   3395 *      Note: Must be small letters only!
   3396 *      For numeric variables:
   3397 *      This is a dummy variable. Enables searching
   3398 *      array of 'PARAM_VAL_RULES' for name (string)
   3399 *      matching without special case for numeric
   3400 *      variable.
   3401 *    VAL_DESCRIPTOR val_descriptor -
   3402 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3403 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3404 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3405 *      See details in file of definition. Note: Symbols
   3406 *      must be small letters only!
   3407 *USAGE:
   3408 *  SEE ORGANIZATION.
   3409 *REMARKS:
   3410 *  NONE.
   3411 *SEE ALSO:
   3412  */
   3413 EXTERN CONST
   3414    PARAM_VAL_RULES
   3415      Fap20v_destination_id[]
   3416 #ifdef INIT
   3417    =
   3418 {
   3419   {
   3420     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   3421     {
   3422       {
   3423         HAS_MIN_VALUE | HAS_MAX_VALUE,
   3424         FAP20V_NOF_LBP_DESTINATIONS-1,0,
   3425           /*
   3426            * Number of times this value can be repeated (i.e.,
   3427            * value is an array). Must be at least 1!
   3428            */
   3429         1,
   3430         (VAL_PROC_PTR)NULL
   3431       }
   3432     }
   3433   },
   3434 /*
   3435  * Last element. Do not remove.
   3436  */
   3437   {
   3438     VAL_END_OF_LIST
   3439   }
   3440 }
   3441 #endif
   3442 ;
   3443 
   3444 /********************************************************
   3445 *NAME
   3446 *  Fap20v_packet_data
   3447 *TYPE: BUFFER
   3448 *DATE: 25/MAR/2003
   3449 *FUNCTION:
   3450 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3451 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   3452 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   3453 *ORGANIZATION:
   3454 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3455 *    int val_type -
   3456 *      Type of value. Can be:
   3457 *        VAL_END_OF_LIST 0
   3458 *        VAL_NUMERIC     1
   3459 *        VAL_SYMBOL      2
   3460 *        VAL_TEXT        3
   3461 *        VAL_IP          4
   3462 *      The first one is only to indicate the end of
   3463 *      this array. The others indicate what kind of
   3464 *      value this is.
   3465 *    char *symb_val -
   3466 *      ASCII presentation of the symbolic value.
   3467 *      Note: Must be small letters only!
   3468 *      For numeric variables:
   3469 *      This is a dummy variable. Enables searching
   3470 *      array of 'PARAM_VAL_RULES' for name (string)
   3471 *      matching without special case for numeric
   3472 *      variable.
   3473 *    VAL_DESCRIPTOR val_descriptor -
   3474 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3475 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3476 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3477 *      See details in file of definition. Note: Symbols
   3478 *      must be small letters only!
   3479 *USAGE:
   3480 *  SEE ORGANIZATION.
   3481 *REMARKS:
   3482 *  NONE.
   3483 *SEE ALSO:
   3484  */
   3485 EXTERN CONST
   3486    PARAM_VAL_RULES
   3487      Fap20v_packet_data[]
   3488 #ifdef INIT
   3489    =
   3490 {
   3491   {
   3492     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   3493     {
   3494       {
   3495         0,
   3496         0,0,
   3497           /*
   3498            * Number of times this value can be repeated (i.e.,
   3499            * value is an array). Must be at least 1!
   3500            */
   3501         MAX_REPEATED_PARAM_VAL,
   3502         (VAL_PROC_PTR)NULL
   3503       }
   3504     }
   3505   },
   3506 /*
   3507  * Last element. Do not remove.
   3508  */
   3509   {
   3510     VAL_END_OF_LIST
   3511   }
   3512 }
   3513 #endif
   3514 ;
   3515 /********************************************************
   3516 *NAME
   3517 *  Fap20v_recycle_multicast_tree_id
   3518 *TYPE: BUFFER
   3519 *DATE: 25/MAR/2003
   3520 *FUNCTION:
   3521 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3522 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   3523 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   3524 *ORGANIZATION:
   3525 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3526 *    int val_type -
   3527 *      Type of value. Can be:
   3528 *        VAL_END_OF_LIST 0
   3529 *        VAL_NUMERIC     1
   3530 *        VAL_SYMBOL      2
   3531 *        VAL_TEXT        3
   3532 *        VAL_IP          4
   3533 *      The first one is only to indicate the end of
   3534 *      this array. The others indicate what kind of
   3535 *      value this is.
   3536 *    char *symb_val -
   3537 *      ASCII presentation of the symbolic value.
   3538 *      Note: Must be small letters only!
   3539 *      For numeric variables:
   3540 *      This is a dummy variable. Enables searching
   3541 *      array of 'PARAM_VAL_RULES' for name (string)
   3542 *      matching without special case for numeric
   3543 *      variable.
   3544 *    VAL_DESCRIPTOR val_descriptor -
   3545 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3546 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3547 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3548 *      See details in file of definition. Note: Symbols
   3549 *      must be small letters only!
   3550 *USAGE:
   3551 *  SEE ORGANIZATION.
   3552 *REMARKS:
   3553 *  NONE.
   3554 *SEE ALSO:
   3555  */
   3556 EXTERN CONST
   3557    PARAM_VAL_RULES
   3558      Fap20v_recycle_multicast_tree_id[]
   3559 #ifdef INIT
   3560    =
   3561 {
   3562   {
   3563     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   3564     {
   3565       {
   3566         HAS_MIN_VALUE | HAS_MAX_VALUE,
   3567         FAP20V_RECYCLE_MULTICAST_NOF_GROUPS-1,0,
   3568           /*
   3569            * Number of times this value can be repeated (i.e.,
   3570            * value is an array). Must be at least 1!
   3571            */
   3572         1,
   3573         (VAL_PROC_PTR)NULL
   3574       }
   3575     }
   3576   },
   3577 /*
   3578  * Last element. Do not remove.
   3579  */
   3580   {
   3581     VAL_END_OF_LIST
   3582   }
   3583 }
   3584 #endif
   3585 ;
   3586 /********************************************************
   3587 *NAME
   3588 *  Fap20v_recycle_multicast_queues
   3589 *TYPE: BUFFER
   3590 *DATE: 25/MAR/2003
   3591 *FUNCTION:
   3592 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3593 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   3594 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   3595 *ORGANIZATION:
   3596 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3597 *    int val_type -
   3598 *      Type of value. Can be:
   3599 *        VAL_END_OF_LIST 0
   3600 *        VAL_NUMERIC     1
   3601 *        VAL_SYMBOL      2
   3602 *        VAL_TEXT        3
   3603 *        VAL_IP          4
   3604 *      The first one is only to indicate the end of
   3605 *      this array. The others indicate what kind of
   3606 *      value this is.
   3607 *    char *symb_val -
   3608 *      ASCII presentation of the symbolic value.
   3609 *      Note: Must be small letters only!
   3610 *      For numeric variables:
   3611 *      This is a dummy variable. Enables searching
   3612 *      array of 'PARAM_VAL_RULES' for name (string)
   3613 *      matching without special case for numeric
   3614 *      variable.
   3615 *    VAL_DESCRIPTOR val_descriptor -
   3616 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3617 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3618 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3619 *      See details in file of definition. Note: Symbols
   3620 *      must be small letters only!
   3621 *USAGE:
   3622 *  SEE ORGANIZATION.
   3623 *REMARKS:
   3624 *  NONE.
   3625 *SEE ALSO:
   3626  */
   3627 EXTERN CONST
   3628    PARAM_VAL_RULES
   3629      Fap20v_recycle_multicast_queues[]
   3630 #ifdef INIT
   3631    =
   3632 {
   3633   {
   3634     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   3635     {
   3636       {
   3637         HAS_MIN_VALUE | HAS_MAX_VALUE,
   3638         FAP20V_NOF_QUEUES-1,0,
   3639           /*
   3640            * Number of times this value can be repeated (i.e.,
   3641            * value is an array). Must be at least 1!
   3642            */
   3643         2,
   3644         (VAL_PROC_PTR)NULL
   3645       }
   3646     }
   3647   },
   3648 /*
   3649  * Last element. Do not remove.
   3650  */
   3651   {
   3652     VAL_END_OF_LIST
   3653   }
   3654 }
   3655 #endif
   3656 ;
   3657 /********************************************************
   3658 *NAME
   3659 *  Fap20v_recycle_queue_index
   3660 *TYPE: BUFFER
   3661 *DATE: 25/MAR/2003
   3662 *FUNCTION:
   3663 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3664 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   3665 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   3666 *ORGANIZATION:
   3667 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3668 *    int val_type -
   3669 *      Type of value. Can be:
   3670 *        VAL_END_OF_LIST 0
   3671 *        VAL_NUMERIC     1
   3672 *        VAL_SYMBOL      2
   3673 *        VAL_TEXT        3
   3674 *        VAL_IP          4
   3675 *      The first one is only to indicate the end of
   3676 *      this array. The others indicate what kind of
   3677 *      value this is.
   3678 *    char *symb_val -
   3679 *      ASCII presentation of the symbolic value.
   3680 *      Note: Must be small letters only!
   3681 *      For numeric variables:
   3682 *      This is a dummy variable. Enables searching
   3683 *      array of 'PARAM_VAL_RULES' for name (string)
   3684 *      matching without special case for numeric
   3685 *      variable.
   3686 *    VAL_DESCRIPTOR val_descriptor -
   3687 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3688 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3689 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3690 *      See details in file of definition. Note: Symbols
   3691 *      must be small letters only!
   3692 *USAGE:
   3693 *  SEE ORGANIZATION.
   3694 *REMARKS:
   3695 *  NONE.
   3696 *SEE ALSO:
   3697  */
   3698 EXTERN CONST
   3699    PARAM_VAL_RULES
   3700      Fap20v_recycle_queue_index[]
   3701 #ifdef INIT
   3702    =
   3703 {
   3704   {
   3705     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   3706     {
   3707       {
   3708         HAS_MIN_VALUE | HAS_MAX_VALUE,
   3709         FAP20V_RECYCLING_QUEUES-1,0,
   3710           /*
   3711            * Number of times this value can be repeated (i.e.,
   3712            * value is an array). Must be at least 1!
   3713            */
   3714         1,
   3715         (VAL_PROC_PTR)NULL
   3716       }
   3717     }
   3718   },
   3719 /*
   3720  * Last element. Do not remove.
   3721  */
   3722   {
   3723     VAL_END_OF_LIST
   3724   }
   3725 }
   3726 #endif
   3727 ;
   3728 /********************************************************
   3729 *NAME
   3730 *  Fap20v_fap_id
   3731 *TYPE: BUFFER
   3732 *DATE: 25/MAR/2003
   3733 *FUNCTION:
   3734 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3735 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   3736 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   3737 *ORGANIZATION:
   3738 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3739 *    int val_type -
   3740 *      Type of value. Can be:
   3741 *        VAL_END_OF_LIST 0
   3742 *        VAL_NUMERIC     1
   3743 *        VAL_SYMBOL      2
   3744 *        VAL_TEXT        3
   3745 *        VAL_IP          4
   3746 *      The first one is only to indicate the end of
   3747 *      this array. The others indicate what kind of
   3748 *      value this is.
   3749 *    char *symb_val -
   3750 *      ASCII presentation of the symbolic value.
   3751 *      Note: Must be small letters only!
   3752 *      For numeric variables:
   3753 *      This is a dummy variable. Enables searching
   3754 *      array of 'PARAM_VAL_RULES' for name (string)
   3755 *      matching without special case for numeric
   3756 *      variable.
   3757 *    VAL_DESCRIPTOR val_descriptor -
   3758 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3759 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3760 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3761 *      See details in file of definition. Note: Symbols
   3762 *      must be small letters only!
   3763 *USAGE:
   3764 *  SEE ORGANIZATION.
   3765 *REMARKS:
   3766 *  NONE.
   3767 *SEE ALSO:
   3768  */
   3769 EXTERN CONST
   3770    PARAM_VAL_RULES
   3771      Fap20v_fap_id[]
   3772 #ifdef INIT
   3773    =
   3774 {
   3775   {
   3776     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   3777     {
   3778       {
   3779         HAS_MIN_VALUE | HAS_MAX_VALUE,
   3780         FAP20V_NOF_FAPS_IN_SYSTEM-1,0,
   3781           /*
   3782            * Number of times this value can be repeated (i.e.,
   3783            * value is an array). Must be at least 1!
   3784            */
   3785         1,
   3786         (VAL_PROC_PTR)NULL
   3787       }
   3788     }
   3789   },
   3790 /*
   3791  * Last element. Do not remove.
   3792  */
   3793   {
   3794     VAL_END_OF_LIST
   3795   }
   3796 }
   3797 #endif
   3798 ;
   3799 /********************************************************
   3800 *NAME
   3801 *  Fap20v_data_port_id
   3802 *TYPE: BUFFER
   3803 *DATE: 25/MAR/2003
   3804 *FUNCTION:
   3805 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3806 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   3807 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   3808 *ORGANIZATION:
   3809 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3810 *    int val_type -
   3811 *      Type of value. Can be:
   3812 *        VAL_END_OF_LIST 0
   3813 *        VAL_NUMERIC     1
   3814 *        VAL_SYMBOL      2
   3815 *        VAL_TEXT        3
   3816 *        VAL_IP          4
   3817 *      The first one is only to indicate the end of
   3818 *      this array. The others indicate what kind of
   3819 *      value this is.
   3820 *    char *symb_val -
   3821 *      ASCII presentation of the symbolic value.
   3822 *      Note: Must be small letters only!
   3823 *      For numeric variables:
   3824 *      This is a dummy variable. Enables searching
   3825 *      array of 'PARAM_VAL_RULES' for name (string)
   3826 *      matching without special case for numeric
   3827 *      variable.
   3828 *    VAL_DESCRIPTOR val_descriptor -
   3829 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3830 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3831 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3832 *      See details in file of definition. Note: Symbols
   3833 *      must be small letters only!
   3834 *USAGE:
   3835 *  SEE ORGANIZATION.
   3836 *REMARKS:
   3837 *  NONE.
   3838 *SEE ALSO:
   3839  */
   3840 EXTERN CONST
   3841    PARAM_VAL_RULES
   3842      Fap20v_data_port_id[]
   3843 #ifdef INIT
   3844    =
   3845 {
   3846   {
   3847     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   3848     {
   3849       {
   3850         HAS_MIN_VALUE | HAS_MAX_VALUE,
   3851         FAP20V_NOF_DATA_PORTS-1,0,
   3852           /*
   3853            * Number of times this value can be repeated (i.e.,
   3854            * value is an array). Must be at least 1!
   3855            */
   3856         1,
   3857         (VAL_PROC_PTR)NULL
   3858       }
   3859     }
   3860   },
   3861 /*
   3862  * Last element. Do not remove.
   3863  */
   3864   {
   3865     VAL_END_OF_LIST
   3866   }
   3867 }
   3868 #endif
   3869 ;
   3870 /********************************************************
   3871 *NAME
   3872 *  Fap20v_sub_flow_types
   3873 *TYPE: BUFFER
   3874 *DATE: 25/MAR/2003
   3875 *FUNCTION:
   3876 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3877 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   3878 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   3879 *ORGANIZATION:
   3880 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3881 *    int val_type -
   3882 *      Type of value. Can be:
   3883 *        VAL_END_OF_LIST 0
   3884 *        VAL_NUMERIC     1
   3885 *        VAL_SYMBOL      2
   3886 *        VAL_TEXT        3
   3887 *        VAL_IP          4
   3888 *      The first one is only to indicate the end of
   3889 *      this array. The others indicate what kind of
   3890 *      value this is.
   3891 *    char *symb_val -
   3892 *      ASCII presentation of the symbolic value.
   3893 *      Note: Must be small letters only!
   3894 *      For numeric variables:
   3895 *      This is a dummy variable. Enables searching
   3896 *      array of 'PARAM_VAL_RULES' for name (string)
   3897 *      matching without special case for numeric
   3898 *      variable.
   3899 *    VAL_DESCRIPTOR val_descriptor -
   3900 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3901 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3902 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3903 *      See details in file of definition. Note: Symbols
   3904 *      must be small letters only!
   3905 *USAGE:
   3906 *  SEE ORGANIZATION.
   3907 *REMARKS:
   3908 *  NONE.
   3909 *SEE ALSO:
   3910  */
   3911 EXTERN CONST
   3912    PARAM_VAL_RULES
   3913      Fap20v_sub_flow_types[]
   3914 #ifdef INIT
   3915    =
   3916 {
   3917   {
   3918     VAL_SYMBOL,
   3919     "edf0",
   3920     {
   3921       {
   3922         FAP20V_EDF0_FLOW,
   3923           /*
   3924            * Casting added here just to keep the compiler silent.
   3925            */
   3926         (long)"    EDF0 Wheel at the scheduler.",
   3927           /*
   3928            * Pointer to a function to call after symbolic value
   3929            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   3930            * Casting to 'long' added here just to keep the
   3931            * compiler silent.
   3932            */
   3933         (long)NULL
   3934       }
   3935     }
   3936   },
   3937   {
   3938     VAL_SYMBOL,
   3939     "edf1",
   3940     {
   3941       {
   3942         FAP20V_EDF1_FLOW,
   3943           /*
   3944            * Casting added here just to keep the compiler silent.
   3945            */
   3946         (long)"    EDF1 Wheel at the scheduler.",
   3947           /*
   3948            * Pointer to a function to call after symbolic value
   3949            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   3950            * Casting to 'long' added here just to keep the
   3951            * compiler silent.
   3952            */
   3953         (long)NULL
   3954       }
   3955     }
   3956   },
   3957   {
   3958     VAL_SYMBOL,
   3959     "edf0_by_percentage",
   3960     {
   3961       {
   3962         FAP20V_EDF0_PERCENTAGE_FLOW,
   3963           /*
   3964            * Casting added here just to keep the compiler silent.
   3965            */
   3966         (long)"    EDF0 Wheel at the scheduler. Configured by percentage",
   3967           /*
   3968            * Pointer to a function to call after symbolic value
   3969            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   3970            * Casting to 'long' added here just to keep the
   3971            * compiler silent.
   3972            */
   3973         (long)NULL
   3974       }
   3975     }
   3976   },
   3977   {
   3978     VAL_SYMBOL,
   3979     "edf1_by_percentage",
   3980     {
   3981       {
   3982         FAP20V_EDF1_PERCENTAGE_FLOW,
   3983           /*
   3984            * Casting added here just to keep the compiler silent.
   3985            */
   3986         (long)"    EDF1 Wheel at the scheduler. Configured by percentage",
   3987           /*
   3988            * Pointer to a function to call after symbolic value
   3989            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   3990            * Casting to 'long' added here just to keep the
   3991            * compiler silent.
   3992            */
   3993         (long)NULL
   3994       }
   3995     }
   3996   },
   3997   {
   3998     VAL_SYMBOL,
   3999     "wfq1",
   4000     {
   4001       {
   4002         FAP20V_WFQ1_FLOW,
   4003           /*
   4004            * Casting added here just to keep the compiler silent.
   4005            */
   4006         (long)"    WFQ1 Wheel at the scheduler.",
   4007           /*
   4008            * Pointer to a function to call after symbolic value
   4009            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   4010            * Casting to 'long' added here just to keep the
   4011            * compiler silent.
   4012            */
   4013         (long)NULL
   4014       }
   4015     }
   4016   },
   4017 /*
   4018  * Last element. Do not remove.
   4019  */
   4020   {
   4021     VAL_END_OF_LIST
   4022   }
   4023 }
   4024 #endif
   4025 ;
   4026 
   4027 /********************************************************
   4028 *NAME
   4029 *  Fap20v_sch_flow_type_vals
   4030 *TYPE: BUFFER
   4031 *DATE: 25/MAR/2003
   4032 *FUNCTION:
   4033 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4034 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   4035 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   4036 *ORGANIZATION:
   4037 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4038 *    int val_type -
   4039 *      Type of value. Can be:
   4040 *        VAL_END_OF_LIST 0
   4041 *        VAL_NUMERIC     1
   4042 *        VAL_SYMBOL      2
   4043 *        VAL_TEXT        3
   4044 *        VAL_IP          4
   4045 *      The first one is only to indicate the end of
   4046 *      this array. The others indicate what kind of
   4047 *      value this is.
   4048 *    char *symb_val -
   4049 *      ASCII presentation of the symbolic value.
   4050 *      Note: Must be small letters only!
   4051 *      For numeric variables:
   4052 *      This is a dummy variable. Enables searching
   4053 *      array of 'PARAM_VAL_RULES' for name (string)
   4054 *      matching without special case for numeric
   4055 *      variable.
   4056 *    VAL_DESCRIPTOR val_descriptor -
   4057 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4058 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4059 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4060 *      See details in file of definition. Note: Symbols
   4061 *      must be small letters only!
   4062 *USAGE:
   4063 *  SEE ORGANIZATION.
   4064 *REMARKS:
   4065 *  NONE.
   4066 *SEE ALSO:
   4067  */
   4068 EXTERN CONST
   4069    PARAM_VAL_RULES
   4070      Fap20v_sch_flow_type_vals[]
   4071 #ifdef INIT
   4072    =
   4073 {
   4074   {
   4075     VAL_SYMBOL,
   4076     "regular",
   4077     {
   4078       {
   4079         FAP20V_REGULAR_SCH_FLOW,
   4080           /*
   4081            * Casting added here just to keep the compiler silent.
   4082            */
   4083         (long)"    Regular flow, the credit of this flow is sent to an ingress queue.",
   4084           /*
   4085            * Pointer to a function to call after symbolic value
   4086            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   4087            * Casting to 'long' added here just to keep the
   4088            * compiler silent.
   4089            */
   4090         (long)NULL
   4091       }
   4092     }
   4093   },
   4094   {
   4095     VAL_SYMBOL,
   4096     "aggregate",
   4097     {
   4098       {
   4099         FAP20V_AGGREGATE_SCH_FLOW,
   4100           /*
   4101            * Casting added here just to keep the compiler silent.
   4102            */
   4103         (long)"    Aggregate flow can be only flows 1-63.",
   4104           /*
   4105            * Pointer to a function to call after symbolic value
   4106            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   4107            * Casting to 'long' added here just to keep the
   4108            * compiler silent.
   4109            */
   4110         (long)NULL
   4111       }
   4112     }
   4113   },
   4114   {
   4115     VAL_SYMBOL,
   4116     "virtual",
   4117     {
   4118       {
   4119         FAP20V_VIRTUAL_SCH_FLOW,
   4120           /*
   4121            * Casting added here just to keep the compiler silent.
   4122            */
   4123         (long)"    Virtual flow can be only flows 64-127.",
   4124           /*
   4125            * Pointer to a function to call after symbolic value
   4126            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   4127            * Casting to 'long' added here just to keep the
   4128            * compiler silent.
   4129            */
   4130         (long)NULL
   4131       }
   4132     }
   4133   },
   4134 /*
   4135  * Last element. Do not remove.
   4136  */
   4137   {
   4138     VAL_END_OF_LIST
   4139   }
   4140 }
   4141 #endif
   4142 ;
   4143 
   4144 /********************************************************
   4145 *NAME
   4146 *  Fap20v_on_off_vals
   4147 *TYPE: BUFFER
   4148 *DATE: 25/MAR/2003
   4149 *FUNCTION:
   4150 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4151 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   4152 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   4153 *ORGANIZATION:
   4154 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4155 *    int val_type -
   4156 *      Type of value. Can be:
   4157 *        VAL_END_OF_LIST 0
   4158 *        VAL_NUMERIC     1
   4159 *        VAL_SYMBOL      2
   4160 *        VAL_TEXT        3
   4161 *        VAL_IP          4
   4162 *      The first one is only to indicate the end of
   4163 *      this array. The others indicate what kind of
   4164 *      value this is.
   4165 *    char *symb_val -
   4166 *      ASCII presentation of the symbolic value.
   4167 *      Note: Must be small letters only!
   4168 *      For numeric variables:
   4169 *      This is a dummy variable. Enables searching
   4170 *      array of 'PARAM_VAL_RULES' for name (string)
   4171 *      matching without special case for numeric
   4172 *      variable.
   4173 *    VAL_DESCRIPTOR val_descriptor -
   4174 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4175 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4176 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4177 *      See details in file of definition. Note: Symbols
   4178 *      must be small letters only!
   4179 *USAGE:
   4180 *  SEE ORGANIZATION.
   4181 *REMARKS:
   4182 *  NONE.
   4183 *SEE ALSO:
   4184  */
   4185 EXTERN CONST
   4186    PARAM_VAL_RULES
   4187      Fap20v_on_off_vals[]
   4188 #ifdef INIT
   4189    =
   4190 {
   4191   {
   4192     VAL_SYMBOL,
   4193     "on",
   4194     {
   4195       {
   4196         1,
   4197           /*
   4198            * Casting added here just to keep the compiler silent.
   4199            */
   4200         (long)"    On. Enable. 1 value.",
   4201           /*
   4202            * Pointer to a function to call after symbolic value
   4203            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   4204            * Casting to 'long' added here just to keep the
   4205            * compiler silent.
   4206            */
   4207         (long)NULL
   4208       }
   4209     }
   4210   },
   4211   {
   4212     VAL_SYMBOL,
   4213     "off",
   4214     {
   4215       {
   4216         0,
   4217           /*
   4218            * Casting added here just to keep the compiler silent.
   4219            */
   4220         (long)"    Off. Disable. 0 value.",
   4221           /*
   4222            * Pointer to a function to call after symbolic value
   4223            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   4224            * Casting to 'long' added here just to keep the
   4225            * compiler silent.
   4226            */
   4227         (long)NULL
   4228       }
   4229     }
   4230   },
   4231 /*
   4232  * Last element. Do not remove.
   4233  */
   4234   {
   4235     VAL_END_OF_LIST
   4236   }
   4237 }
   4238 #endif
   4239 ;
   4240 
   4241 /********************************************************
   4242 *NAME
   4243 *  Fap20v_sub_flow_values
   4244 *TYPE: BUFFER
   4245 *DATE: 25/MAR/2003
   4246 *FUNCTION:
   4247 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4248 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   4249 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   4250 *ORGANIZATION:
   4251 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4252 *    int val_type -
   4253 *      Type of value. Can be:
   4254 *        VAL_END_OF_LIST 0
   4255 *        VAL_NUMERIC     1
   4256 *        VAL_SYMBOL      2
   4257 *        VAL_TEXT        3
   4258 *        VAL_IP          4
   4259 *      The first one is only to indicate the end of
   4260 *      this array. The others indicate what kind of
   4261 *      value this is.
   4262 *    char *symb_val -
   4263 *      ASCII presentation of the symbolic value.
   4264 *      Note: Must be small letters only!
   4265 *      For numeric variables:
   4266 *      This is a dummy variable. Enables searching
   4267 *      array of 'PARAM_VAL_RULES' for name (string)
   4268 *      matching without special case for numeric
   4269 *      variable.
   4270 *    VAL_DESCRIPTOR val_descriptor -
   4271 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4272 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4273 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4274 *      See details in file of definition. Note: Symbols
   4275 *      must be small letters only!
   4276 *USAGE:
   4277 *  SEE ORGANIZATION.
   4278 *REMARKS:
   4279 *  NONE.
   4280 *SEE ALSO:
   4281  */
   4282 EXTERN CONST
   4283    PARAM_VAL_RULES
   4284      Fap20v_sub_flow_values[]
   4285 #ifdef INIT
   4286    =
   4287 {
   4288   {
   4289     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   4290     {
   4291       {
   4292         HAS_MIN_VALUE | HAS_MAX_VALUE,
   4293         10000000,0,
   4294           /*
   4295            * Number of times this value can be repeated (i.e.,
   4296            * value is an array). Must be at least 1!
   4297            */
   4298         1,
   4299         (VAL_PROC_PTR)NULL
   4300       }
   4301     }
   4302   },
   4303 /*
   4304  * Last element. Do not remove.
   4305  */
   4306   {
   4307     VAL_END_OF_LIST
   4308   }
   4309 }
   4310 #endif
   4311 ;
   4312 /********************************************************
   4313 *NAME
   4314 *  Fap20v_queue_type
   4315 *TYPE: BUFFER
   4316 *DATE: 25/MAR/2003
   4317 *FUNCTION:
   4318 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4319 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   4320 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   4321 *ORGANIZATION:
   4322 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4323 *    int val_type -
   4324 *      Type of value. Can be:
   4325 *        VAL_END_OF_LIST 0
   4326 *        VAL_NUMERIC     1
   4327 *        VAL_SYMBOL      2
   4328 *        VAL_TEXT        3
   4329 *        VAL_IP          4
   4330 *      The first one is only to indicate the end of
   4331 *      this array. The others indicate what kind of
   4332 *      value this is.
   4333 *    char *symb_val -
   4334 *      ASCII presentation of the symbolic value.
   4335 *      Note: Must be small letters only!
   4336 *      For numeric variables:
   4337 *      This is a dummy variable. Enables searching
   4338 *      array of 'PARAM_VAL_RULES' for name (string)
   4339 *      matching without special case for numeric
   4340 *      variable.
   4341 *    VAL_DESCRIPTOR val_descriptor -
   4342 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4343 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4344 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4345 *      See details in file of definition. Note: Symbols
   4346 *      must be small letters only!
   4347 *USAGE:
   4348 *  SEE ORGANIZATION.
   4349 *REMARKS:
   4350 *  NONE.
   4351 *SEE ALSO:
   4352  */
   4353 EXTERN CONST
   4354    PARAM_VAL_RULES
   4355      Fap20v_queue_type[]
   4356 #ifdef INIT
   4357    =
   4358 {
   4359   {
   4360     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   4361     {
   4362       {
   4363         HAS_MIN_VALUE | HAS_MAX_VALUE,
   4364         FAP20V_QUEUE_D,FAP20V_QUEUE_A,
   4365           /*
   4366            * Number of times this value can be repeated (i.e.,
   4367            * value is an array). Must be at least 1!
   4368            */
   4369         1,
   4370         (VAL_PROC_PTR)NULL
   4371       }
   4372     }
   4373   },
   4374 /*
   4375  * Last element. Do not remove.
   4376  */
   4377   {
   4378     VAL_END_OF_LIST
   4379   }
   4380 }
   4381 #endif
   4382 ;
   4383 
   4384 /********************************************************
   4385 *NAME
   4386 *  Fap20v_port_and_copy_lists
   4387 *TYPE: BUFFER
   4388 *DATE: 25/MAR/2003
   4389 *FUNCTION:
   4390 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4391 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   4392 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   4393 *ORGANIZATION:
   4394 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4395 *    int val_type -
   4396 *      Type of value. Can be:
   4397 *        VAL_END_OF_LIST 0
   4398 *        VAL_NUMERIC     1
   4399 *        VAL_SYMBOL      2
   4400 *        VAL_TEXT        3
   4401 *        VAL_IP          4
   4402 *      The first one is only to indicate the end of
   4403 *      this array. The others indicate what kind of
   4404 *      value this is.
   4405 *    char *symb_val -
   4406 *      ASCII presentation of the symbolic value.
   4407 *      Note: Must be small letters only!
   4408 *      For numeric variables:
   4409 *      This is a dummy variable. Enables searching
   4410 *      array of 'PARAM_VAL_RULES' for name (string)
   4411 *      matching without special case for numeric
   4412 *      variable.
   4413 *    VAL_DESCRIPTOR val_descriptor -
   4414 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4415 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4416 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4417 *      See details in file of definition. Note: Symbols
   4418 *      must be small letters only!
   4419 *USAGE:
   4420 *  SEE ORGANIZATION.
   4421 *REMARKS:
   4422 *  NONE.
   4423 *SEE ALSO:
   4424  */
   4425 EXTERN CONST
   4426    PARAM_VAL_RULES
   4427      Fap20v_port_and_copy_list[]
   4428 #ifdef INIT
   4429    =
   4430 {
   4431   {
   4432     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   4433     {
   4434       {
   4435         HAS_MIN_VALUE | HAS_MAX_VALUE,
   4436         FAP20V_FOP_EGRESS_MULTICAST_MAX_NOF_COPIES_B3 ,0,
   4437           /*
   4438            * Number of times this value can be repeated (i.e.,
   4439            * value is an array). Must be at least 1!
   4440            */
   4441         MAX_REPEATED_PARAM_VAL,
   4442         (VAL_PROC_PTR)NULL
   4443       }
   4444     }
   4445   },
   4446 /*
   4447  * Last element. Do not remove.
   4448  */
   4449   {
   4450     VAL_END_OF_LIST
   4451   }
   4452 }
   4453 #endif
   4454 ;
   4455 
   4456 /********************************************************
   4457 *NAME
   4458 *  Fap20v_auto_queue_types
   4459 *TYPE: BUFFER
   4460 *DATE: 25/MAR/2003
   4461 *FUNCTION:
   4462 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4463 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   4464 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   4465 *ORGANIZATION:
   4466 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4467 *    int val_type -
   4468 *      Type of value. Can be:
   4469 *        VAL_END_OF_LIST 0
   4470 *        VAL_NUMERIC     1
   4471 *        VAL_SYMBOL      2
   4472 *        VAL_TEXT        3
   4473 *        VAL_IP          4
   4474 *      The first one is only to indicate the end of
   4475 *      this array. The others indicate what kind of
   4476 *      value this is.
   4477 *    char *symb_val -
   4478 *      ASCII presentation of the symbolic value.
   4479 *      Note: Must be small letters only!
   4480 *      For numeric variables:
   4481 *      This is a dummy variable. Enables searching
   4482 *      array of 'PARAM_VAL_RULES' for name (string)
   4483 *      matching without special case for numeric
   4484 *      variable.
   4485 *    VAL_DESCRIPTOR val_descriptor -
   4486 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4487 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4488 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4489 *      See details in file of definition. Note: Symbols
   4490 *      must be small letters only!
   4491 *USAGE:
   4492 *  SEE ORGANIZATION.
   4493 *REMARKS:
   4494 *  NONE.
   4495 *SEE ALSO:
   4496  */
   4497 EXTERN CONST
   4498    PARAM_VAL_RULES
   4499      Fap20v_auto_queue_types[]
   4500 #ifdef INIT
   4501    =
   4502 {
   4503   {
   4504     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   4505     {
   4506       {
   4507         HAS_MIN_VALUE | HAS_MAX_VALUE,
   4508         FAP20V_QUEUE_D,FAP20V_QUEUE_A,
   4509           /*
   4510            * Number of times this value can be repeated (i.e.,
   4511            * value is an array). Must be at least 1!
   4512            */
   4513         FAP20V_FABRIC_UNICAST_CLASSES,
   4514         (VAL_PROC_PTR)NULL
   4515       }
   4516     }
   4517   },
   4518 /*
   4519  * Last element. Do not remove.
   4520  */
   4521   {
   4522     VAL_END_OF_LIST
   4523   }
   4524 }
   4525 #endif
   4526 ;
   4527 /********************************************************
   4528 *NAME
   4529 *  Fap20v_max_queue_size
   4530 *TYPE: BUFFER
   4531 *DATE: 25/MAR/2003
   4532 *FUNCTION:
   4533 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4534 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   4535 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   4536 *ORGANIZATION:
   4537 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4538 *    int val_type -
   4539 *      Type of value. Can be:
   4540 *        VAL_END_OF_LIST 0
   4541 *        VAL_NUMERIC     1
   4542 *        VAL_SYMBOL      2
   4543 *        VAL_TEXT        3
   4544 *        VAL_IP          4
   4545 *      The first one is only to indicate the end of
   4546 *      this array. The others indicate what kind of
   4547 *      value this is.
   4548 *    char *symb_val -
   4549 *      ASCII presentation of the symbolic value.
   4550 *      Note: Must be small letters only!
   4551 *      For numeric variables:
   4552 *      This is a dummy variable. Enables searching
   4553 *      array of 'PARAM_VAL_RULES' for name (string)
   4554 *      matching without special case for numeric
   4555 *      variable.
   4556 *    VAL_DESCRIPTOR val_descriptor -
   4557 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4558 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4559 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4560 *      See details in file of definition. Note: Symbols
   4561 *      must be small letters only!
   4562 *USAGE:
   4563 *  SEE ORGANIZATION.
   4564 *REMARKS:
   4565 *  NONE.
   4566 *SEE ALSO:
   4567  */
   4568 EXTERN CONST
   4569    PARAM_VAL_RULES
   4570      Fap20v_max_queue_size[]
   4571 #ifdef INIT
   4572    =
   4573 {
   4574   {
   4575     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   4576     {
   4577       {
   4578         HAS_MIN_VALUE | HAS_MAX_VALUE,
   4579         (1<<22)*FAP20V_QDP_WORD_BYTE_SIZE /* 2^22 * 16 (22 bit for queue size, word is 16 byte.)*/,0,
   4580           /*
   4581            * Number of times this value can be repeated (i.e.,
   4582            * value is an array). Must be at least 1!
   4583            */
   4584         1,
   4585         (VAL_PROC_PTR)NULL
   4586       }
   4587     }
   4588   },
   4589 /*
   4590  * Last element. Do not remove.
   4591  */
   4592   {
   4593     VAL_END_OF_LIST
   4594   }
   4595 }
   4596 #endif
   4597 ;
   4598 /********************************************************
   4599 *NAME
   4600 *  Fap20v_max_packet_size
   4601 *TYPE: BUFFER
   4602 *DATE: 25/MAR/2003
   4603 *FUNCTION:
   4604 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4605 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   4606 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   4607 *ORGANIZATION:
   4608 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4609 *    int val_type -
   4610 *      Type of value. Can be:
   4611 *        VAL_END_OF_LIST 0
   4612 *        VAL_NUMERIC     1
   4613 *        VAL_SYMBOL      2
   4614 *        VAL_TEXT        3
   4615 *        VAL_IP          4
   4616 *      The first one is only to indicate the end of
   4617 *      this array. The others indicate what kind of
   4618 *      value this is.
   4619 *    char *symb_val -
   4620 *      ASCII presentation of the symbolic value.
   4621 *      Note: Must be small letters only!
   4622 *      For numeric variables:
   4623 *      This is a dummy variable. Enables searching
   4624 *      array of 'PARAM_VAL_RULES' for name (string)
   4625 *      matching without special case for numeric
   4626 *      variable.
   4627 *    VAL_DESCRIPTOR val_descriptor -
   4628 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4629 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4630 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4631 *      See details in file of definition. Note: Symbols
   4632 *      must be small letters only!
   4633 *USAGE:
   4634 *  SEE ORGANIZATION.
   4635 *REMARKS:
   4636 *  NONE.
   4637 *SEE ALSO:
   4638  */
   4639 EXTERN CONST
   4640    PARAM_VAL_RULES
   4641      Fap20v_max_packet_size[]
   4642 #ifdef INIT
   4643    =
   4644 {
   4645   {
   4646     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   4647     {
   4648       {
   4649         HAS_MIN_VALUE | HAS_MAX_VALUE,
   4650         FAP20V_WRED_MAX_PACKET_SIZE, 0,
   4651           /*
   4652            * Number of times this value can be repeated (i.e.,
   4653            * value is an array). Must be at least 1!
   4654            */
   4655         1,
   4656         (VAL_PROC_PTR)NULL
   4657       }
   4658     }
   4659   },
   4660 /*
   4661  * Last element. Do not remove.
   4662  */
   4663   {
   4664     VAL_END_OF_LIST
   4665   }
   4666 }
   4667 #endif
   4668 ;
   4669 /********************************************************
   4670 *NAME
   4671 *  Fap20v_min_avrg_th
   4672 *TYPE: BUFFER
   4673 *DATE: 25/MAR/2003
   4674 *FUNCTION:
   4675 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4676 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   4677 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   4678 *ORGANIZATION:
   4679 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4680 *    int val_type -
   4681 *      Type of value. Can be:
   4682 *        VAL_END_OF_LIST 0
   4683 *        VAL_NUMERIC     1
   4684 *        VAL_SYMBOL      2
   4685 *        VAL_TEXT        3
   4686 *        VAL_IP          4
   4687 *      The first one is only to indicate the end of
   4688 *      this array. The others indicate what kind of
   4689 *      value this is.
   4690 *    char *symb_val -
   4691 *      ASCII presentation of the symbolic value.
   4692 *      Note: Must be small letters only!
   4693 *      For numeric variables:
   4694 *      This is a dummy variable. Enables searching
   4695 *      array of 'PARAM_VAL_RULES' for name (string)
   4696 *      matching without special case for numeric
   4697 *      variable.
   4698 *    VAL_DESCRIPTOR val_descriptor -
   4699 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4700 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4701 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4702 *      See details in file of definition. Note: Symbols
   4703 *      must be small letters only!
   4704 *USAGE:
   4705 *  SEE ORGANIZATION.
   4706 *REMARKS:
   4707 *  NONE.
   4708 *SEE ALSO:
   4709  */
   4710 EXTERN CONST
   4711    PARAM_VAL_RULES
   4712      Fap20v_min_avrg_th[]
   4713 #ifdef INIT
   4714    =
   4715 {
   4716   {
   4717     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   4718     {
   4719       {
   4720         HAS_MIN_VALUE | HAS_MAX_VALUE,
   4721         FAP20V_QDP_QWP_MIN_AVG_MAX*FAP20V_TH_WRED_GRANULARITY ,0,
   4722           /*
   4723            * Number of times this value can be repeated (i.e.,
   4724            * value is an array). Must be at least 1!
   4725            */
   4726         1,
   4727         (VAL_PROC_PTR)NULL
   4728       }
   4729     }
   4730   },
   4731 /*
   4732  * Last element. Do not remove.
   4733  */
   4734   {
   4735     VAL_END_OF_LIST
   4736   }
   4737 }
   4738 #endif
   4739 ;
   4740 /********************************************************
   4741 *NAME
   4742 *  Fap20v_min_avrg_th
   4743 *TYPE: BUFFER
   4744 *DATE: 25/MAR/2003
   4745 *FUNCTION:
   4746 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4747 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   4748 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   4749 *ORGANIZATION:
   4750 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4751 *    int val_type -
   4752 *      Type of value. Can be:
   4753 *        VAL_END_OF_LIST 0
   4754 *        VAL_NUMERIC     1
   4755 *        VAL_SYMBOL      2
   4756 *        VAL_TEXT        3
   4757 *        VAL_IP          4
   4758 *      The first one is only to indicate the end of
   4759 *      this array. The others indicate what kind of
   4760 *      value this is.
   4761 *    char *symb_val -
   4762 *      ASCII presentation of the symbolic value.
   4763 *      Note: Must be small letters only!
   4764 *      For numeric variables:
   4765 *      This is a dummy variable. Enables searching
   4766 *      array of 'PARAM_VAL_RULES' for name (string)
   4767 *      matching without special case for numeric
   4768 *      variable.
   4769 *    VAL_DESCRIPTOR val_descriptor -
   4770 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4771 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4772 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4773 *      See details in file of definition. Note: Symbols
   4774 *      must be small letters only!
   4775 *USAGE:
   4776 *  SEE ORGANIZATION.
   4777 *REMARKS:
   4778 *  NONE.
   4779 *SEE ALSO:
   4780  */
   4781 EXTERN CONST
   4782    PARAM_VAL_RULES
   4783      Fap20v_max_avrg_th[]
   4784 #ifdef INIT
   4785    =
   4786 {
   4787   {
   4788     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   4789     {
   4790       {
   4791         HAS_MIN_VALUE | HAS_MAX_VALUE,
   4792         FAP20V_QDP_QWP_MAX_AVG_MAX*FAP20V_TH_WRED_GRANULARITY ,0,
   4793           /*
   4794            * Number of times this value can be repeated (i.e.,
   4795            * value is an array). Must be at least 1!
   4796            */
   4797         1,
   4798         (VAL_PROC_PTR)NULL
   4799       }
   4800     }
   4801   },
   4802 /*
   4803  * Last element. Do not remove.
   4804  */
   4805   {
   4806     VAL_END_OF_LIST
   4807   }
   4808 }
   4809 #endif
   4810 ;
   4811 /********************************************************
   4812 *NAME
   4813 *  Fap20v_drop_precedence
   4814 *TYPE: BUFFER
   4815 *DATE: 25/MAR/2003
   4816 *FUNCTION:
   4817 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4818 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   4819 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   4820 *ORGANIZATION:
   4821 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4822 *    int val_type -
   4823 *      Type of value. Can be:
   4824 *        VAL_END_OF_LIST 0
   4825 *        VAL_NUMERIC     1
   4826 *        VAL_SYMBOL      2
   4827 *        VAL_TEXT        3
   4828 *        VAL_IP          4
   4829 *      The first one is only to indicate the end of
   4830 *      this array. The others indicate what kind of
   4831 *      value this is.
   4832 *    char *symb_val -
   4833 *      ASCII presentation of the symbolic value.
   4834 *      Note: Must be small letters only!
   4835 *      For numeric variables:
   4836 *      This is a dummy variable. Enables searching
   4837 *      array of 'PARAM_VAL_RULES' for name (string)
   4838 *      matching without special case for numeric
   4839 *      variable.
   4840 *    VAL_DESCRIPTOR val_descriptor -
   4841 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4842 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4843 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4844 *      See details in file of definition. Note: Symbols
   4845 *      must be small letters only!
   4846 *USAGE:
   4847 *  SEE ORGANIZATION.
   4848 *REMARKS:
   4849 *  NONE.
   4850 *SEE ALSO:
   4851  */
   4852 EXTERN CONST
   4853    PARAM_VAL_RULES
   4854      Fap20v_drop_precedence[]
   4855 #ifdef INIT
   4856    =
   4857 {
   4858   {
   4859     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   4860     {
   4861       {
   4862         HAS_MIN_VALUE | HAS_MAX_VALUE,
   4863         3 ,0,
   4864           /*
   4865            * Number of times this value can be repeated (i.e.,
   4866            * value is an array). Must be at least 1!
   4867            */
   4868         1,
   4869         (VAL_PROC_PTR)NULL
   4870       }
   4871     }
   4872   },
   4873 /*
   4874  * Last element. Do not remove.
   4875  */
   4876   {
   4877     VAL_END_OF_LIST
   4878   }
   4879 }
   4880 #endif
   4881 ;
   4882 /********************************************************
   4883 *NAME
   4884 *  Fap20v_flow_stat_msg
   4885 *TYPE: BUFFER
   4886 *DATE: 25/MAR/2003
   4887 *FUNCTION:
   4888 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4889 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   4890 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   4891 *ORGANIZATION:
   4892 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4893 *    int val_type -
   4894 *      Type of value. Can be:
   4895 *        VAL_END_OF_LIST 0
   4896 *        VAL_NUMERIC     1
   4897 *        VAL_SYMBOL      2
   4898 *        VAL_TEXT        3
   4899 *        VAL_IP          4
   4900 *      The first one is only to indicate the end of
   4901 *      this array. The others indicate what kind of
   4902 *      value this is.
   4903 *    char *symb_val -
   4904 *      ASCII presentation of the symbolic value.
   4905 *      Note: Must be small letters only!
   4906 *      For numeric variables:
   4907 *      This is a dummy variable. Enables searching
   4908 *      array of 'PARAM_VAL_RULES' for name (string)
   4909 *      matching without special case for numeric
   4910 *      variable.
   4911 *    VAL_DESCRIPTOR val_descriptor -
   4912 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4913 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4914 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4915 *      See details in file of definition. Note: Symbols
   4916 *      must be small letters only!
   4917 *USAGE:
   4918 *  SEE ORGANIZATION.
   4919 *REMARKS:
   4920 *  NONE.
   4921 *SEE ALSO:
   4922  */
   4923 EXTERN CONST
   4924    PARAM_VAL_RULES
   4925      Fap20v_flow_stat_msg[]
   4926 #ifdef INIT
   4927    =
   4928 {
   4929   {
   4930     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   4931     {
   4932       {
   4933         HAS_MIN_VALUE | HAS_MAX_VALUE,
   4934         (1<<FAP20V_QDP_QTP_STS_MSG_MAX)*16, 0,
   4935           /*
   4936            * Number of times this value can be repeated (i.e.,
   4937            * value is an array). Must be at least 1!
   4938            */
   4939         1,
   4940         (VAL_PROC_PTR)NULL
   4941       }
   4942     }
   4943   },
   4944 /*
   4945  * Last element. Do not remove.
   4946  */
   4947   {
   4948     VAL_END_OF_LIST
   4949   }
   4950 }
   4951 #endif
   4952 ;
   4953 /********************************************************
   4954 *NAME
   4955 *  Fap20v_flow_slow_th
   4956 *TYPE: BUFFER
   4957 *DATE: 25/MAR/2003
   4958 *FUNCTION:
   4959 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4960 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   4961 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   4962 *ORGANIZATION:
   4963 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4964 *    int val_type -
   4965 *      Type of value. Can be:
   4966 *        VAL_END_OF_LIST 0
   4967 *        VAL_NUMERIC     1
   4968 *        VAL_SYMBOL      2
   4969 *        VAL_TEXT        3
   4970 *        VAL_IP          4
   4971 *      The first one is only to indicate the end of
   4972 *      this array. The others indicate what kind of
   4973 *      value this is.
   4974 *    char *symb_val -
   4975 *      ASCII presentation of the symbolic value.
   4976 *      Note: Must be small letters only!
   4977 *      For numeric variables:
   4978 *      This is a dummy variable. Enables searching
   4979 *      array of 'PARAM_VAL_RULES' for name (string)
   4980 *      matching without special case for numeric
   4981 *      variable.
   4982 *    VAL_DESCRIPTOR val_descriptor -
   4983 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4984 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4985 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4986 *      See details in file of definition. Note: Symbols
   4987 *      must be small letters only!
   4988 *USAGE:
   4989 *  SEE ORGANIZATION.
   4990 *REMARKS:
   4991 *  NONE.
   4992 *SEE ALSO:
   4993  */
   4994 EXTERN CONST
   4995    PARAM_VAL_RULES
   4996      Fap20v_flow_slow_th[]
   4997 #ifdef INIT
   4998    =
   4999 {
   5000   {
   5001     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   5002     {
   5003       {
   5004         HAS_MIN_VALUE | HAS_MAX_VALUE,
   5005         (1<<FAP20V_QDP_QTP_STS_SLW_MAX)*16 ,0,
   5006           /*
   5007            * Number of times this value can be repeated (i.e.,
   5008            * value is an array). Must be at least 1!
   5009            */
   5010         1,
   5011         (VAL_PROC_PTR)NULL
   5012       }
   5013     }
   5014   },
   5015 /*
   5016  * Last element. Do not remove.
   5017  */
   5018   {
   5019     VAL_END_OF_LIST
   5020   }
   5021 }
   5022 #endif
   5023 ;
   5024 /********************************************************
   5025 *NAME
   5026 *  Fap20v_red_exp_weight
   5027 *TYPE: BUFFER
   5028 *DATE: 25/MAR/2003
   5029 *FUNCTION:
   5030 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   5031 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   5032 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   5033 *ORGANIZATION:
   5034 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5035 *    int val_type -
   5036 *      Type of value. Can be:
   5037 *        VAL_END_OF_LIST 0
   5038 *        VAL_NUMERIC     1
   5039 *        VAL_SYMBOL      2
   5040 *        VAL_TEXT        3
   5041 *        VAL_IP          4
   5042 *      The first one is only to indicate the end of
   5043 *      this array. The others indicate what kind of
   5044 *      value this is.
   5045 *    char *symb_val -
   5046 *      ASCII presentation of the symbolic value.
   5047 *      Note: Must be small letters only!
   5048 *      For numeric variables:
   5049 *      This is a dummy variable. Enables searching
   5050 *      array of 'PARAM_VAL_RULES' for name (string)
   5051 *      matching without special case for numeric
   5052 *      variable.
   5053 *    VAL_DESCRIPTOR val_descriptor -
   5054 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   5055 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   5056 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   5057 *      See details in file of definition. Note: Symbols
   5058 *      must be small letters only!
   5059 *USAGE:
   5060 *  SEE ORGANIZATION.
   5061 *REMARKS:
   5062 *  NONE.
   5063 *SEE ALSO:
   5064  */
   5065 EXTERN CONST
   5066    PARAM_VAL_RULES
   5067      Fap20v_red_exp_weight[]
   5068 #ifdef INIT
   5069    =
   5070 {
   5071   {
   5072     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   5073     {
   5074       {
   5075         HAS_MIN_VALUE | HAS_MAX_VALUE,
   5076         FAP20V_QDP_QTP_RED_EXP_MAX, 0,
   5077           /*
   5078            * Number of times this value can be repeated (i.e.,
   5079            * value is an array). Must be at least 1!
   5080            */
   5081         1,
   5082         (VAL_PROC_PTR)NULL
   5083       }
   5084     }
   5085   },
   5086 /*
   5087  * Last element. Do not remove.
   5088  */
   5089   {
   5090     VAL_END_OF_LIST
   5091   }
   5092 }
   5093 #endif
   5094 ;
   5095 /********************************************************
   5096 *NAME
   5097 *  Fap20v_fabric_class_entry
   5098 *TYPE: BUFFER
   5099 *DATE: 25/MAR/2003
   5100 *FUNCTION:
   5101 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   5102 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   5103 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   5104 *ORGANIZATION:
   5105 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5106 *    int val_type -
   5107 *      Type of value. Can be:
   5108 *        VAL_END_OF_LIST 0
   5109 *        VAL_NUMERIC     1
   5110 *        VAL_SYMBOL      2
   5111 *        VAL_TEXT        3
   5112 *        VAL_IP          4
   5113 *      The first one is only to indicate the end of
   5114 *      this array. The others indicate what kind of
   5115 *      value this is.
   5116 *    char *symb_val -
   5117 *      ASCII presentation of the symbolic value.
   5118 *      Note: Must be small letters only!
   5119 *      For numeric variables:
   5120 *      This is a dummy variable. Enables searching
   5121 *      array of 'PARAM_VAL_RULES' for name (string)
   5122 *      matching without special case for numeric
   5123 *      variable.
   5124 *    VAL_DESCRIPTOR val_descriptor -
   5125 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   5126 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   5127 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   5128 *      See details in file of definition. Note: Symbols
   5129 *      must be small letters only!
   5130 *USAGE:
   5131 *  SEE ORGANIZATION.
   5132 *REMARKS:
   5133 *  NONE.
   5134 *SEE ALSO:
   5135  */
   5136 EXTERN CONST
   5137    PARAM_VAL_RULES
   5138      Fap20v_fabric_class_entry[]
   5139 #ifdef INIT
   5140    =
   5141 {
   5142   {
   5143     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   5144     {
   5145       {
   5146         HAS_MIN_VALUE | HAS_MAX_VALUE,
   5147         FAP20V_FABRIC_UNICAST_CLASSES - 1, 0,
   5148           /*
   5149            * Number of times this value can be repeated (i.e.,
   5150            * value is an array). Must be at least 1!
   5151            */
   5152         1,
   5153         (VAL_PROC_PTR)NULL
   5154       }
   5155     }
   5156   },
   5157 /*
   5158  * Last element. Do not remove.
   5159  */
   5160   {
   5161     VAL_END_OF_LIST
   5162   }
   5163 }
   5164 #endif
   5165 ;
   5166 /********************************************************
   5167 *NAME
   5168 *  Fap20v_fabric_class
   5169 *TYPE: BUFFER
   5170 *DATE: 15/APR/2003
   5171 *FUNCTION:
   5172 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   5173 *  RELATED TO THE PARAMETER "DOWNLOAD_MIBS" IN THE
   5174 *  CONTEXT OF SUBJECT 'NVRAM'.
   5175 *ORGANIZATION:
   5176 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5177 *    int val_type -
   5178 *      Type of value. Can be:
   5179 *        VAL_END_OF_LIST 0
   5180 *        VAL_NUMERIC     1
   5181 *        VAL_SYMBOL      2
   5182 *        VAL_TEXT        3
   5183 *        VAL_IP          4
   5184 *      The first one is only to indicate the end of
   5185 *      this array. The others indicate what kind of
   5186 *      value this is.
   5187 *    VAL_DESCRIPTOR val_descriptor -
   5188 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   5189 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   5190 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   5191 *      See details in file of definition. Note: Symbols
   5192 *      must be small letters only!
   5193 *USAGE:
   5194 *  SEE ORGANIZATION.
   5195 *REMARKS:
   5196 *  NONE.
   5197 *SEE ALSO:
   5198  */
   5199 EXTERN CONST
   5200    PARAM_VAL_RULES
   5201      Fap20v_fabric_class[]
   5202 #ifdef INIT
   5203    =
   5204 {
   5205   {
   5206     VAL_SYMBOL,
   5207     "fabric_unicast_classes",
   5208     {
   5209       {
   5210         FAP20V_FABRIC_UNICAST_CLASSES,
   5211           /*
   5212            * Casting added here just to keep the compiler silent.
   5213            */
   5214         (long)"    Number of Unicast-Classes in SOC_SAND_FAP20V - 8. Range 0:7.",
   5215           /*
   5216            * Pointer to a function to call after symbolic value
   5217            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   5218            * Casting to 'long' added here just to keep the
   5219            * compiler silent.
   5220            */
   5221         (long)NULL
   5222       }
   5223     }
   5224   },
   5225   {
   5226     VAL_SYMBOL,
   5227     "fabric_multicast_classes",
   5228     {
   5229       {
   5230         FAP20V_FABRIC_MULTICAST_CLASSES,
   5231           /*
   5232            * Casting added here just to keep the compiler silent.
   5233            */
   5234         (long)"    Number of Multicast-Classes in SOC_SAND_FAP20V - 4. Range 0:3.",
   5235           /*
   5236            * Pointer to a function to call after symbolic value
   5237            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   5238            * Casting to 'long' added here just to keep the
   5239            * compiler silent.
   5240            */
   5241         (long)NULL
   5242       }
   5243     }
   5244   },
   5245 /*
   5246  * Last element. Do not remove.
   5247  */
   5248   {
   5249     VAL_END_OF_LIST
   5250   }
   5251 }
   5252 #endif
   5253 ;
   5254 /********************************************************
   5255 *NAME
   5256 *  Fap20v_nominal_bandwidth_vals
   5257 *TYPE: BUFFER
   5258 *DATE: 25/MAR/2003
   5259 *FUNCTION:
   5260 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   5261 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   5262 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   5263 *ORGANIZATION:
   5264 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5265 *    int val_type -
   5266 *      Type of value. Can be:
   5267 *        VAL_END_OF_LIST 0
   5268 *        VAL_NUMERIC     1
   5269 *        VAL_SYMBOL      2
   5270 *        VAL_TEXT        3
   5271 *        VAL_IP          4
   5272 *      The first one is only to indicate the end of
   5273 *      this array. The others indicate what kind of
   5274 *      value this is.
   5275 *    char *symb_val -
   5276 *      ASCII presentation of the symbolic value.
   5277 *      Note: Must be small letters only!
   5278 *      For numeric variables:
   5279 *      This is a dummy variable. Enables searching
   5280 *      array of 'PARAM_VAL_RULES' for name (string)
   5281 *      matching without special case for numeric
   5282 *      variable.
   5283 *    VAL_DESCRIPTOR val_descriptor -
   5284 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   5285 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   5286 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   5287 *      See details in file of definition. Note: Symbols
   5288 *      must be small letters only!
   5289 *USAGE:
   5290 *  SEE ORGANIZATION.
   5291 *REMARKS:
   5292 *  NONE.
   5293 *SEE ALSO:
   5294  */
   5295 EXTERN CONST
   5296    PARAM_VAL_RULES
   5297      Fap20v_nominal_bandwidth_vals[]
   5298 #ifdef INIT
   5299    =
   5300 {
   5301   {
   5302     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   5303     {
   5304       {
   5305         HAS_MIN_VALUE | HAS_MAX_VALUE,
   5306         160000,0,
   5307           /*
   5308            * Number of times this value can be repeated (i.e.,
   5309            * value is an array). Must be at least 1!
   5310            */
   5311         1,
   5312         (VAL_PROC_PTR)NULL
   5313       }
   5314     }
   5315   },
   5316 /*
   5317  * Last element. Do not remove.
   5318  */
   5319   {
   5320     VAL_END_OF_LIST
   5321   }
   5322 }
   5323 #endif
   5324 ;
   5325 /********************************************************
   5326 *NAME
   5327 *  Fap20v_credit_bandwidth_vals
   5328 *TYPE: BUFFER
   5329 *DATE: 25/MAR/2003
   5330 *FUNCTION:
   5331 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   5332 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   5333 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   5334 *ORGANIZATION:
   5335 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5336 *    int val_type -
   5337 *      Type of value. Can be:
   5338 *        VAL_END_OF_LIST 0
   5339 *        VAL_NUMERIC     1
   5340 *        VAL_SYMBOL      2
   5341 *        VAL_TEXT        3
   5342 *        VAL_IP          4
   5343 *      The first one is only to indicate the end of
   5344 *      this array. The others indicate what kind of
   5345 *      value this is.
   5346 *    char *symb_val -
   5347 *      ASCII presentation of the symbolic value.
   5348 *      Note: Must be small letters only!
   5349 *      For numeric variables:
   5350 *      This is a dummy variable. Enables searching
   5351 *      array of 'PARAM_VAL_RULES' for name (string)
   5352 *      matching without special case for numeric
   5353 *      variable.
   5354 *    VAL_DESCRIPTOR val_descriptor -
   5355 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   5356 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   5357 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   5358 *      See details in file of definition. Note: Symbols
   5359 *      must be small letters only!
   5360 *USAGE:
   5361 *  SEE ORGANIZATION.
   5362 *REMARKS:
   5363 *  NONE.
   5364 *SEE ALSO:
   5365  */
   5366 EXTERN CONST
   5367    PARAM_VAL_RULES
   5368      Fap20v_credit_bandwidth_vals[]
   5369 #ifdef INIT
   5370    =
   5371 {
   5372   {
   5373     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   5374     {
   5375       {
   5376         HAS_MIN_VALUE | HAS_MAX_VALUE,
   5377         160000,0,
   5378           /*
   5379            * Number of times this value can be repeated (i.e.,
   5380            * value is an array). Must be at least 1!
   5381            */
   5382         1,
   5383         (VAL_PROC_PTR)NULL
   5384       }
   5385     }
   5386   },
   5387 /*
   5388  * Last element. Do not remove.
   5389  */
   5390   {
   5391     VAL_END_OF_LIST
   5392   }
   5393 }
   5394 #endif
   5395 ;
   5396 /********************************************************
   5397 *NAME
   5398 *  Fap20v_scheduler_port_id_vals
   5399 *TYPE: BUFFER
   5400 *DATE: 25/MAR/2003
   5401 *FUNCTION:
   5402 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   5403 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   5404 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   5405 *ORGANIZATION:
   5406 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5407 *    int val_type -
   5408 *      Type of value. Can be:
   5409 *        VAL_END_OF_LIST 0
   5410 *        VAL_NUMERIC     1
   5411 *        VAL_SYMBOL      2
   5412 *        VAL_TEXT        3
   5413 *        VAL_IP          4
   5414 *      The first one is only to indicate the end of
   5415 *      this array. The others indicate what kind of
   5416 *      value this is.
   5417 *    char *symb_val -
   5418 *      ASCII presentation of the symbolic value.
   5419 *      Note: Must be small letters only!
   5420 *      For numeric variables:
   5421 *      This is a dummy variable. Enables searching
   5422 *      array of 'PARAM_VAL_RULES' for name (string)
   5423 *      matching without special case for numeric
   5424 *      variable.
   5425 *    VAL_DESCRIPTOR val_descriptor -
   5426 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   5427 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   5428 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   5429 *      See details in file of definition. Note: Symbols
   5430 *      must be small letters only!
   5431 *USAGE:
   5432 *  SEE ORGANIZATION.
   5433 *REMARKS:
   5434 *  NONE.
   5435 *SEE ALSO:
   5436  */
   5437 EXTERN CONST
   5438    PARAM_VAL_RULES
   5439      Fap20v_scheduler_port_id_vals[]
   5440 #ifdef INIT
   5441    =
   5442 {
   5443   {
   5444     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   5445     {
   5446       {
   5447         HAS_MIN_VALUE | HAS_MAX_VALUE,
   5448         FAP20V_NOF_SCH_PORTS-1,0,
   5449           /*
   5450            * Number of times this value can be repeated (i.e.,
   5451            * value is an array). Must be at least 1!
   5452            */
   5453         1,
   5454         (VAL_PROC_PTR)NULL
   5455       }
   5456     }
   5457   },
   5458 /*
   5459  * Last element. Do not remove.
   5460  */
   5461   {
   5462     VAL_END_OF_LIST
   5463   }
   5464 }
   5465 #endif
   5466 ;
   5467 /********************************************************
   5468 *NAME
   5469 *  Fap20v_scheduler_port_id_no_recyle_vals
   5470 *TYPE: BUFFER
   5471 *DATE: 25/MAR/2003
   5472 *FUNCTION:
   5473 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   5474 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   5475 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   5476 *ORGANIZATION:
   5477 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5478 *    int val_type -
   5479 *      Type of value. Can be:
   5480 *        VAL_END_OF_LIST 0
   5481 *        VAL_NUMERIC     1
   5482 *        VAL_SYMBOL      2
   5483 *        VAL_TEXT        3
   5484 *        VAL_IP          4
   5485 *      The first one is only to indicate the end of
   5486 *      this array. The others indicate what kind of
   5487 *      value this is.
   5488 *    char *symb_val -
   5489 *      ASCII presentation of the symbolic value.
   5490 *      Note: Must be small letters only!
   5491 *      For numeric variables:
   5492 *      This is a dummy variable. Enables searching
   5493 *      array of 'PARAM_VAL_RULES' for name (string)
   5494 *      matching without special case for numeric
   5495 *      variable.
   5496 *    VAL_DESCRIPTOR val_descriptor -
   5497 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   5498 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   5499 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   5500 *      See details in file of definition. Note: Symbols
   5501 *      must be small letters only!
   5502 *USAGE:
   5503 *  SEE ORGANIZATION.
   5504 *REMARKS:
   5505 *  NONE.
   5506 *SEE ALSO:
   5507  */
   5508 EXTERN CONST
   5509    PARAM_VAL_RULES
   5510      Fap20v_scheduler_port_id_no_recyle_vals[]
   5511 #ifdef INIT
   5512    =
   5513 {
   5514   {
   5515     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   5516     {
   5517       {
   5518         HAS_MIN_VALUE | HAS_MAX_VALUE,
   5519         FAP20V_NOF_SCH_PORTS-2,0,
   5520           /*
   5521            * Number of times this value can be repeated (i.e.,
   5522            * value is an array). Must be at least 1!
   5523            */
   5524         1,
   5525         (VAL_PROC_PTR)NULL
   5526       }
   5527     }
   5528   },
   5529 /*
   5530  * Last element. Do not remove.
   5531  */
   5532   {
   5533     VAL_END_OF_LIST
   5534   }
   5535 }
   5536 #endif
   5537 ;
   5538 /********************************************************
   5539 *NAME
   5540 *  Fap20v_logical_sch_field
   5541 *TYPE: BUFFER
   5542 *DATE: 31/DEC/2002
   5543 *FUNCTION:
   5544 *  ARRAY CONTAINING THE DEFAULT VALUE
   5545 *  RELATED TO THE PARAMETER "DATA".
   5546 *ORGANIZATION:
   5547 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5548 *    int val_type -
   5549 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   5550 *      VAL_IP OR VAL_SYMBOL)
   5551 *    union value -
   5552 *      Union of one of
   5553 *        int            int_value
   5554 *        char           *string_value
   5555 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   5556 *        unsigned long  ip_value ;
   5557 *      Value of default variable.
   5558 *USAGE:
   5559 *  SEE ORGANIZATION.
   5560 *REMARKS:
   5561 *  NONE.
   5562 *SEE ALSO:
   5563  */
   5564 EXTERN CONST
   5565    PARAM_VAL_RULES
   5566      Fap20v_logical_sch_field[]
   5567 #ifdef INIT
   5568    =
   5569 {
   5570   {
   5571     VAL_SYMBOL,
   5572     "enable_sub_flow",
   5573     {
   5574       {
   5575         FAP20V_SCH_EN_SUB_FLOW_FIELD,
   5576           /*
   5577            * Casting added here just to keep the compiler silent.
   5578            */
   5579         (long)"    Enables mapping a flow to sub-flows. This bit should be asserted\n\r"
   5580               "    by sophisticated users, to allow greater flexibility in assigning\n\r"
   5581               "    flows to schedulers. Default value is 0.",
   5582           /*
   5583            * Pointer to a function to call after symbolic value
   5584            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   5585            * Casting to 'long' added here just to keep the
   5586            * compiler silent.
   5587            */
   5588         (long)NULL
   5589       }
   5590     }
   5591   },
   5592   {
   5593     VAL_SYMBOL,
   5594     "port_cfg",
   5595     {
   5596       {
   5597         FAP20V_SCH_EN_PORT_CFG_FIELD,
   5598           /*
   5599            * Casting added here just to keep the compiler silent.
   5600            */
   5601         (long)"    Each one of the 8 bits represents the configuration of an 8-port\n\r"
   5602               "    group (out of 64 possible ports). Each group can be configured as 1 or 8\n\r"
   5603               "     ports. A bit assertion, sets a 1-port configuration, i.e., a timeline\n\r"
   5604               "    of 32K clocks is available for that port group. If the bit is set to\n\r"
   5605               "    0, a 4096 time-line is available for that port group. Default value is 0.",
   5606           /*
   5607            * Pointer to a function to call after symbolic value
   5608            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   5609            * Casting to 'long' added here just to keep the
   5610            * compiler silent.
   5611            */
   5612         (long)NULL
   5613       }
   5614     }
   5615   },
   5616   {
   5617     VAL_SYMBOL,
   5618     "min_slow_tti",
   5619     {
   5620       {
   5621         FAP20V_SCH_EN_MIN_SLOW_TTI_FIELD,
   5622           /*
   5623            * Casting added here just to keep the compiler silent.
   5624            */
   5625         (long)"    The minimum TTI for an EDF flow in slow state (to avoid waste of\n\r"
   5626               "    credits when a flow state switches between Off and On).",
   5627           /*
   5628            * Pointer to a function to call after symbolic value
   5629            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   5630            * Casting to 'long' added here just to keep the
   5631            * compiler silent.
   5632            */
   5633         (long)NULL
   5634       }
   5635     }
   5636   },
   5637   {
   5638     VAL_SYMBOL,
   5639     "min_slow_wt",
   5640     {
   5641       {
   5642         FAP20V_SCH_EN_MIN_SLOW_WT_FIELD,
   5643           /*
   5644            * Casting added here just to keep the compiler silent.
   5645            */
   5646         (long)"    The minimum weight for a WFQ flow in slow state (to avoid waste\n\r"
   5647               "    of credits when a flow state switches between Off and On).",
   5648           /*
   5649            * Pointer to a function to call after symbolic value
   5650            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   5651            * Casting to 'long' added here just to keep the
   5652            * compiler silent.
   5653            */
   5654         (long)NULL
   5655       }
   5656     }
   5657   },
   5658 /*
   5659  * Last element. Do not remove.
   5660  */
   5661   {
   5662     VAL_END_OF_LIST
   5663   }
   5664 }
   5665 #endif
   5666 ;
   5667 /********************************************************
   5668 *NAME
   5669 *  Fap20v_logical_external_dram_field
   5670 *TYPE: BUFFER
   5671 *DATE: 31/DEC/2002
   5672 *FUNCTION:
   5673 *  ARRAY CONTAINING THE DEFAULT VALUE
   5674 *  RELATED TO THE PARAMETER "DATA".
   5675 *ORGANIZATION:
   5676 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5677 *    int val_type -
   5678 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   5679 *      VAL_IP OR VAL_SYMBOL)
   5680 *    union value -
   5681 *      Union of one of
   5682 *        int            int_value
   5683 *        char           *string_value
   5684 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   5685 *        unsigned long  ip_value ;
   5686 *      Value of default variable.
   5687 *USAGE:
   5688 *  SEE ORGANIZATION.
   5689 *REMARKS:
   5690 *  NONE.
   5691 *SEE ALSO:
   5692  */
   5693 EXTERN CONST
   5694    PARAM_VAL_RULES
   5695      Fap20v_logical_external_dram_field[]
   5696 #ifdef INIT
   5697    =
   5698 {
   5699   {
   5700     VAL_SYMBOL,
   5701     "queue_controller_init_trig",
   5702     {
   5703       {
   5704         FAP20V_QUEUE_CONTROLLER_INIT_TRIG_FIELD,
   5705           /*
   5706            * Casting added here just to keep the compiler silent.
   5707            */
   5708         (long)"    When set to 1, it triggers initialization of Queue Cntr data structures.",
   5709           /*
   5710            * Pointer to a function to call after symbolic value
   5711            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   5712            * Casting to 'long' added here just to keep the
   5713            * compiler silent.
   5714            */
   5715         (long)NULL
   5716       }
   5717     }
   5718   },
   5719   {
   5720     VAL_SYMBOL,
   5721     "pkt_crc_ena",
   5722     {
   5723       {
   5724         FAP20V_PKT_CRC_ENA_FIELD,
   5725           /*
   5726            * Casting added here just to keep the compiler silent.
   5727            */
   5728         (long)"    Packet CRC Enable.\n\r"
   5729               "    If this bit is asserted, 2 bytes CRC is added/removed when the packet\n\r"
   5730               "    is stored/removed from external memory.",
   5731           /*
   5732            * Pointer to a function to call after symbolic value
   5733            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   5734            * Casting to 'long' added here just to keep the
   5735            * compiler silent.
   5736            */
   5737         (long)NULL
   5738       }
   5739     }
   5740   },
   5741   {
   5742     VAL_SYMBOL,
   5743     "top_que_blk_0",
   5744     {
   5745       {
   5746         FAP20V_TOP_QUE_BLK_0_FIELD,
   5747           /*
   5748            * Casting added here just to keep the compiler silent.
   5749            */
   5750         (long)"    All queues from 0 to address top_que_blk_0 are in block-buffer0.",
   5751           /*
   5752            * Pointer to a function to call after symbolic value
   5753            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   5754            * Casting to 'long' added here just to keep the
   5755            * compiler silent.
   5756            */
   5757         (long)NULL
   5758       }
   5759     }
   5760   },
   5761   {
   5762     VAL_SYMBOL,
   5763     "top_que_blk_1",
   5764     {
   5765       {
   5766         FAP20V_TOP_QUE_BLK_1_FIELD,
   5767           /*
   5768            * Casting added here just to keep the compiler silent.
   5769            */
   5770         (long)"    All queues from top_que_blk_0+1 to top_que_blk_1 are in block-buffer1.\n\r"
   5771               "    All queues from top_que_blk_1+1 to top_que_blk_2 are in block-buffer2.",
   5772           /*
   5773            * Pointer to a function to call after symbolic value
   5774            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   5775            * Casting to 'long' added here just to keep the
   5776            * compiler silent.
   5777            */
   5778         (long)NULL
   5779       }
   5780     }
   5781   },
   5782   {
   5783     VAL_SYMBOL,
   5784     "top_que_blk_2",
   5785     {
   5786       {
   5787         FAP20V_TOP_QUE_BLK_2_FIELD,
   5788           /*
   5789            * Casting added here just to keep the compiler silent.
   5790            */
   5791         (long)"    All queues from top_que_blk_1+1 to top_que_blk_2 are in block-buffer2.\n\r"
   5792               "    All queues from top_que_blk_2+1 to 8K-1 are in block-buffer3.",
   5793           /*
   5794            * Pointer to a function to call after symbolic value
   5795            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   5796            * Casting to 'long' added here just to keep the
   5797            * compiler silent.
   5798            */
   5799         (long)NULL
   5800       }
   5801     }
   5802   },
   5803   {
   5804     VAL_SYMBOL,
   5805     "top_buff_blk_0",
   5806     {
   5807       {
   5808         FAP20V_TOP_BUFF_BLK_0_FIELD,
   5809           /*
   5810            * Casting added here just to keep the compiler silent.
   5811            */
   5812         (long)"    Block-buffer1 is between 0 and top_buff_blk_0.",
   5813           /*
   5814            * Pointer to a function to call after symbolic value
   5815            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   5816            * Casting to 'long' added here just to keep the
   5817            * compiler silent.
   5818            */
   5819         (long)NULL
   5820       }
   5821     }
   5822   },
   5823   {
   5824     VAL_SYMBOL,
   5825     "top_buff_blk_1",
   5826     {
   5827       {
   5828         FAP20V_TOP_BUFF_BLK_1_FIELD,
   5829           /*
   5830            * Casting added here just to keep the compiler silent.
   5831            */
   5832         (long)"    Block-buffer2 is between top_buff_blk_0+1 and top_buff_blk_1.\n\r"
   5833               "    Block-buffer3 is between top_buff_blk_1+1 and top_buff_blk_2.",
   5834           /*
   5835            * Pointer to a function to call after symbolic value
   5836            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   5837            * Casting to 'long' added here just to keep the
   5838            * compiler silent.
   5839            */
   5840         (long)NULL
   5841       }
   5842     }
   5843   },
   5844   {
   5845     VAL_SYMBOL,
   5846     "top_buff_blk_2",
   5847     {
   5848       {
   5849         FAP20V_TOP_BUFF_BLK_2_FIELD,
   5850           /*
   5851            * Casting added here just to keep the compiler silent.
   5852            */
   5853         (long)"    Block-buffer3 is between top_buff_blk_1+1 and top_buff_blk_2.\n\r"
   5854               "    Block-buffer4 is between top_buff_blk_2+1 and external DRAM total size",
   5855           /*
   5856            * Pointer to a function to call after symbolic value
   5857            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   5858            * Casting to 'long' added here just to keep the
   5859            * compiler silent.
   5860            */
   5861         (long)NULL
   5862       }
   5863     }
   5864   },
   5865   {
   5866     VAL_SYMBOL,
   5867     "credit_byt_size",
   5868     {
   5869       {
   5870         FAP20V_CREDIT_VALUE_FIELD,
   5871           /*
   5872            * Casting added here just to keep the compiler silent.
   5873            */
   5874         (long)"    credit byte size:\n\r"
   5875               "      0 indicates 256 bytes.\n\r"
   5876               "      1 indicates 512 bytes.\n\r"
   5877               "      2 indicates 1024 bytes.\n\r"
   5878               "      3 indicates 2048 bytes.\n\r"
   5879               "      4 indicates 4 Kbytes (RevB only).\n\r"
   5880               "      5 indicates 8 Kbytes (RevB only).",
   5881           /*
   5882            * Pointer to a function to call after symbolic value
   5883            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   5884            * Casting to 'long' added here just to keep the
   5885            * compiler silent.
   5886            */
   5887         (long)NULL
   5888       }
   5889     }
   5890   },
   5891 /*
   5892  * Last element. Do not remove.
   5893  */
   5894   {
   5895     VAL_END_OF_LIST
   5896   }
   5897 }
   5898 #endif
   5899 ;
   5900 /********************************************************
   5901 *NAME
   5902 *  Fap20v_logical_interrupt_mask_field
   5903 *TYPE: BUFFER
   5904 *DATE: 31/DEC/2002
   5905 *FUNCTION:
   5906 *  ARRAY CONTAINING THE DEFAULT VALUE
   5907 *  RELATED TO THE PARAMETER "DATA".
   5908 *ORGANIZATION:
   5909 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5910 *    int val_type -
   5911 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   5912 *      VAL_IP OR VAL_SYMBOL)
   5913 *    union value -
   5914 *      Union of one of
   5915 *        int            int_value
   5916 *        char           *string_value
   5917 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   5918 *        unsigned long  ip_value ;
   5919 *      Value of default variable.
   5920 *USAGE:
   5921 *  SEE ORGANIZATION.
   5922 *REMARKS:
   5923 *  NONE.
   5924 *SEE ALSO:
   5925  */
   5926 EXTERN CONST
   5927    PARAM_VAL_RULES
   5928      Fap20v_logical_interrupt_mask_field[]
   5929 #ifdef INIT
   5930    =
   5931 {
   5932 /*
   5933  * Last element. Do not remove.
   5934  */
   5935   {
   5936     VAL_END_OF_LIST
   5937   }
   5938 }
   5939 #endif
   5940 ;
   5941 /********************************************************
   5942 *NAME
   5943 *  Fap20v_logical_spatial_multicast_scheduler_field
   5944 *TYPE: BUFFER
   5945 *DATE: 31/DEC/2002
   5946 *FUNCTION:
   5947 *  ARRAY CONTAINING THE DEFAULT VALUE
   5948 *  RELATED TO THE PARAMETER "DATA".
   5949 *ORGANIZATION:
   5950 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5951 *    int val_type -
   5952 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   5953 *      VAL_IP OR VAL_SYMBOL)
   5954 *    union value -
   5955 *      Union of one of
   5956 *        int            int_value
   5957 *        char           *string_value
   5958 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   5959 *        unsigned long  ip_value ;
   5960 *      Value of default variable.
   5961 *USAGE:
   5962 *  SEE ORGANIZATION.
   5963 *REMARKS:
   5964 *  NONE.
   5965 *SEE ALSO:
   5966  */
   5967 EXTERN CONST
   5968    PARAM_VAL_RULES
   5969      Fap20v_logical_spatial_multicast_scheduler_field[]
   5970 #ifdef INIT
   5971    =
   5972 {
   5973   {
   5974     VAL_SYMBOL,
   5975     "slow_multicast_weight",
   5976     {
   5977       {
   5978         FAP20V_SLOW_MULTICAST_WEIGHT_FIELD,
   5979           /*
   5980            * Casting added here just to keep the compiler silent.
   5981            */
   5982         (long)"    \'Slow Multicast Weight\' field on \'Spatial Multicast Enablers\' register.",
   5983           /*
   5984            * Pointer to a function to call after symbolic value
   5985            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   5986            * Casting to 'long' added here just to keep the
   5987            * compiler silent.
   5988            */
   5989         (long)NULL
   5990       }
   5991     }
   5992   },
   5993   {
   5994     VAL_SYMBOL,
   5995     "fast_multicast_weight",
   5996     {
   5997       {
   5998         FAP20V_FAST_MULTICAST_WEIGHT_FIELD,
   5999           /*
   6000            * Casting added here just to keep the compiler silent.
   6001            */
   6002         (long)"    \'Fast Multicast Weight\' field on \'Spatial Multicast Enablers\' register.",
   6003           /*
   6004            * Pointer to a function to call after symbolic value
   6005            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6006            * Casting to 'long' added here just to keep the
   6007            * compiler silent.
   6008            */
   6009         (long)NULL
   6010       }
   6011     }
   6012   },
   6013   {
   6014     VAL_SYMBOL,
   6015     "multicast_credit_gen_rate",
   6016     {
   6017       {
   6018         FAP20V_MULTICAST_CREDIT_GEN_RATE_FIELD,
   6019           /*
   6020            * Casting added here just to keep the compiler silent.
   6021            */
   6022         (long)"    \'MultiCrdGenRate\' field on \'Multicast credit generation rate\' register.",
   6023           /*
   6024            * Pointer to a function to call after symbolic value
   6025            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6026            * Casting to 'long' added here just to keep the
   6027            * compiler silent.
   6028            */
   6029         (long)NULL
   6030       }
   6031     }
   6032   },
   6033   {
   6034     VAL_SYMBOL,
   6035     "unicast_weight",
   6036     {
   6037       {
   6038         FAP20V_UNICAST_WEIGHT_FIELD,
   6039           /*
   6040            * Casting added here just to keep the compiler silent.
   6041            */
   6042         (long)"    \'Unicast Weight\' field on \'Spatial Multicast Enablers\' register.",
   6043           /*
   6044            * Pointer to a function to call after symbolic value
   6045            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6046            * Casting to 'long' added here just to keep the
   6047            * compiler silent.
   6048            */
   6049         (long)NULL
   6050       }
   6051     }
   6052   },
   6053   {
   6054     VAL_SYMBOL,
   6055     "leaky_bucket_free_threshold",
   6056     {
   6057       {
   6058         FAP20V_LEAKY_BUCKET_FREE_THRESHOLD_FIELD,
   6059           /*
   6060            * Casting added here just to keep the compiler silent.
   6061            */
   6062         (long)"    \'LkyBktFreeTrh\' field on \'Spatial Multicast Congestion Thresholds\' register.\n\r"
   6063               "    Below this threshold the bucket is not in a congested state.\n\r"
   6064               "    If LkyBktFreeTrh = 255 the links are always down.",
   6065           /*
   6066            * Pointer to a function to call after symbolic value
   6067            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6068            * Casting to 'long' added here just to keep the
   6069            * compiler silent.
   6070            */
   6071         (long)NULL
   6072       }
   6073     }
   6074   },
   6075   {
   6076     VAL_SYMBOL,
   6077     "leaky_bucket_congestion_threshold",
   6078     {
   6079       {
   6080         FAP20V_LEAKY_BUCKET_CONGESTION_THRESHOLD_FIELD,
   6081           /*
   6082            * Casting added here just to keep the compiler silent.
   6083            */
   6084         (long)"    \'LkyBktCngTrh\' field on \'Spatial Multicast Congestion Thresholds\' register.\n\r"
   6085               "    Above this threshold the bucket is in a congested state.\n\r"
   6086               "    If LkyBktCngTrh = 0 the links are always up.",
   6087           /*
   6088            * Pointer to a function to call after symbolic value
   6089            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6090            * Casting to 'long' added here just to keep the
   6091            * compiler silent.
   6092            */
   6093         (long)NULL
   6094       }
   6095     }
   6096   },
   6097   {
   6098     VAL_SYMBOL,
   6099     "leaky_bucket_decrement_rate",
   6100     {
   6101       {
   6102         FAP20V_LEAKY_BUCKET_DECREMENT_RATE_FIELD,
   6103           /*
   6104            * Casting added here just to keep the compiler silent.
   6105            */
   6106         (long)"    \'LkyBktDcrRate\' field on \'Spatial Multicast Congestion Thresholds\' register.\n\r"
   6107               "    Indicates the rate at which the leaky bucket is decremented. For\n\r"
   6108               "    every programmable number of clocks, up to 64, all buckets are\n\r"
   6109               "    decrement by one, down to zero. The value zero means that the\n\r"
   6110               "    bucket value never decreases.",
   6111           /*
   6112            * Pointer to a function to call after symbolic value
   6113            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6114            * Casting to 'long' added here just to keep the
   6115            * compiler silent.
   6116            */
   6117         (long)NULL
   6118       }
   6119     }
   6120   },
   6121   {
   6122     VAL_SYMBOL,
   6123     "leaky_bucket_max_count",
   6124     {
   6125       {
   6126         FAP20V_LEAKY_BUCKET_MAX_COUNT_FIELD,
   6127           /*
   6128            * Casting added here just to keep the compiler silent.
   6129            */
   6130         (long)"    \'LkyBktMaxCnt\' field on \'Spatial Multicast Congestion Thresholds\' register.\n\r"
   6131               "    Indicates the maximum value of the leaky bucket.",
   6132           /*
   6133            * Pointer to a function to call after symbolic value
   6134            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6135            * Casting to 'long' added here just to keep the
   6136            * compiler silent.
   6137            */
   6138         (long)NULL
   6139       }
   6140     }
   6141   },
   6142 /*
   6143  * Last element. Do not remove.
   6144  */
   6145   {
   6146     VAL_END_OF_LIST
   6147   }
   6148 }
   6149 #endif
   6150 ;
   6151 /********************************************************
   6152 *NAME
   6153 *  Fap20v_logical_initialization_triggers_field
   6154 *TYPE: BUFFER
   6155 *DATE: 31/DEC/2002
   6156 *FUNCTION:
   6157 *  ARRAY CONTAINING THE DEFAULT VALUE
   6158 *  RELATED TO THE PARAMETER "DATA".
   6159 *ORGANIZATION:
   6160 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   6161 *    int val_type -
   6162 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   6163 *      VAL_IP OR VAL_SYMBOL)
   6164 *    union value -
   6165 *      Union of one of
   6166 *        int            int_value
   6167 *        char           *string_value
   6168 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   6169 *        unsigned long  ip_value ;
   6170 *      Value of default variable.
   6171 *USAGE:
   6172 *  SEE ORGANIZATION.
   6173 *REMARKS:
   6174 *  NONE.
   6175 *SEE ALSO:
   6176  */
   6177 EXTERN CONST
   6178    PARAM_VAL_RULES
   6179      Fap20v_logical_initialization_triggers_field[]
   6180 #ifdef INIT
   6181    =
   6182 {
   6183   {
   6184     VAL_SYMBOL,
   6185     "scheduler_init_trig",
   6186     {
   6187       {
   6188         FAP20V_SCHEDULER_INIT_TRIG_FIELD,
   6189           /*
   6190            * Casting added here just to keep the compiler silent.
   6191            */
   6192         (long)"    When set to 1, initialize all Scheduler structures.",
   6193           /*
   6194            * Pointer to a function to call after symbolic value
   6195            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6196            * Casting to 'long' added here just to keep the
   6197            * compiler silent.
   6198            */
   6199         (long)NULL
   6200       }
   6201     }
   6202   },
   6203   {
   6204     VAL_SYMBOL,
   6205     "label_processor_init_trig",
   6206     {
   6207       {
   6208         FAP20V_LABEL_PROCESSOR_INIT_TRIG_FIELD,
   6209           /*
   6210            * Casting added here just to keep the compiler silent.
   6211            */
   6212         (long)"    When set to 1, it triggers initialization of Label Processor's data\n\r"
   6213               "    structures. The CPU can only assert this bit. If the bit is\n\r"
   6214               "    asserted the LBP starts to initialize all the data structures.\n\r"
   6215               "    After the initialization process is done, the LBP negates the bit.\n\r"
   6216               "    The ECI asserts this bit at chip reset.",
   6217           /*
   6218            * Pointer to a function to call after symbolic value
   6219            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6220            * Casting to 'long' added here just to keep the
   6221            * compiler silent.
   6222            */
   6223         (long)NULL
   6224       }
   6225     }
   6226   },
   6227   {
   6228     VAL_SYMBOL,
   6229     "queue_controller_init_trig",
   6230     {
   6231       {
   6232         FAP20V_QUEUE_CONTROLLER_INIT_TRIG_FIELD,
   6233           /*
   6234            * Casting added here just to keep the compiler silent.
   6235            */
   6236         (long)"    When set to 1, it triggers initialization of Queue Cntr data structures.",
   6237           /*
   6238            * Pointer to a function to call after symbolic value
   6239            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6240            * Casting to 'long' added here just to keep the
   6241            * compiler silent.
   6242            */
   6243         (long)NULL
   6244       }
   6245     }
   6246   },
   6247 /*
   6248  * Last element. Do not remove.
   6249  */
   6250   {
   6251     VAL_END_OF_LIST
   6252   }
   6253 }
   6254 #endif
   6255 ;
   6256 /********************************************************
   6257 *NAME
   6258 *  Fap20v_label_processor_field
   6259 *TYPE: BUFFER
   6260 *DATE: 31/DEC/2002
   6261 *FUNCTION:
   6262 *  ARRAY CONTAINING THE DEFAULT VALUE
   6263 *  RELATED TO THE PARAMETER "DATA".
   6264 *ORGANIZATION:
   6265 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   6266 *    int val_type -
   6267 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   6268 *      VAL_IP OR VAL_SYMBOL)
   6269 *    union value -
   6270 *      Union of one of
   6271 *        int            int_value
   6272 *        char           *string_value
   6273 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   6274 *        unsigned long  ip_value ;
   6275 *      Value of default variable.
   6276 *USAGE:
   6277 *  SEE ORGANIZATION.
   6278 *REMARKS:
   6279 *  NONE.
   6280 *SEE ALSO:
   6281  */
   6282 EXTERN CONST
   6283    PARAM_VAL_RULES
   6284      Fap20v_label_processor_field[]
   6285 #ifdef INIT
   6286    =
   6287 {
   6288   {
   6289     VAL_SYMBOL,
   6290     "tree_lvl_cnt_trh_bits",
   6291     {
   6292       {
   6293         FAP20V_TREE_LVL_CNT_TRH_BITS_FIELD,
   6294           /*
   6295            * Casting added here just to keep the compiler silent.
   6296            */
   6297         (long)"    Tree Level Count Threshold.\n\r"
   6298               "    Multicast packets are discarded if their tree-level-count is\n\r"
   6299               "    above the indicated threshold. If the threshold is 0,\n\r"
   6300               "    no multicast packets should be discarded.",
   6301           /*
   6302            * Pointer to a function to call after symbolic value
   6303            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6304            * Casting to 'long' added here just to keep the
   6305            * compiler silent.
   6306            */
   6307         (long)NULL
   6308       }
   6309     }
   6310   },
   6311 /*
   6312  * Last element. Do not remove.
   6313  */
   6314   {
   6315     VAL_END_OF_LIST
   6316   }
   6317 }
   6318 #endif
   6319 ;
   6320 /********************************************************
   6321 *NAME
   6322 *  Fap20v_logical_misc_field
   6323 *TYPE: BUFFER
   6324 *DATE: 31/DEC/2002
   6325 *FUNCTION:
   6326 *  ARRAY CONTAINING THE DEFAULT VALUE
   6327 *  RELATED TO THE PARAMETER "DATA".
   6328 *ORGANIZATION:
   6329 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   6330 *    int val_type -
   6331 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   6332 *      VAL_IP OR VAL_SYMBOL)
   6333 *    union value -
   6334 *      Union of one of
   6335 *        int            int_value
   6336 *        char           *string_value
   6337 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   6338 *        unsigned long  ip_value ;
   6339 *      Value of default variable.
   6340 *USAGE:
   6341 *  SEE ORGANIZATION.
   6342 *REMARKS:
   6343 *  NONE.
   6344 *SEE ALSO:
   6345  */
   6346 EXTERN CONST
   6347    PARAM_VAL_RULES
   6348      Fap20v_logical_misc_field[]
   6349 #ifdef INIT
   6350    =
   6351 {
   6352   {
   6353     VAL_SYMBOL,
   6354     "debug_ver",
   6355     {
   6356       {
   6357         FAP20V_DBG_VER_FIELD,
   6358           /*
   6359            * Casting added here just to keep the compiler silent.
   6360            */
   6361         (long)"    Debug Version. Indicated the version (bug correction) of the device.",
   6362           /*
   6363            * Pointer to a function to call after symbolic value
   6364            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6365            * Casting to 'long' added here just to keep the
   6366            * compiler silent.
   6367            */
   6368         (long)NULL
   6369       }
   6370     }
   6371   },
   6372   {
   6373     VAL_SYMBOL,
   6374     "chip_ver",
   6375     {
   6376       {
   6377         FAP20V_CHIP_VER_FIELD,
   6378           /*
   6379            * Casting added here just to keep the compiler silent.
   6380            */
   6381         (long)"    Chip Version.\n\r"
   6382               "    Indicates the version (different functionality) of the device.",
   6383           /*
   6384            * Pointer to a function to call after symbolic value
   6385            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6386            * Casting to 'long' added here just to keep the
   6387            * compiler silent.
   6388            */
   6389         (long)NULL
   6390       }
   6391     }
   6392   },
   6393   {
   6394     VAL_SYMBOL,
   6395     "chip_type",
   6396     {
   6397       {
   6398         FAP20V_CHIP_TYPE_FIELD,
   6399           /*
   6400            * Casting added here just to keep the compiler silent.
   6401            */
   6402         (long)"    Chip Type. 0xFA010",
   6403           /*
   6404            * Pointer to a function to call after symbolic value
   6405            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6406            * Casting to 'long' added here just to keep the
   6407            * compiler silent.
   6408            */
   6409         (long)NULL
   6410       }
   6411     }
   6412   },
   6413 /*
   6414  * Last element. Do not remove.
   6415  */
   6416   {
   6417     VAL_END_OF_LIST
   6418   }
   6419 }
   6420 #endif
   6421 ;
   6422 /********************************************************
   6423 *NAME
   6424 *  Fap20v_indefinite_num_vals
   6425 *TYPE: BUFFER
   6426 *DATE: 18/JAN/2002
   6427 *FUNCTION:
   6428 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   6429 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   6430 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   6431 *ORGANIZATION:
   6432 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   6433 *    int val_type -
   6434 *      Type of value. Can be:
   6435 *        VAL_END_OF_LIST 0
   6436 *        VAL_NUMERIC     1
   6437 *        VAL_SYMBOL      2
   6438 *        VAL_TEXT        3
   6439 *        VAL_IP          4
   6440 *      The first one is only to indicate the end of
   6441 *      this array. The others indicate what kind of
   6442 *      value this is.
   6443 *    char *symb_val -
   6444 *      ASCII presentation of the symbolic value.
   6445 *      Note: Must be small letters only!
   6446 *      For numeric variables:
   6447 *      This is a dummy variable. Enables searching
   6448 *      array of 'PARAM_VAL_RULES' for name (string)
   6449 *      matching without special case for numeric
   6450 *      variable.
   6451 *    VAL_DESCRIPTOR val_descriptor -
   6452 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   6453 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   6454 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   6455 *      See details in file of definition. Note: Symbols
   6456 *      must be small letters only!
   6457 *USAGE:
   6458 *  SEE ORGANIZATION.
   6459 *REMARKS:
   6460 *  NONE.
   6461 *SEE ALSO:
   6462  */
   6463 EXTERN CONST
   6464    PARAM_VAL_RULES
   6465      Fap20v_indefinite_num_vals[]
   6466 #ifdef INIT
   6467    =
   6468 {
   6469   {
   6470     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   6471     {
   6472       {
   6473         0,
   6474         0,0,
   6475           /*
   6476            * Number of times this value can be repeated (i.e.,
   6477            * value is an array). Must be at least 1!
   6478            */
   6479         1,
   6480         (VAL_PROC_PTR)NULL
   6481       }
   6482     }
   6483   },
   6484 /*
   6485  * Last element. Do not remove.
   6486  */
   6487   {
   6488     VAL_END_OF_LIST
   6489   }
   6490 }
   6491 #endif
   6492 ;
   6493 /********************************************************
   6494 *NAME
   6495 *  Fap20v_data_size_vals
   6496 *TYPE: BUFFER
   6497 *DATE: 18/JAN/2002
   6498 *FUNCTION:
   6499 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   6500 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   6501 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   6502 *ORGANIZATION:
   6503 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   6504 *    int val_type -
   6505 *      Type of value. Can be:
   6506 *        VAL_END_OF_LIST 0
   6507 *        VAL_NUMERIC     1
   6508 *        VAL_SYMBOL      2
   6509 *        VAL_TEXT        3
   6510 *        VAL_IP          4
   6511 *      The first one is only to indicate the end of
   6512 *      this array. The others indicate what kind of
   6513 *      value this is.
   6514 *    char *symb_val -
   6515 *      ASCII presentation of the symbolic value.
   6516 *      Note: Must be small letters only!
   6517 *      For numeric variables:
   6518 *      This is a dummy variable. Enables searching
   6519 *      array of 'PARAM_VAL_RULES' for name (string)
   6520 *      matching without special case for numeric
   6521 *      variable.
   6522 *    VAL_DESCRIPTOR val_descriptor -
   6523 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   6524 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   6525 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   6526 *      See details in file of definition. Note: Symbols
   6527 *      must be small letters only!
   6528 *USAGE:
   6529 *  SEE ORGANIZATION.
   6530 *REMARKS:
   6531 *  NONE.
   6532 *SEE ALSO:
   6533  */
   6534 EXTERN CONST
   6535    PARAM_VAL_RULES
   6536      Fap20v_data_size_vals[]
   6537 #ifdef INIT
   6538    =
   6539 {
   6540   {
   6541     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   6542     {
   6543       {
   6544         HAS_MIN_VALUE | HAS_MAX_VALUE,
   6545         MAX_REPEATED_PARAM_VAL*sizeof(long),0,
   6546           /*
   6547            * Number of times this value can be repeated (i.e.,
   6548            * value is an array). Must be at least 1!
   6549            */
   6550         1,
   6551         (VAL_PROC_PTR)NULL
   6552       }
   6553     }
   6554   },
   6555 /*
   6556  * Last element. Do not remove.
   6557  */
   6558   {
   6559     VAL_END_OF_LIST
   6560   }
   6561 }
   6562 #endif
   6563 ;
   6564 /********************************************************
   6565 *NAME
   6566 *  Fap20v_data_values_vals
   6567 *TYPE: BUFFER
   6568 *DATE: 18/JAN/2002
   6569 *FUNCTION:
   6570 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   6571 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   6572 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   6573 *ORGANIZATION:
   6574 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   6575 *    int val_type -
   6576 *      Type of value. Can be:
   6577 *        VAL_END_OF_LIST 0
   6578 *        VAL_NUMERIC     1
   6579 *        VAL_SYMBOL      2
   6580 *        VAL_TEXT        3
   6581 *        VAL_IP          4
   6582 *      The first one is only to indicate the end of
   6583 *      this array. The others indicate what kind of
   6584 *      value this is.
   6585 *    char *symb_val -
   6586 *      ASCII presentation of the symbolic value.
   6587 *      Note: Must be small letters only!
   6588 *      For numeric variables:
   6589 *      This is a dummy variable. Enables searching
   6590 *      array of 'PARAM_VAL_RULES' for name (string)
   6591 *      matching without special case for numeric
   6592 *      variable.
   6593 *    VAL_DESCRIPTOR val_descriptor -
   6594 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   6595 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   6596 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   6597 *      See details in file of definition. Note: Symbols
   6598 *      must be small letters only!
   6599 *USAGE:
   6600 *  SEE ORGANIZATION.
   6601 *REMARKS:
   6602 *  NONE.
   6603 *SEE ALSO:
   6604  */
   6605 EXTERN CONST
   6606    PARAM_VAL_RULES
   6607      Fap20v_data_values_vals[]
   6608 #ifdef INIT
   6609    =
   6610 {
   6611   {
   6612     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   6613     {
   6614       {
   6615         0,
   6616         0,0,
   6617           /*
   6618            * Number of times this value can be repeated (i.e.,
   6619            * value is an array). Must be at least 1!
   6620            */
   6621         MAX_REPEATED_PARAM_VAL,
   6622         (VAL_PROC_PTR)NULL
   6623       }
   6624     }
   6625   },
   6626 /*
   6627  * Last element. Do not remove.
   6628  */
   6629   {
   6630     VAL_END_OF_LIST
   6631   }
   6632 }
   6633 #endif
   6634 ;
   6635 /********************************************************
   6636 *NAME
   6637 *  Fap20v_Interrupt_mockup_vals
   6638 *TYPE: BUFFER
   6639 *DATE: 02/JUN/2003
   6640 *FUNCTION:
   6641 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   6642 *  RELATED TO THE PARAMETER "DOWNLOAD_MIBS" IN THE
   6643 *  CONTEXT OF SUBJECT 'NVRAM'.
   6644 *ORGANIZATION:
   6645 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   6646 *    int val_type -
   6647 *      Type of value. Can be:
   6648 *        VAL_END_OF_LIST 0
   6649 *        VAL_NUMERIC     1
   6650 *        VAL_SYMBOL      2
   6651 *        VAL_TEXT        3
   6652 *        VAL_IP          4
   6653 *      The first one is only to indicate the end of
   6654 *      this array. The others indicate what kind of
   6655 *      value this is.
   6656 *    VAL_DESCRIPTOR val_descriptor -
   6657 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   6658 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   6659 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   6660 *      See details in file of definition. Note: Symbols
   6661 *      must be small letters only!
   6662 *USAGE:
   6663 *  SEE ORGANIZATION.
   6664 *REMARKS:
   6665 *  NONE.
   6666 *SEE ALSO:
   6667  */
   6668 EXTERN CONST
   6669    PARAM_VAL_RULES
   6670      Fap20v_Interrupt_mockup_vals[]
   6671 #ifdef INIT
   6672    =
   6673 {
   6674   {
   6675     VAL_SYMBOL,
   6676     "mockup_interruupts",
   6677     {
   6678       {
   6679         1,
   6680           /*
   6681            * Casting added here just to keep the compiler silent.
   6682            */
   6683         (long)"    Devices interrupt line is not connected.",
   6684           /*
   6685            * Pointer to a function to call after symbolic value
   6686            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6687            * Casting to 'long' added here just to keep the
   6688            * compiler silent.
   6689            */
   6690         (long)NULL
   6691       }
   6692     }
   6693   },
   6694   {
   6695     VAL_SYMBOL,
   6696     "dont_mockup_interruupts",
   6697     {
   6698       {
   6699         2,
   6700           /*
   6701            * Casting added here just to keep the compiler silent.
   6702            */
   6703         (long)"    Devices interrupt line is connected.",
   6704           /*
   6705            * Pointer to a function to call after symbolic value
   6706            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6707            * Casting to 'long' added here just to keep the
   6708            * compiler silent.
   6709            */
   6710         (long)NULL
   6711       }
   6712     }
   6713   },
   6714 /*
   6715  * Last element. Do not remove.
   6716  */
   6717   {
   6718     VAL_END_OF_LIST
   6719   }
   6720 }
   6721 #endif
   6722 ;
   6723 /********************************************************
   6724 *NAME
   6725 *  Fap20v_empty_vals
   6726 *TYPE: BUFFER
   6727 *DATE: 07/MAY/2002
   6728 *FUNCTION:
   6729 *  ARRAY CONTAINING EMPTY LIST OF VALUES
   6730 *  RELATED TO ANY PARAMETER OF ANY SUBJECT.
   6731 *ORGANIZATION:
   6732 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   6733 *    int val_type -
   6734 *      Type of value. Can be:
   6735 *        VAL_END_OF_LIST 0
   6736 *        VAL_NUMERIC     1
   6737 *        VAL_SYMBOL      2
   6738 *        VAL_TEXT        3
   6739 *        VAL_IP          4
   6740 *      The first one is only to indicate the end of
   6741 *      this array. The others indicate what kind of
   6742 *      value this is.
   6743 *    VAL_DESCRIPTOR val_descriptor -
   6744 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   6745 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   6746 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   6747 *      See details in file of definition. Note: Symbols
   6748 *      must be small letters only!
   6749 *USAGE:
   6750 *  SEE ORGANIZATION.
   6751 *REMARKS:
   6752 *  None
   6753 *SEE ALSO:
   6754  */
   6755 EXTERN CONST
   6756    PARAM_VAL_RULES
   6757      Fap20v_empty_vals[]
   6758 #ifdef INIT
   6759    =
   6760 {
   6761 /*
   6762  * Last element. Do not remove.
   6763  */
   6764   {
   6765     VAL_END_OF_LIST
   6766   }
   6767 }
   6768 #endif
   6769 ;
   6770 
   6771 
   6772 EXTERN CONST
   6773    PARAM_VAL
   6774      Fap20v_print_interrupts_and_counters
   6775 #ifdef INIT
   6776    =
   6777 {
   6778   VAL_NUMERIC,
   6779   0,
   6780   {
   6781     /*
   6782      * Casting may be required here only to keep the compiler silent.
   6783      */
   6784     (unsigned long)0
   6785   }
   6786 }
   6787 #endif
   6788 ;
   6789 
   6790 /********************************************************
   6791 *NAME
   6792 *  Fap20v_print_interval_vals
   6793 *TYPE: BUFFER
   6794 *DATE: 23/NOV/2003
   6795 *FUNCTION:
   6796 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   6797 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   6798 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   6799 *ORGANIZATION:
   6800 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   6801 *    int val_type -
   6802 *      Type of value. Can be:
   6803 *        VAL_END_OF_LIST 0
   6804 *        VAL_NUMERIC     1
   6805 *        VAL_SYMBOL      2
   6806 *        VAL_TEXT        3
   6807 *        VAL_IP          4
   6808 *      The first one is only to indicate the end of
   6809 *      this array. The others indicate what kind of
   6810 *      value this is.
   6811 *    char *symb_val -
   6812 *      ASCII presentation of the symbolic value.
   6813 *      Note: Must be small letters only!
   6814 *      For numeric variables:
   6815 *      This is a dummy variable. Enables searching
   6816 *      array of 'PARAM_VAL_RULES' for name (string)
   6817 *      matching without special case for numeric
   6818 *      variable.
   6819 *    VAL_DESCRIPTOR val_descriptor -
   6820 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   6821 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   6822 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   6823 *      See details in file of definition. Note: Symbols
   6824 *      must be small letters only!
   6825 *USAGE:
   6826 *  SEE ORGANIZATION.
   6827 *REMARKS:
   6828 *  NONE.
   6829 *SEE ALSO:
   6830  */
   6831 EXTERN CONST
   6832    PARAM_VAL_RULES
   6833      Fap20v_print_interval_vals[]
   6834 #ifdef INIT
   6835    =
   6836 {
   6837   {
   6838     VAL_SYMBOL,
   6839     "five_seconds",
   6840     {
   6841       {
   6842         5,
   6843           /*
   6844            * Casting added here just to keep the compiler silent.
   6845            */
   6846         (long)"    5 seconds ",
   6847           /*
   6848            * Pointer to a function to call after symbolic value
   6849            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6850            * Casting to 'long' added here just to keep the
   6851            * compiler silent.
   6852            */
   6853         (long)NULL
   6854       }
   6855     }
   6856   },
   6857   {
   6858     VAL_SYMBOL,
   6859     "one_minute",
   6860     {
   6861       {
   6862         60,
   6863           /*
   6864            * Casting added here just to keep the compiler silent.
   6865            */
   6866         (long)"    1 minute ",
   6867           /*
   6868            * Pointer to a function to call after symbolic value
   6869            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6870            * Casting to 'long' added here just to keep the
   6871            * compiler silent.
   6872            */
   6873         (long)NULL
   6874       }
   6875     }
   6876   },
   6877   {
   6878     VAL_SYMBOL,
   6879     "one_hour",
   6880     {
   6881       {
   6882         3600,
   6883           /*
   6884            * Casting added here just to keep the compiler silent.
   6885            */
   6886         (long)"    1 hour ",
   6887           /*
   6888            * Pointer to a function to call after symbolic value
   6889            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6890            * Casting to 'long' added here just to keep the
   6891            * compiler silent.
   6892            */
   6893         (long)NULL
   6894       }
   6895     }
   6896   },
   6897   {
   6898     VAL_SYMBOL,
   6899     "never",
   6900     {
   6901       {
   6902         0xFFFFFFFF,
   6903           /*
   6904            * Casting added here just to keep the compiler silent.
   6905            */
   6906         (long)"    never ",
   6907           /*
   6908            * Pointer to a function to call after symbolic value
   6909            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   6910            * Casting to 'long' added here just to keep the
   6911            * compiler silent.
   6912            */
   6913         (long)NULL
   6914       }
   6915     }
   6916   },
   6917 /*
   6918  * Last element. Do not remove.
   6919  */
   6920   {
   6921     VAL_END_OF_LIST
   6922   }
   6923 }
   6924 #endif
   6925 ;
   6926 /********************************************************
   6927 *NAME
   6928 *  Fap20v_fap_ids_vals
   6929 *TYPE: BUFFER
   6930 *DATE: 23/NOV/2003
   6931 *FUNCTION:
   6932 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   6933 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   6934 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   6935 *ORGANIZATION:
   6936 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   6937 *    int val_type -
   6938 *      Type of value. Can be:
   6939 *        VAL_END_OF_LIST 0
   6940 *        VAL_NUMERIC     1
   6941 *        VAL_SYMBOL      2
   6942 *        VAL_TEXT        3
   6943 *        VAL_IP          4
   6944 *      The first one is only to indicate the end of
   6945 *      this array. The others indicate what kind of
   6946 *      value this is.
   6947 *    char *symb_val -
   6948 *      ASCII presentation of the symbolic value.
   6949 *      Note: Must be small letters only!
   6950 *      For numeric variables:
   6951 *      This is a dummy variable. Enables searching
   6952 *      array of 'PARAM_VAL_RULES' for name (string)
   6953 *      matching without special case for numeric
   6954 *      variable.
   6955 *    VAL_DESCRIPTOR val_descriptor -
   6956 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   6957 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   6958 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   6959 *      See details in file of definition. Note: Symbols
   6960 *      must be small letters only!
   6961 *USAGE:
   6962 *  SEE ORGANIZATION.
   6963 *REMARKS:
   6964 *  NONE.
   6965 *SEE ALSO:
   6966  */
   6967 EXTERN CONST
   6968    PARAM_VAL_RULES
   6969      Fap20v_fap_ids_vals[]
   6970 #ifdef INIT
   6971    =
   6972 {
   6973   {
   6974     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   6975     {
   6976       {
   6977         HAS_MIN_VALUE | HAS_MAX_VALUE,
   6978         15,0,
   6979           /*
   6980            * Number of times this value can be repeated (i.e.,
   6981            * value is an array). Must be at least 1!
   6982            */
   6983         16,
   6984         (VAL_PROC_PTR)NULL
   6985       }
   6986     }
   6987   },
   6988 /*
   6989  * Last element. Do not remove.
   6990  */
   6991   {
   6992     VAL_END_OF_LIST
   6993   }
   6994 }
   6995 #endif
   6996 ;
   6997 /********************************************************
   6998 *NAME
   6999 *  Fap20v_bit_vals
   7000 *TYPE: BUFFER
   7001 *DATE: 23/NOV/2003
   7002 *FUNCTION:
   7003 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   7004 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   7005 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   7006 *ORGANIZATION:
   7007 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   7008 *    int val_type -
   7009 *      Type of value. Can be:
   7010 *        VAL_END_OF_LIST 0
   7011 *        VAL_NUMERIC     1
   7012 *        VAL_SYMBOL      2
   7013 *        VAL_TEXT        3
   7014 *        VAL_IP          4
   7015 *      The first one is only to indicate the end of
   7016 *      this array. The others indicate what kind of
   7017 *      value this is.
   7018 *    char *symb_val -
   7019 *      ASCII presentation of the symbolic value.
   7020 *      Note: Must be small letters only!
   7021 *      For numeric variables:
   7022 *      This is a dummy variable. Enables searching
   7023 *      array of 'PARAM_VAL_RULES' for name (string)
   7024 *      matching without special case for numeric
   7025 *      variable.
   7026 *    VAL_DESCRIPTOR val_descriptor -
   7027 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   7028 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   7029 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   7030 *      See details in file of definition. Note: Symbols
   7031 *      must be small letters only!
   7032 *USAGE:
   7033 *  SEE ORGANIZATION.
   7034 *REMARKS:
   7035 *  NONE.
   7036 *SEE ALSO:
   7037  */
   7038 EXTERN CONST
   7039    PARAM_VAL_RULES
   7040      Fap20v_bit_vals[]
   7041 #ifdef INIT
   7042    =
   7043 {
   7044   {
   7045     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   7046     {
   7047       {
   7048         HAS_MIN_VALUE | HAS_MAX_VALUE,
   7049         31,0,
   7050           /*
   7051            * Number of times this value can be repeated (i.e.,
   7052            * value is an array). Must be at least 1!
   7053            */
   7054         1,
   7055         (VAL_PROC_PTR)NULL
   7056       }
   7057     }
   7058   },
   7059 /*
   7060  * Last element. Do not remove.
   7061  */
   7062   {
   7063     VAL_END_OF_LIST
   7064   }
   7065 }
   7066 #endif
   7067 ;
   7068 /********************************************************
   7069 *NAME
   7070 *  Fap20v_offset_vals
   7071 *TYPE: BUFFER
   7072 *DATE: 23/NOV/2003
   7073 *FUNCTION:
   7074 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   7075 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   7076 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
   7077 *ORGANIZATION:
   7078 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   7079 *    int val_type -
   7080 *      Type of value. Can be:
   7081 *        VAL_END_OF_LIST 0
   7082 *        VAL_NUMERIC     1
   7083 *        VAL_SYMBOL      2
   7084 *        VAL_TEXT        3
   7085 *        VAL_IP          4
   7086 *      The first one is only to indicate the end of
   7087 *      this array. The others indicate what kind of
   7088 *      value this is.
   7089 *    char *symb_val -
   7090 *      ASCII presentation of the symbolic value.
   7091 *      Note: Must be small letters only!
   7092 *      For numeric variables:
   7093 *      This is a dummy variable. Enables searching
   7094 *      array of 'PARAM_VAL_RULES' for name (string)
   7095 *      matching without special case for numeric
   7096 *      variable.
   7097 *    VAL_DESCRIPTOR val_descriptor -
   7098 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   7099 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   7100 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   7101 *      See details in file of definition. Note: Symbols
   7102 *      must be small letters only!
   7103 *USAGE:
   7104 *  SEE ORGANIZATION.
   7105 *REMARKS:
   7106 *  NONE.
   7107 *SEE ALSO:
   7108  */
   7109 EXTERN CONST
   7110    PARAM_VAL_RULES
   7111      Fap20v_offset_vals[]
   7112 #ifdef INIT
   7113    =
   7114 {
   7115   {
   7116     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   7117     {
   7118       {
   7119         HAS_MIN_VALUE | HAS_MAX_VALUE,
   7120         FAP20V_TOTAL_SIZE_OF_REGS,0,
   7121           /*
   7122            * Number of times this value can be repeated (i.e.,
   7123            * value is an array). Must be at least 1!
   7124            */
   7125         1,
   7126         (VAL_PROC_PTR)NULL
   7127       }
   7128     }
   7129   },
   7130 /*
   7131  * Last element. Do not remove.
   7132  */
   7133   {
   7134     VAL_END_OF_LIST
   7135   }
   7136 }
   7137 #endif
   7138 ;
   7139 
   7140 /********************************************************
   7141 *NAME
   7142 *  Fap20v_flow_status_id
   7143 *TYPE: BUFFER
   7144 *DATE: 10/May/2005
   7145 *FUNCTION:
   7146 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   7147 *  RELATED TO THE PARAMETER "flow_status" IN THE
   7148 *  CONTEXT OF SUBJECT 'TRAFFIC'.
   7149 *ORGANIZATION:
   7150 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   7151 *    int val_type -
   7152 *      Type of value. Can be:
   7153 *        VAL_END_OF_LIST 0
   7154 *        VAL_NUMERIC     1
   7155 *        VAL_SYMBOL      2
   7156 *        VAL_TEXT        3
   7157 *        VAL_IP          4
   7158 *      The first one is only to indicate the end of
   7159 *      this array. The others indicate what kind of
   7160 *      value this is.
   7161 *    VAL_DESCRIPTOR val_descriptor -
   7162 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   7163 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   7164 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   7165 *      See details in file of definition. Note: Symbols
   7166 *      must be small letters only!
   7167 *USAGE:
   7168 *  SEE ORGANIZATION.
   7169 *REMARKS:
   7170 *  NONE.
   7171 *SEE ALSO:
   7172  */
   7173 EXTERN CONST
   7174    PARAM_VAL_RULES
   7175      Fap20v_flow_status_id[]
   7176 #ifdef INIT
   7177    =
   7178 {
   7179   {
   7180     VAL_SYMBOL,
   7181     "on",
   7182     {
   7183       {
   7184         1,
   7185           /*
   7186            * Casting added here just to keep the compiler silent.
   7187            */
   7188         (long)"    ON.",
   7189           /*
   7190            * Pointer to a function to call after symbolic value
   7191            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   7192            * Casting to 'long' added here just to keep the
   7193            * compiler silent.
   7194            */
   7195         (long)NULL
   7196       }
   7197     }
   7198   },
   7199   {
   7200     VAL_SYMBOL,
   7201     "off",
   7202     {
   7203       {
   7204         0,
   7205           /*
   7206            * Casting added here just to keep the compiler silent.
   7207            */
   7208         (long)"    OFF.",
   7209           /*
   7210            * Pointer to a function to call after symbolic value
   7211            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   7212            * Casting to 'long' added here just to keep the
   7213            * compiler silent.
   7214            */
   7215         (long)NULL
   7216       }
   7217     }
   7218   },
   7219 /*
   7220  * Last element. Do not remove.
   7221  */
   7222   {
   7223     VAL_END_OF_LIST
   7224   }
   7225 }
   7226 #endif
   7227 ;
   7228 
   7229 /********************************************************
   7230 *NAME
   7231 *  Fap20v_params
   7232 *TYPE: BUFFER
   7233 *DATE: 29/Dec/2002
   7234 *FUNCTION:
   7235 *  ARRAY CONTAINING THE INITIAL LIST OF PARAMETERS
   7236 *  RELATED TO THE SUBJECT "SOC_SAND_FAP20V".
   7237 *ORGANIZATION:
   7238 *  ARRAY OF STRUCTURES OF TYPE 'PARAM':
   7239 *    int   subject_id -
   7240 *      Identifier of this parameter.
   7241 *    char *par_name -
   7242 *      Ascii presentation of parameter. Must be small
   7243 *      letters only! Must contain at least one character.
   7244 *    PARAM_VAL *allowed_vals -
   7245 *      Array of structures of type PARAM_VAL. This is
   7246 *      the list of values allowed for that
   7247 *      parameter.
   7248 *    int default_care -
   7249 *      Flags bitmap.
   7250 *      Bit(0) indicates whether there is a default
   7251 *      value for this parameter (i.e. 'default_val'
   7252 *      is meaningful). '0' indicates 'no default val'.
   7253 *      Bit(1) indicates whether this parameter must
   7254 *      or may not appear on command line (within its
   7255 *      context). '0' indicates 'may not appear'.
   7256 *    PARAM_VAL *default_val -
   7257 *      Default value for this parameter.
   7258 *    unsigned int num_numeric_vals ;
   7259 *      Number of numeric values in array 'allowed_vals'.
   7260 *    unsigned int num_symbolic_vals ;
   7261 *      Number of symbolic values in array 'allowed_vals'.
   7262 *    unsigned int num_text_vals ;
   7263 *      Number of free text values in array 'allowed_vals'.
   7264 *    unsigned int num_ip_vals ;
   7265 *      Number of IP address values in array 'allowed_vals'.
   7266 *    unsigned int numeric_index ;
   7267 *      Index of numeric value (if there is any) in
   7268 *      array 'allowed_vals'.
   7269 *    unsigned int text_index ;
   7270 *      Index of free text value (if there is any) in
   7271 *      array 'allowed_vals'.
   7272 *    unsigned int ip_index ;
   7273 *      Index of IP address value (if there is any) in
   7274 *      array 'allowed_vals'.
   7275 *    char  *param_short_help -
   7276 *      Short help for this parameter.
   7277 *    char  *param_detailed_help -
   7278 *      Detailed help for this parameter.
   7279 *    char  *vals_detailed_help ;
   7280 *      Detailed help for all values attached to this parameter.
   7281 *      THIS FIELD IS AUTOMATICALLY FILLED IN BY THE SYSTEM
   7282 *      and does NOT need to be filled in by the user.
   7283 *    unsigned long mutex_control ;
   7284 *      Mutual exclusion syntax control. Up to 32 groups
   7285 *      specified by bits. If a parameter has specific
   7286 *      bits set then other parameters, with any of
   7287 *      these bits set, may not be on the same line.
   7288 *USAGE:
   7289 *  SEE ORGANIZATION.
   7290 *REMARKS:
   7291 *  NONE.
   7292 *SEE ALSO:
   7293  */
   7294 EXTERN CONST
   7295    PARAM
   7296      Fap20v_params[]
   7297 #ifdef INIT
   7298    =
   7299 {
   7300   {
   7301     PARAM_FAP20V_GENRAL_API_ID,
   7302     "general",
   7303     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   7304     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   7305     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7306     0,0,0,0,0,0,0,
   7307     "interface to fap20v driver general services.",
   7308     "Examples:\r\n"
   7309     "  fap20v general start_driver\r\n"
   7310     "Results in starting the fap20v driver.\r\n",
   7311     "",
   7312     {BIT(0) | BIT(1) | BIT(2) | BIT(4) | BIT(5) | BIT(26) | BIT(28) | BIT(29) | BIT(30) },
   7313     1,
   7314       /*
   7315        * Pointer to a function to call after symbolic parameter
   7316        * has been accepted.
   7317        */
   7318     (VAL_PROC_PTR)NULL
   7319   },
   7320   {
   7321     PARAM_FAP20V_DEFEREED_API_ID,
   7322     "deferred",
   7323     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   7324     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   7325     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7326     0,0,0,0,0,0,0,
   7327     "interface to fap20v driver deferred services.",
   7328     "Examples:\r\n"
   7329     "  fap20v deferred physical_read 0x1 offset 0x0 size 0x8 polling_rate 50 \r\n"
   7330     "Results in reading data of 64 bit at offset 0x0 of device 0x1 every 50 system ticks.\r\n",
   7331     "",
   7332     {BIT(3) | BIT(6) | BIT(9) | BIT(10) | BIT(13) | BIT(15) | BIT(18) | BIT(24)},
   7333     1,
   7334       /*
   7335        * Pointer to a function to call after symbolic parameter
   7336        * has been accepted.
   7337        */
   7338     (VAL_PROC_PTR)NULL
   7339   },
   7340   {
   7341     PARAM_FAP20V_PRINT_DRIVER_INFORMATION_ID,
   7342     "print_driver_information",
   7343     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   7344     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   7345     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7346     0,0,0,0,0,0,0,
   7347     "Prints driver specific information.\r\n",
   7348     "Examples:\r\n"
   7349     "  fap20v general print_driver_information \r\n"
   7350     "Results in printing SOC_SAND_FAP20V driver information.\r\n",
   7351     "",
   7352     {BIT(0)},
   7353     2,
   7354       /*
   7355        * Pointer to a function to call after symbolic parameter
   7356        * has been accepted.
   7357        */
   7358     (VAL_PROC_PTR)NULL
   7359   },
   7360   {
   7361     PARAM_FAP20V_START_DRIVER_ID,
   7362     "driver_start",
   7363     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   7364     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   7365     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7366     0,0,0,0,0,0,0,
   7367     "Starts the Fap20v driver.\r\n",
   7368     "Examples:\r\n"
   7369     "  fap20v general start_driver\r\n"
   7370     "Results in starting the fap20v driver.\r\n",
   7371     "",
   7372     {BIT(0)},
   7373     2,
   7374       /*
   7375        * Pointer to a function to call after symbolic parameter
   7376        * has been accepted.
   7377        */
   7378     (VAL_PROC_PTR)NULL
   7379   },
   7380   {
   7381     PARAM_FAP20V_SHUTDOWN_DRIVER_ID,
   7382     "driver_shutdown",
   7383     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   7384     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   7385     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7386     0,0,0,0,0,0,0,
   7387     "Shuts down Fap20v driver completly.\r\n",
   7388     "Examples:\r\n"
   7389     "  fap20v general shutdown_driver\r\n"
   7390     "Results in shutting down the fap20v driver.\r\n",
   7391     "",
   7392     {BIT(0)},
   7393     2,
   7394       /*
   7395        * Pointer to a function to call after symbolic parameter
   7396        * has been accepted.
   7397        */
   7398     (VAL_PROC_PTR)NULL
   7399   },
   7400   {
   7401     PARAM_FAP20V_REGISTER_DEVICE_ID,
   7402     "register_device",
   7403     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   7404     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   7405     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7406     0,0,0,0,0,0,0,
   7407     "registers an Fap20v device with the driver.\r\n",
   7408     "Examples:\r\n"
   7409     "  fap20v register_device 0x30043745 \r\n"
   7410     "Results in registering an fap20v device at address 0x30043745 with the driver.\r\n",
   7411     "",
   7412     {BIT(0)},
   7413     2,
   7414       /*
   7415        * Pointer to a function to call after symbolic parameter
   7416        * has been accepted.
   7417        */
   7418     (VAL_PROC_PTR)NULL
   7419   },
   7420   {
   7421     PARAM_FAP20V_UNREGISTER_DEVICE_ID,
   7422     "unregister_device",
   7423     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   7424     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   7425     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7426     0,0,0,0,0,0,0,
   7427     "unregisters an Fap20v device from the driver.\r\n",
   7428     "Examples:\r\n"
   7429     "  fap20v unregister_device 0x1 \r\n"
   7430     "Results in unregistering an fap20v device that was registered under the handle 0x1.\r\n",
   7431     "",
   7432     {BIT(0)},
   7433     2,
   7434       /*
   7435        * Pointer to a function to call after symbolic parameter
   7436        * has been accepted.
   7437        */
   7438     (VAL_PROC_PTR)NULL
   7439   },
   7440   {
   7441     PARAM_FAP20V_RESET_DEVICE_ID,
   7442     "reset_device",
   7443     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   7444     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   7445     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7446     0,0,0,0,0,0,0,
   7447     "resets a SOC_SAND_FAP20V device.\r\n",
   7448     "Examples:\r\n"
   7449     "  fap20v general reset_device 0x1\r\n"
   7450     "Results in resetting device 0x1 (off-on).\r\n",
   7451     "",
   7452     {BIT(26) | BIT(28)},
   7453     2,
   7454       /*
   7455        * Pointer to a function to call after symbolic parameter
   7456        * has been accepted.
   7457        */
   7458     (VAL_PROC_PTR)NULL
   7459   },
   7460   {
   7461     PARAM_FAP20V_FAP_ID_ID,
   7462     "new_fap_id",
   7463     (PARAM_VAL_RULES *)&Fap20v_fap_id[0],
   7464     (sizeof(Fap20v_fap_id) / sizeof(Fap20v_fap_id[0])) - 1,
   7465     HAS_NO_DEFAULT | MUST_APPEAR, (PARAM_VAL *)0,
   7466     0,0,0,0,0,0,0,
   7467     "New FAP-ID to set in the init sequnce.\r\n",
   7468     "Examples:\r\n"
   7469     "  fe200 general reset_device 0x1 new_fap_id 3\r\n"
   7470     "Results in shutting of device 0x1 and setting the FAP-ID to be 3.\r\n",
   7471     "",
   7472     {BIT(28)},
   7473     (unsigned int)LAST_ORDINAL,
   7474       /*
   7475        * Pointer to a function to call after symbolic parameter
   7476        * has been accepted.
   7477        */
   7478     (VAL_PROC_PTR)NULL
   7479   },
   7480   {
   7481     PARAM_FAP20V_REMAIN_OFF_ID,
   7482     "remain_off",
   7483     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   7484     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   7485     HAS_NO_DEFAULT | MUST_APPEAR, (PARAM_VAL *)0,
   7486     0,0,0,0,0,0,0,
   7487     "If appears the device will stay in reset.\r\n",
   7488     "Examples:\r\n"
   7489     "  fap20v general reset_device 0x1 remain_off\r\n"
   7490     "Results in shutting of device 0x1.\r\n",
   7491     "",
   7492     {BIT(26)},
   7493     (unsigned int)LAST_ORDINAL,
   7494       /*
   7495        * Pointer to a function to call after symbolic parameter
   7496        * has been accepted.
   7497        */
   7498     (VAL_PROC_PTR)NULL
   7499   },
   7500   {
   7501     PARAM_FAP20V_START_AND_REGISTER_ID,
   7502     "start_driver_and_register_devices",
   7503     (PARAM_VAL_RULES *)&Fap20v_Interrupt_mockup_vals[0],
   7504     (sizeof(Fap20v_Interrupt_mockup_vals) / sizeof(Fap20v_Interrupt_mockup_vals[0])) - 1,
   7505     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Fap20v_Interrupt_mockup_default,
   7506     0,0,0,0,0,0,0,
   7507     "starts the fap20v driver, simulator and register 2 devices (with or without ISR).\r\n",
   7508     "Examples:\r\n"
   7509     "  fap20v start_driver_and_register_devices mockup_inetrrupts\r\n"
   7510     "Results in activating the driver, the simulator and registering 2 devices,\n\r"
   7511     "  and simulating interrupts by polling.\r\n",
   7512     "",
   7513     {BIT(0)},
   7514     2,
   7515       /*
   7516        * Pointer to a function to call after symbolic parameter
   7517        * has been accepted.
   7518        */
   7519     (VAL_PROC_PTR)NULL
   7520   },
   7521   {
   7522     PARAM_FAP20V_UNREGISTER_AND_SHUTDOWN_ID,
   7523     "unregister_devices_and_shutdown_driver",
   7524     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   7525     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   7526     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7527     0,0,0,0,0,0,0,
   7528     "unregister 2 fap20v devices, ends the simulator and shutdown the driver.\r\n",
   7529     "Examples:\r\n"
   7530     "  fap20v unregister_devices_and_shutdown_driver \r\n"
   7531     "Results in unregistering the devices and shutting down the simulator and the driver.\r\n",
   7532     "",
   7533     {BIT(0)},
   7534     2,
   7535       /*
   7536        * Pointer to a function to call after symbolic parameter
   7537        * has been accepted.
   7538        */
   7539     (VAL_PROC_PTR)NULL
   7540   },
   7541   {
   7542     PARAM_FAP20V_CLEAR_DEVICE_PENDING_SERVICES_ID,
   7543     "clear_device_pending_services",
   7544     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   7545     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   7546     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7547     0,0,0,0,0,0,0,
   7548     "clears all pending services of an Fap20v device.\r\n",
   7549     "Examples:\r\n"
   7550     "  fap20v clear_device_pending_services 0x1 \r\n"
   7551     "Results in clearing all services registered for an fap20v device with the handle 0x1.\r\n",
   7552     "",
   7553     {BIT(0)},
   7554     2,
   7555       /*
   7556        * Pointer to a function to call after symbolic parameter
   7557        * has been accepted.
   7558        */
   7559     (VAL_PROC_PTR)NULL
   7560   },
   7561   {
   7562     PARAM_FAP20V_STOP_POLLING_TRANSACTON_ID,
   7563     "stop_polling_transaction",
   7564     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   7565     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   7566     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7567     0,0,0,0,0,0,0,
   7568     "unregister one deferred service accroding to its handle.\r\n",
   7569     "Examples:\r\n"
   7570     "  fap20v stop_polling_transaction 0x28342359 \r\n"
   7571     "Results in unregistered the service with handle 0x28342359.\r\n",
   7572     "",
   7573     {BIT(0)},
   7574     2,
   7575       /*
   7576        * Pointer to a function to call after symbolic parameter
   7577        * has been accepted.
   7578        */
   7579     (VAL_PROC_PTR)NULL
   7580   },
   7581   {
   7582     PARAM_FAP20V_SILENT_ID,
   7583     "silent",
   7584     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   7585     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   7586     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
   7587     0,0,0,0,0,0,0,
   7588     "If appears - less printouts as possible.\r\n",
   7589     "Examples:\r\n"
   7590     "  fap20v general physical_write 0x0 offset 0x4 data 0x2233 silent\r\n"
   7591     "Results in writing data of 32 bit at offset 0x4 of device 0 - with no printing.\r\n",
   7592     "",
   7593     {BIT(1) | BIT(2)},
   7594     LAST_ORDINAL,
   7595       /*
   7596        * Pointer to a function to call after symbolic parameter
   7597        * has been accepted.
   7598        */
   7599     (VAL_PROC_PTR)NULL
   7600   },
   7601   {
   7602     PARAM_FAP20V_PHYSICAL_WRITE_ID,
   7603     "physical_write",
   7604     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   7605     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   7606     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7607     0,0,0,0,0,0,0,
   7608     "writes data to the specified device at the specified offset.\r\n",
   7609     "Examples:\r\n"
   7610     "  fap20v general physical_write 0x1 offset 0x8 size 0x4 data 0x2233 \r\n"
   7611     "Results in writing data of 32 bit at offset 0x8 of device 0x1.\r\n",
   7612     "",
   7613     {BIT(1)},
   7614     2,
   7615       /*
   7616        * Pointer to a function to call after symbolic parameter
   7617        * has been accepted.
   7618        */
   7619     (VAL_PROC_PTR)NULL
   7620   },
   7621   {
   7622     PARAM_FAP20V_PHYSICAL_READ_ID,
   7623     "physical_read",
   7624     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   7625     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   7626     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7627     0,0,0,0,0,0,0,
   7628     "reads data from the specified device at the specified offset.\r\n",
   7629     "Examples:\r\n"
   7630     "  fap20v general physical_read 0x1 offset 0x8 size 0x4 \r\n"
   7631     "Results in reading data of 32 bit at offset 0x8 of device 0x1.\r\n",
   7632     "",
   7633     {BIT(2)},
   7634     2,
   7635       /*
   7636        * Pointer to a function to call after symbolic parameter
   7637        * has been accepted.
   7638        */
   7639     (VAL_PROC_PTR)NULL
   7640   },
   7641   {
   7642     PARAM_FAP20V_DEFERRED_PHYSICAL_READ_ID,
   7643     "physical_read",
   7644     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   7645     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   7646     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7647     0,0,0,0,0,0,0,
   7648     "deferred read of data from the specified device at the specified offset.\r\n",
   7649     "Examples:\r\n"
   7650     "  fap20v deferred physical_read 0x1 offset 0x0 size 0x8 polling_rate 50 \r\n"
   7651     "Results in reading data of 64 bit at offset 0x0 of device 0x1 every 50 system ticks.\r\n",
   7652     "",
   7653     {BIT(3)},
   7654     2,
   7655       /*
   7656        * Pointer to a function to call after symbolic parameter
   7657        * has been accepted.
   7658        */
   7659     (VAL_PROC_PTR)NULL
   7660   },
   7661   {
   7662     PARAM_FAP20V_LOGICAL_WRITE_ID,
   7663     "logical_write",
   7664     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   7665     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   7666     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7667     0,0,0,0,0,0,0,
   7668     "writes data to the specified device at the register / field.\r\n",
   7669     "Examples:\r\n"
   7670     "  fap20v general logical_write 0x1 field chip_id data 0x3 \r\n"
   7671     "Results in writing the value 0x3 to the chip_id field of fe 0x1.\r\n",
   7672     "",
   7673     {BIT(4)},
   7674     2,
   7675       /*
   7676        * Pointer to a function to call after symbolic parameter
   7677        * has been accepted.
   7678        */
   7679     (VAL_PROC_PTR)NULL
   7680   },
   7681   {
   7682     PARAM_FAP20V_LOGICAL_READ_ID,
   7683     "logical_read",
   7684     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   7685     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   7686     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7687     0,0,0,0,0,0,0,
   7688     "reads specified register / field from the device.\r\n",
   7689     "Examples:\r\n"
   7690     "  fap20v general logical_read 0x1 field chip_id \r\n"
   7691     "Results in reading the value of the chip_id field from fe 0x1.\r\n",
   7692     "",
   7693     {BIT(5)},
   7694     2,
   7695       /*
   7696        * Pointer to a function to call after symbolic parameter
   7697        * has been accepted.
   7698        */
   7699     (VAL_PROC_PTR)NULL
   7700   },
   7701   {
   7702     PARAM_FAP20V_DEFERRED_LOGICAL_READ_ID,
   7703     "logical_read",
   7704     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   7705     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   7706     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7707     0,0,0,0,0,0,0,
   7708     "deferred read of the specified register / field from the device.\r\n",
   7709     "Examples:\r\n"
   7710     "  fap20v deferred logical_read 0x1 field chip_id polling_rate 50\r\n"
   7711     "Results in polling of the field chip_id field from fe 0x1, every 50 time ticks.\r\n",
   7712     "",
   7713     {BIT(6)},
   7714     2,
   7715       /*
   7716        * Pointer to a function to call after symbolic parameter
   7717        * has been accepted.
   7718        */
   7719     (VAL_PROC_PTR)NULL
   7720   },
   7721   {
   7722     PARAM_FAP20V_PHYSICAL_DIRECT_ID,
   7723     "direct",
   7724     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   7725     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   7726     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
   7727     0,0,0,0,0,0,0,
   7728     "a part of read / write data to the specified device at the specified offset.\r\n",
   7729     "Examples:\r\n"
   7730     "  fap20v general physical_write direct 0x1 offset 0x8 size 0x4 data 0x2233 \r\n"
   7731     "Results in writing data of 32 bit at offset 0x8 of device 0x1.\r\n",
   7732     "",
   7733     {BIT(1) | BIT(2) | BIT(3)},
   7734     3,
   7735       /*
   7736        * Pointer to a function to call after symbolic parameter
   7737        * has been accepted.
   7738        */
   7739     (VAL_PROC_PTR)NULL
   7740   },
   7741   {
   7742     PARAM_FAP20V_PHYSICAL_INDIRECT_ID,
   7743     "indirect",
   7744     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   7745     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   7746     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
   7747     0,0,0,0,0,0,0,
   7748     "a part of read / write data to the specified device at the specified offset.\r\n",
   7749     "Examples:\r\n"
   7750     "  fap20v general physical_write indirect 0x1 offset 0x8 size 0x4 data 0x2233 \r\n"
   7751     "Results in indirect writing data of 32 bit at offset 0x8 of device 0x1.\r\n",
   7752     "",
   7753     {BIT(1) | BIT(2) | BIT(3)},
   7754     3,
   7755       /*
   7756        * Pointer to a function to call after symbolic parameter
   7757        * has been accepted.
   7758        */
   7759     (VAL_PROC_PTR)NULL
   7760   },
   7761   {
   7762     PARAM_FAP20V_PHYSICAL_OFFSET_ID,
   7763     "offset",
   7764     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   7765     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   7766     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7767     0,0,0,0,0,0,0,
   7768     "a part of read / write data to the specified device at the specified offset.\r\n",
   7769     "Examples:\r\n"
   7770     "  fap20v general physical_write direct 0x1 offset 0x8 size 0x4 data 0x2233 \r\n"
   7771     "Results in writing data of 32 bit at offset 0x8 of device 0x1.\r\n",
   7772     "",
   7773     {BIT(1) | BIT(2) | BIT(3) | BIT(29) | BIT(30)},
   7774     4,
   7775       /*
   7776        * Pointer to a function to call after symbolic parameter
   7777        * has been accepted.
   7778        */
   7779     (VAL_PROC_PTR)NULL
   7780   },
   7781   {
   7782     PARAM_FAP20V_PHYSICAL_SIZE_ID,
   7783     "size",
   7784     (PARAM_VAL_RULES *)&Fap20v_data_size_vals[0],
   7785     (sizeof(Fap20v_data_size_vals) / sizeof(Fap20v_data_size_vals[0])) - 1,
   7786     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Fap20v_read_size_default,
   7787     0,0,0,0,0,0,0,
   7788     "a part of read / write data to the specified device at the specified offset.\r\n",
   7789     "Examples:\r\n"
   7790     "  fap20v general physical_write 0x1 direct offset 0x8 size 0x4 data 0x2233 \r\n"
   7791     "Results in writing data of 32 bit at offset 0x8 of device 0x1.\r\n",
   7792     "",
   7793     { BIT(2) | BIT(3)},
   7794     5,
   7795       /*
   7796        * Pointer to a function to call after symbolic parameter
   7797        * has been accepted.
   7798        */
   7799     (VAL_PROC_PTR)NULL
   7800   },
   7801   {
   7802     PARAM_MEM_NUM_OF_TIMES_ID,
   7803     "nof_times",
   7804     (PARAM_VAL_RULES *)&Fap20v_nof_times_mem_read_vals[0],
   7805     (sizeof(Fap20v_nof_times_mem_read_vals) / sizeof(Fap20v_nof_times_mem_read_vals[0])) - 1,
   7806     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Fap20v_nof_times_mem_read_default,
   7807     0,0,0,0,0,0,0,
   7808     "Re-current read. 'nof_times' times.",
   7809     "Examples:\r\n"
   7810     "  fap20v general physical_read 0x1 direct offset 0x8 size 0x4 nof_times 12\r\n"
   7811     "Results in reading, 12 times, starting at offset 0x8.\r\n",
   7812     "",
   7813     {BIT(2)},
   7814     (unsigned int)LAST_ORDINAL,
   7815       /*
   7816        * Pointer to a function to call after symbolic parameter
   7817        * has been accepted.
   7818        */
   7819     (VAL_PROC_PTR)NULL
   7820   },
   7821   {
   7822     PARAM_MEM_PAUSE_AFTER_READ_ID,
   7823     "pause_after_read",
   7824     (PARAM_VAL_RULES *)&Fap20v_pause_after_read_mem_read_vals[0],
   7825     (sizeof(Fap20v_pause_after_read_mem_read_vals) / sizeof(Fap20v_pause_after_read_mem_read_vals[0])) - 1,
   7826     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Fap20v_pause_after_read_mem_read_default,
   7827     0,0,0,0,0,0,0,
   7828     "Pause for amount of time after read (micro-sec). (Useful with 'nof_times' parameter.)",
   7829     "Examples:\r\n"
   7830     "  fap20v general physical_read 0x1 direct offset 0x8 size 0x4 nof_times 12 pause_after_read 10\r\n"
   7831     "Results in reading, 12 times, starting at offset 0x8.\r\n"
   7832     "After every read the CPU will halt for 10 micro-sec \n\r",
   7833     "",
   7834     {BIT(2)},
   7835     (unsigned int)LAST_ORDINAL,
   7836       /*
   7837        * Pointer to a function to call after symbolic parameter
   7838        * has been accepted.
   7839        */
   7840     (VAL_PROC_PTR)NULL
   7841   },
   7842   {
   7843     PARAM_FAP20V_PHYSICAL_DATA_ID,
   7844     "data",
   7845     (PARAM_VAL_RULES *)&Fap20v_data_values_vals[0],
   7846     (sizeof(Fap20v_data_values_vals) / sizeof(Fap20v_data_values_vals[0])) - 1,
   7847     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7848     0,0,0,0,0,0,0,
   7849     "a part of read / write data to the specified device at the specified offset.\r\n",
   7850     "Examples:\r\n"
   7851     "  fap20v general physical_write 0x1 direct offset 0x8 size 0x4 data 0x2233 \r\n"
   7852     "Results in writing data of 32 bit at offset 0x8 of device 0x1.\r\n",
   7853     "",
   7854     {BIT(1) | BIT(4) | BIT(29)},
   7855     6,
   7856       /*
   7857        * Pointer to a function to call after symbolic parameter
   7858        * has been accepted.
   7859        */
   7860     (VAL_PROC_PTR)NULL
   7861   },
   7862   {
   7863     PARAM_FAP20V_POLLING_RATE_ID,
   7864     "polling_rate",
   7865     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   7866     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   7867     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7868     0,0,0,0,0,0,0,
   7869     "a part of a deferred read of data to the specified device at the specified offset.\r\n",
   7870     "Examples:\r\n"
   7871     "  fap20v deferred physical_read 0x1 offset 0x0 size 0x8 polling_rate 50 \r\n"
   7872     "Results in reading data of 64 bit at offset 0x0 of device 0x1 every 50 system ticks.\r\n",
   7873     "",
   7874     {BIT(3) | BIT(6) | BIT(9) | BIT(13) | BIT(15) | BIT(18) | BIT(24)},
   7875     7,
   7876       /*
   7877        * Pointer to a function to call after symbolic parameter
   7878        * has been accepted.
   7879        */
   7880     (VAL_PROC_PTR)NULL
   7881   },
   7882   {
   7883     PARAM_FAP20V_FIELD_ID,
   7884     "interrupt",
   7885     (PARAM_VAL_RULES *)&Fap20v_logical_interrupt_mask_field[0],
   7886     (sizeof(Fap20v_logical_interrupt_mask_field) / sizeof(Fap20v_logical_interrupt_mask_field[0])) - 1,
   7887     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7888     0,0,0,0,0,0,0,
   7889     "interrupt group of registers/fields.\r\n",
   7890     "Examples:\r\n"
   7891     "  fap20v general logical_write 0x1 interrupt src_dv_cng_link_mask 0x1\r\n"
   7892     "Results in writing the value 0x1 to the src_dv_cng_link_mask field of device 0x1.\r\n",
   7893     "",
   7894     {BIT(4) | BIT(5) | BIT(6)},
   7895     3,
   7896       /*
   7897        * Pointer to a function to call after symbolic parameter
   7898        * has been accepted.
   7899        */
   7900     (VAL_PROC_PTR)NULL
   7901   },
   7902   {
   7903     PARAM_FAP20V_FIELD_ID,
   7904     "init_trig",
   7905     (PARAM_VAL_RULES *)&Fap20v_logical_initialization_triggers_field[0],
   7906     (sizeof(Fap20v_logical_initialization_triggers_field) / sizeof(Fap20v_logical_initialization_triggers_field[0])) - 1,
   7907     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7908     0,0,0,0,0,0,0,
   7909     "Initialization triggers group of registers/fields.\r\n",
   7910     "Examples:\r\n"
   7911     "  fap20v general logical_write 0x1 init_trig queue_controller_init_trig 0x1\r\n"
   7912     "Results in writing the value 0x1 to the queue_controller_init_trig field of device 0x1.\r\n",
   7913     "",
   7914     {BIT(4) | BIT(5) | BIT(6)},
   7915     3,
   7916       /*
   7917        * Pointer to a function to call after symbolic parameter
   7918        * has been accepted.
   7919        */
   7920     (VAL_PROC_PTR)NULL
   7921   },
   7922   {
   7923     PARAM_FAP20V_FIELD_ID,
   7924     "sms",
   7925     (PARAM_VAL_RULES *)&Fap20v_logical_spatial_multicast_scheduler_field[0],
   7926     (sizeof(Fap20v_logical_spatial_multicast_scheduler_field) / sizeof(Fap20v_logical_spatial_multicast_scheduler_field[0])) - 1,
   7927     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7928     0,0,0,0,0,0,0,
   7929     "Spatial Multicast Scheduler group of registers/fields.\r\n",
   7930     "Examples:\r\n"
   7931     "  fap20v general logical_write 0x1 misc unicast_weight 0x3\r\n"
   7932     "Results in writing the value 0x3 to the unicast_weight field of device 0x1.\r\n",
   7933     "",
   7934     {BIT(4) | BIT(5) | BIT(6)},
   7935     3,
   7936       /*
   7937        * Pointer to a function to call after symbolic parameter
   7938        * has been accepted.
   7939        */
   7940     (VAL_PROC_PTR)NULL
   7941   },
   7942   {
   7943     PARAM_FAP20V_FIELD_ID,
   7944     "label_processor",
   7945     (PARAM_VAL_RULES *)&Fap20v_label_processor_field[0],
   7946     (sizeof(Fap20v_label_processor_field) / sizeof(Fap20v_label_processor_field[0])) - 1,
   7947     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7948     0,0,0,0,0,0,0,
   7949     "label-processor group of registers/fields.\r\n",
   7950     "Examples:\r\n"
   7951     "  fap20v general logical_write 0x1 label_processor sig_class_bits 0x3\r\n"
   7952     "Results in writing the value 0x3 to the 'sig_class_bits' field of device 0x1.\r\n",
   7953     "",
   7954     {BIT(4) | BIT(5) | BIT(6)},
   7955     3,
   7956       /*
   7957        * Pointer to a function to call after symbolic parameter
   7958        * has been accepted.
   7959        */
   7960     (VAL_PROC_PTR)NULL
   7961   },
   7962   {
   7963     PARAM_FAP20V_FIELD_ID,
   7964     "misc",
   7965     (PARAM_VAL_RULES *)&Fap20v_logical_misc_field[0],
   7966     (sizeof(Fap20v_logical_misc_field) / sizeof(Fap20v_logical_misc_field[0])) - 1,
   7967     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7968     0,0,0,0,0,0,0,
   7969     "miscellaneous group of registers/fields.\r\n",
   7970     "Examples:\r\n"
   7971     "  fap20v general logical_write 0x1 misc chip_id 0x3\r\n"
   7972     "Results in writing the value 0x3 to the chip_id field of device 0x1.\r\n",
   7973     "",
   7974     {BIT(4) | BIT(5) | BIT(6)},
   7975     3,
   7976       /*
   7977        * Pointer to a function to call after symbolic parameter
   7978        * has been accepted.
   7979        */
   7980     (VAL_PROC_PTR)NULL
   7981   },
   7982   {
   7983     PARAM_FAP20V_FIELD_ID,
   7984     "queue_controller",
   7985     (PARAM_VAL_RULES *)&Fap20v_logical_external_dram_field[0],
   7986     (sizeof(Fap20v_logical_external_dram_field) / sizeof(Fap20v_logical_external_dram_field[0])) - 1,
   7987     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7988     0,0,0,0,0,0,0,
   7989     "queueing group of registers/fields.\r\n",
   7990     "Examples:\r\n"
   7991     "  fap20v general logical_write 0x1 queue_controller top_que_blk_1 0x333\r\n"
   7992     "Results in writing the value 0x333 to the top_que_blk_1 field of device 0x1.\r\n",
   7993     "",
   7994     {BIT(4) | BIT(5) | BIT(6)},
   7995     3,
   7996       /*
   7997        * Pointer to a function to call after symbolic parameter
   7998        * has been accepted.
   7999        */
   8000     (VAL_PROC_PTR)NULL
   8001   },
   8002   {
   8003     PARAM_FAP20V_FIELD_ID,
   8004     "sch",
   8005     (PARAM_VAL_RULES *)&Fap20v_logical_sch_field[0],
   8006     (sizeof(Fap20v_logical_sch_field) / sizeof(Fap20v_logical_sch_field[0])) - 1,
   8007     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8008     0,0,0,0,0,0,0,
   8009     "scheduler group of registers/fields.\r\n",
   8010     "Examples:\r\n"
   8011     "  fap20v general logical_write 0x1 sch port_cfg 0x3\r\n"
   8012     "Results in writing the value 0x3 to the port_cfg field of device 0x1.\r\n",
   8013     "",
   8014     {BIT(4) | BIT(5) | BIT(6)},
   8015     3,
   8016       /*
   8017        * Pointer to a function to call after symbolic parameter
   8018        * has been accepted.
   8019        */
   8020     (VAL_PROC_PTR)NULL
   8021   },
   8022   /* miscellaneous interface { */
   8023   {
   8024     PARAM_FAP20V_MISC_API_ID,
   8025     "misc",
   8026     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   8027     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   8028     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8029     0,0,0,0,0,0,0,
   8030     "interface to fap20v driver miscellaneous services.",
   8031     "Examples:\r\n"
   8032     "  fap20v traffic send_sr_data_cell 0 initial_output_link 3 fe2_link 16 destination_entity_type fop body 0x88888877 \r\n"
   8033     "Results in sending a source routed data cell through device 0 link 3, and the data: 0x88888877 to a fop.\r\n",
   8034     "",
   8035     {0,
   8036      0,
   8037      0,
   8038      BIT(2)},
   8039     1,
   8040       /*
   8041        * Pointer to a function to call after symbolic parameter
   8042        * has been accepted.
   8043        */
   8044     (VAL_PROC_PTR)NULL
   8045   },
   8046 
   8047   /* END miscellaneous interface } */
   8048 
   8049   /* fap20v_api_cell.h interface { */
   8050   {
   8051     PARAM_FAP20V_CELL_API_ID,
   8052     "traffic",
   8053     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   8054     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   8055     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8056     0,0,0,0,0,0,0,
   8057     "interface to fap20v driver traffic (cell/packet) services.",
   8058     "Examples:\r\n"
   8059     "  fap20v traffic send_sr_data_cell 0 initial_output_link 3 fe2_link 16 destination_entity_type fop body 0x88888877 \r\n"
   8060     "Results in sending a source routed data cell through device 0 link 3, and the data: 0x88888877 to a fop.\r\n",
   8061     "",
   8062     {BIT(7) | BIT(8),
   8063      BIT(22) | BIT(23),
   8064      BIT(30)},
   8065     1,
   8066       /*
   8067        * Pointer to a function to call after symbolic parameter
   8068        * has been accepted.
   8069        */
   8070     (VAL_PROC_PTR)NULL
   8071   },
   8072   {
   8073     PARAM_FAP20V_SEND_CELL_ID,
   8074     "send_sr_data_cell",
   8075     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   8076     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   8077     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8078     0,0,0,0,0,0,0,
   8079     "sends a source routed data cell.\r\n",
   8080     "Examples:\r\n"
   8081     "  fap20v traffic send_sr_data_cell 0 initial_output_link 3 fe2_link 16 destination_entity_type fop body 0x88888877 \r\n"
   8082     "Results in sending a source routed data cell through device 0 link 3, and the data: 0x88888877 to a fop.\r\n",
   8083     "",
   8084     {BIT(7)},
   8085     2,
   8086       /*
   8087        * Pointer to a function to call after symbolic parameter
   8088        * has been accepted.
   8089        */
   8090     (VAL_PROC_PTR)NULL
   8091   },
   8092   {
   8093     PARAM_FAP20V_SEND_CELL_INIT_OUT_LINK_ID,
   8094     "initial_output_link",
   8095     (PARAM_VAL_RULES *)&FAP20V_initial_output_link_num_vals[0],
   8096     (sizeof(FAP20V_initial_output_link_num_vals) / sizeof(FAP20V_initial_output_link_num_vals[0])) - 1,
   8097     HAS_NO_DEFAULT | MUST_APPEAR, (PARAM_VAL *)0,
   8098     0,0,0,0,0,0,0,
   8099     "the link to choose when leave this fap.\r\n",
   8100     "Examples:\r\n"
   8101       "  fap20v traffic send_sr_data_cell 0 initial_output_link 3 fe2_link 16 destination_entity_type fop body 0x88888877 \r\n"
   8102       "Results in sending a source routed data cell through device 0 link 3, and the data: 0x88888877 to a fop.\r\n",
   8103     "",
   8104     {BIT(7)},
   8105     (unsigned int)LAST_ORDINAL,
   8106       /*
   8107        * Pointer to a function to call after symbolic parameter
   8108        * has been accepted.
   8109        */
   8110     (VAL_PROC_PTR)NULL
   8111   },
   8112   {
   8113     PARAM_FAP20V_SEND_CELL_FE1_LINK_ID,
   8114     "fe1_link",
   8115     (PARAM_VAL_RULES *)&FAP20V_fe1_link_num_vals[0],
   8116     (sizeof(FAP20V_fe1_link_num_vals) / sizeof(FAP20V_fe1_link_num_vals[0])) - 1,
   8117     HAS_DEFAULT | MAY_NOT_APPEAR, (PARAM_VAL *)&Fap20v_fe1_link_default,
   8118     0,0,0,0,0,0,0,
   8119     "the link to choose when passing through fe1.\r\n",
   8120     "Examples:\r\n"
   8121       "  fap20v traffic send_sr_data_cell 0 initial_output_link 3 fe2_link 16 destination_entity_type fop body 0x88888877 \r\n"
   8122       "Results in sending a source routed data cell through device 0 link 3, and the data: 0x88888877 to a fop.\r\n",
   8123     "",
   8124     {BIT(7)},
   8125     (unsigned int)LAST_ORDINAL,
   8126       /*
   8127        * Pointer to a function to call after symbolic parameter
   8128        * has been accepted.
   8129        */
   8130     (VAL_PROC_PTR)NULL
   8131   },
   8132   {
   8133     PARAM_FAP20V_SEND_CELL_FE2_LINK_ID,
   8134     "fe2_link",
   8135     (PARAM_VAL_RULES *)&FAP20V_fe2_link_num_vals[0],
   8136     (sizeof(FAP20V_fe2_link_num_vals) / sizeof(FAP20V_fe2_link_num_vals[0])) - 1,
   8137     HAS_DEFAULT | MAY_NOT_APPEAR, (PARAM_VAL *)&Fap20v_fe2_link_default,
   8138     0,0,0,0,0,0,0,
   8139     "the link to choose when passing through fe2.\r\n",
   8140     "Examples:\r\n"
   8141       "  fap20v traffic send_sr_data_cell 0 initial_output_link 3 fe2_link 16 destination_entity_type fop body 0x88888877 \r\n"
   8142       "Results in sending a source routed data cell through device 0 link 3, and the data: 0x88888877 to a fop.\r\n",
   8143     "",
   8144     {BIT(7)},
   8145     (unsigned int)LAST_ORDINAL,
   8146       /*
   8147        * Pointer to a function to call after symbolic parameter
   8148        * has been accepted.
   8149        */
   8150     (VAL_PROC_PTR)NULL
   8151   },
   8152   {
   8153     PARAM_FAP20V_SEND_CELL_FE3_LINK_ID,
   8154     "fe3_link",
   8155     (PARAM_VAL_RULES *)&Fap20v_fe3_link_num_vals[0],
   8156     (sizeof(Fap20v_fe3_link_num_vals) / sizeof(Fap20v_fe3_link_num_vals[0])) - 1,
   8157     HAS_DEFAULT | MAY_NOT_APPEAR, (PARAM_VAL *)&Fap20v_fe3_link_default,
   8158     0,0,0,0,0,0,0,
   8159     "the link to choose when passing through fe3.\r\n",
   8160     "Examples:\r\n"
   8161       "  fap20v traffic send_sr_data_cell 0 initial_output_link 3 fe2_link 16 destination_entity_type fop body 0x88888877 \r\n"
   8162       "Results in sending a source routed data cell through device 0 link 3, and the data: 0x88888877 to a fop.\r\n",
   8163     "",
   8164     {BIT(7)},
   8165     (unsigned int)LAST_ORDINAL,
   8166       /*
   8167        * Pointer to a function to call after symbolic parameter
   8168        * has been accepted.
   8169        */
   8170     (VAL_PROC_PTR)NULL
   8171   },
   8172   {
   8173     PARAM_FAP20V_SEND_CELL_DEST_ENTITY_TYPE_ID,
   8174     "destination_entity_type",
   8175     (PARAM_VAL_RULES *)&Fap20v_entity_type[0],
   8176     (sizeof(Fap20v_entity_type) / sizeof(Fap20v_entity_type[0])) - 1,
   8177     HAS_NO_DEFAULT | MAY_NOT_APPEAR, (PARAM_VAL *)0,
   8178     0,0,0,0,0,0,0,
   8179     "the entity this cell is destined to.\r\n",
   8180     "Examples:\r\n"
   8181       "  fap20v traffic send_sr_data_cell 0 initial_output_link 3 fe2_link 16 destination_entity_type fop body 0x88888877 \r\n"
   8182       "Results in sending a source routed data cell through device 0 link 3, and the data: 0x88888877 to a fop.\r\n",
   8183     "",
   8184     {BIT(7)},
   8185     (unsigned int)LAST_ORDINAL,
   8186       /*
   8187        * Pointer to a function to call after symbolic parameter
   8188        * has been accepted.
   8189        */
   8190     (VAL_PROC_PTR)NULL
   8191   },
   8192   {
   8193     PARAM_FAP20V_SEND_CELL_SRC_CHIP_ID,
   8194     "source_chip_id",
   8195     (PARAM_VAL_RULES *)&Fap20v_source_chip_id_num_val[0],
   8196     (sizeof(Fap20v_source_chip_id_num_val) / sizeof(Fap20v_source_chip_id_num_val[0])) - 1,
   8197     HAS_DEFAULT | MAY_NOT_APPEAR, (PARAM_VAL *)&Fap20v_source_chip_id_default,
   8198     0,0,0,0,0,0,0,
   8199     "the entity this cell is originated in.\r\n",
   8200     "Examples:\r\n"
   8201       "  fap20v traffic send_sr_data_cell 0 initial_output_link 3 fe2_link 16 destination_entity_type fop body 0x88888877 \r\n"
   8202       "Results in sending a source routed data cell through device 0 link 3, and the data: 0x88888877 to a fop.\r\n",
   8203     "",
   8204     {BIT(7)},
   8205     (unsigned int)LAST_ORDINAL,
   8206       /*
   8207        * Pointer to a function to call after symbolic parameter
   8208        * has been accepted.
   8209        */
   8210     (VAL_PROC_PTR)NULL
   8211   },
   8212   {
   8213     PARAM_FAP20V_SEND_CELL_BODY_ID,
   8214     "body",
   8215     (PARAM_VAL_RULES *)&Fap20v_cell_body_num_vals[0],
   8216     (sizeof(Fap20v_cell_body_num_vals) / sizeof(Fap20v_cell_body_num_vals[0])) - 1,
   8217     HAS_NO_DEFAULT | MUST_APPEAR, (PARAM_VAL *)0,
   8218     0,0,0,0,0,0,0,
   8219     "the body of the cell.\r\n",
   8220     "Examples:\r\n"
   8221       "  fap20v traffic send_sr_data_cell 0 initial_output_link 3 fe2_link 16 destination_entity_type fop body 0x88888877 \r\n"
   8222       "Results in sending a source routed data cell through device 0 link 3, and the data: 0x88888877 to a fop.\r\n",
   8223     "",
   8224     {BIT(7)},
   8225     (unsigned int)LAST_ORDINAL,
   8226       /*
   8227        * Pointer to a function to call after symbolic parameter
   8228        * has been accepted.
   8229        */
   8230     (VAL_PROC_PTR)NULL
   8231   },
   8232   {
   8233     PARAM_FAP20V_RECV_CELL_ID,
   8234     "recv_sr_data_cell",
   8235     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   8236     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   8237     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8238     0,0,0,0,0,0,0,
   8239     "recieves a source routed data cell.\r\n",
   8240     "Examples:\r\n"
   8241     "  fap20v traffic recv_sr_data_cell 0x1 \r\n"
   8242     "Results in reading a source routed data cell from device 0x1 recieve cell buffer.\r\n",
   8243     "",
   8244     {BIT(8)},
   8245     2,
   8246       /*
   8247        * Pointer to a function to call after symbolic parameter
   8248        * has been accepted.
   8249        */
   8250     (VAL_PROC_PTR)NULL
   8251   },
   8252   {
   8253     PARAM_FAP20V_DEFRRED_RECV_CELL_ID,
   8254     "recv_sr_data_cell",
   8255     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   8256     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   8257     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8258     0,0,0,0,0,0,0,
   8259     "deferred receive (interrupt or polling) of a source routed data cell.\r\n",
   8260     "Examples:\r\n"
   8261     "  fap20v deferred recv_sr_data_cell 0x1 interrupt_mode \r\n"
   8262     "Results in deferred reading a source routed data cell from device 0x1 \n\r"
   8263     " recieve cell buffer, which is triggered by an interrupt.\r\n",
   8264     "",
   8265     {BIT(9) | BIT(10)},
   8266     2,
   8267       /*
   8268        * Pointer to a function to call after symbolic parameter
   8269        * has been accepted.
   8270        */
   8271     (VAL_PROC_PTR)NULL
   8272   },
   8273   {
   8274     PARAM_DEFERRED_FAP20V_RECV_CELL_POLL_MODE_ID,
   8275     "polling_mode",
   8276     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   8277     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   8278     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8279     0,0,0,0,0,0,0,
   8280     "Deferred call is triggered by simple polling of the device.\r\n",
   8281     "Examples:\r\n"
   8282     "  fap20v deferred recv_sr_data_cell 0x1 polling_mode polling_rate 50 \r\n"
   8283     "Results in deferred reading a source routed data cell from device 0x1 'low'"
   8284     " recieve cell buffer, which is triggered by a polling action every 50 ticks.\r\n",
   8285     "",
   8286     {BIT(9)},
   8287     4,
   8288       /*
   8289        * Pointer to a function to call after symbolic parameter
   8290        * has been accepted.
   8291        */
   8292     (VAL_PROC_PTR)NULL
   8293   },
   8294   {
   8295     PARAM_DEFERRED_FAP20V_INT_MODE_ID,
   8296     "interrupt_mode",
   8297     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   8298     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   8299     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8300     0,0,0,0,0,0,0,
   8301     "Deferred call is triggered by an interrupt of the device.\r\n",
   8302     "Examples:\r\n"
   8303     "  fap20v deferred recv_sr_data_cell 0x1 links range_0-31 interrupt_mode\r\n"
   8304     "Results in deferred reading a source routed data cell from device 0x1 'low'"
   8305     " recieve cell buffer, which is triggered by an interrupt.\r\n",
   8306     "",
   8307     {BIT(10)},
   8308     4,
   8309       /*
   8310        * Pointer to a function to call after symbolic parameter
   8311        * has been accepted.
   8312        */
   8313     (VAL_PROC_PTR)NULL
   8314   },
   8315   {
   8316     PARAM_FAP20V_SEND_FLOW_STATUS_CTRL_CELL_ID,
   8317     "send_flow_status_control_cell",
   8318     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   8319     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   8320     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8321     0,0,0,0,0,0,0,
   8322     "sends a flow status control cell.\r\n",
   8323     "Examples:\r\n"
   8324     "  fap20v traffic send_flow_status_control_cell 0 target_fap_id 2 flow_id 11444 queue_id 2345 flow_status on\r\n"
   8325     "Results in sending a 'ON' flow status control cell through device 0 to scheduler flow 11444 on fap 2.\r\n"
   8326     " (assuming that Flow 11444 is mapped to ingress queue 2345 on device 0)\r\n",
   8327     "",
   8328     {0,
   8329      0,
   8330      BIT(30)},
   8331     2,
   8332       /*
   8333        * Pointer to a function to call after symbolic parameter
   8334        * has been accepted.
   8335        */
   8336     (VAL_PROC_PTR)NULL
   8337   },
   8338   {
   8339     PARAM_FAP20V_TARGET_FAP_ID_ID,
   8340     "target_fap_id",
   8341     (PARAM_VAL_RULES *)&Fap20v_fap_id[0],
   8342     (sizeof(Fap20v_fap_id) / sizeof(Fap20v_fap_id[0])) - 1,
   8343     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8344     0,0,0,0,0,0,0,
   8345     "Target FAP identifier.",
   8346     "Examples:\r\n"
   8347     "  fap20v traffic send_flow_status_control_cell 0 target_fap_id 2 flow_id 11444 queue_id 2345 flow_status on\r\n"
   8348     "Results in sending a 'ON' flow status control cell through device 0 to scheduler flow 11444 on fap 2.\r\n"
   8349     " (assuming that Flow 11444 is mapped to ingress queue 2345 on device 0)\r\n",
   8350     "",
   8351     {0,
   8352      0,
   8353      BIT(30)},
   8354     LAST_ORDINAL,
   8355       /*
   8356        * Pointer to a function to call after symbolic parameter
   8357        * has been accepted.
   8358        */
   8359     (VAL_PROC_PTR)NULL
   8360   },
   8361   {
   8362     PARAM_FAP20V_FLOW_ID_ID,
   8363     "flow_id",
   8364     (PARAM_VAL_RULES *)&Fap20v_flow_id[0],
   8365     (sizeof(Fap20v_flow_id) / sizeof(Fap20v_flow_id[0])) - 1,
   8366     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8367     0,0,0,0,0,0,0,
   8368     "Flow, in the scheduler.",
   8369     "Examples:\r\n"
   8370     "  fap20v traffic send_flow_status_control_cell 0 target_fap_id 2 flow_id 11444 queue_id 2345 flow_status on\r\n"
   8371     "Results in sending a 'ON' flow status control cell through device 0 to scheduler flow 11444 on fap 2.\r\n"
   8372     " (assuming that Flow 11444 is mapped to ingress queue 2345 on device 0)\r\n",
   8373     "",
   8374     {0,
   8375      0,
   8376      BIT(30)},
   8377     LAST_ORDINAL,
   8378       /*
   8379        * Pointer to a function to call after symbolic parameter
   8380        * has been accepted.
   8381        */
   8382     (VAL_PROC_PTR)NULL
   8383   },
   8384   {
   8385     PARAM_FAP20V_QUEUE_ID_ID,
   8386     "queue_id",
   8387     (PARAM_VAL_RULES *)&Fap20v_queue_id[0],
   8388     (sizeof(Fap20v_queue_id) / sizeof(Fap20v_queue_id[0])) - 1,
   8389     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8390     0,0,0,0,0,0,0,
   8391     "Queue identifier.\r\n",
   8392     "Examples:\r\n"
   8393     "  fap20v traffic send_flow_status_control_cell 0 target_fap_id 2 flow_id 11444 queue_id 2345 flow_status on\r\n"
   8394     "Results in sending a 'ON' flow status control cell through device 0 to scheduler flow 11444 on fap 2.\r\n"
   8395     " (assuming that Flow 11444 is mapped to ingress queue 2345 on device 0)\r\n",
   8396     "",
   8397     {0,
   8398      0,
   8399      BIT(30)},
   8400     LAST_ORDINAL,
   8401       /*
   8402        * Pointer to a function to call after symbolic parameter
   8403        * has been accepted.
   8404        */
   8405     (VAL_PROC_PTR)NULL
   8406   },
   8407   {
   8408     PARAM_FAP20V_FLOW_STATUS_ID,
   8409     "flow_status",
   8410     (PARAM_VAL_RULES *)&Fap20v_flow_status_id[0],
   8411     (sizeof(Fap20v_flow_status_id) / sizeof(Fap20v_flow_status_id[0])) - 1,
   8412     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8413     0,0,0,0,0,0,0,
   8414     "Flow status.\r\n",
   8415     "Examples:\r\n"
   8416     "  fap20v traffic send_flow_status_control_cell 0 target_fap_id 2 flow_id 11444 queue_id 2345 flow_status on\r\n"
   8417     "Results in sending a 'ON' flow status control cell through device 0 to scheduler flow 11444 on fap 2.\r\n"
   8418     " (assuming that Flow 11444 is mapped to ingress queue 2345 on device 0)\r\n",
   8419     "",
   8420     {0,
   8421      0,
   8422      BIT(30)},
   8423     LAST_ORDINAL,
   8424       /*
   8425        * Pointer to a function to call after symbolic parameter
   8426        * has been accepted.
   8427        */
   8428     (VAL_PROC_PTR)NULL
   8429   },
   8430 
   8431   /* END fap20v_api_cell.h interface } */
   8432   /* fap20v_api_links.h interface { */
   8433   {
   8434     PARAM_FAP20V_LINKS_API_ID,
   8435     "links",
   8436     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   8437     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   8438     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8439     0,0,0,0,0,0,0,
   8440     "interface to fap20v driver links services.",
   8441     "Examples:\r\n"
   8442     "  fap20v cell_services send_sr_data_cell 0x1 initial_output_link 40 fe2_link 16 fe3_link 22 destination_entity_type fop \r\n"
   8443     "Results in sending a source routed data cell through device 0 link 3, and the data: 0x88888877 to a fop.\r\n",
   8444     "",
   8445     {BIT(11) | BIT(12) | BIT(14) | BIT(27),
   8446      0,
   8447      BIT(29) },
   8448     1,
   8449       /*
   8450        * Pointer to a function to call after symbolic parameter
   8451        * has been accepted.
   8452        */
   8453     (VAL_PROC_PTR)NULL
   8454   },
   8455   {
   8456     PARAM_FAP20V_RESET_SERDES_PARAMS_ID,
   8457     "reset_serdes",
   8458     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   8459     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   8460     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8461     0,0,0,0,0,0,0,
   8462     "Resets specified SerDes. In reset is 1 - out of reset is 0.\r\n",
   8463     "Examples:\r\n"
   8464     "  fap20v links reset_serdes 0x0 serdes_number 3 indication 1\r\n"
   8465     "Set serdes 2 and 3 to be in reset mode.\r\n"
   8466     "Note: The links are coupled, i.e., links 0-1, 2-3, , 22-23 are\n\r"
   8467     "powered up-down together.",
   8468     "",
   8469     {0,
   8470      0,
   8471      BIT(29)},
   8472     2,
   8473       /*
   8474        * Pointer to a function to call after symbolic parameter
   8475        * has been accepted.
   8476        */
   8477     (VAL_PROC_PTR)NULL
   8478   },
   8479   {
   8480     PARAM_FAP20V_RESET_SERDES_PLL_PARAMS_ID,
   8481     "reset_serdes_pll",
   8482     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   8483     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   8484     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8485     0,0,0,0,0,0,0,
   8486     "Resets specified SerDes PLL. In reset is 1 - out of reset is 0.\r\n",
   8487     "Examples:\r\n"
   8488     "  fap20v links reset_serdes_pll 0x0 serdes_number 3 indication 1\r\n"
   8489     "Set serdes 2 and 3 to be in reset mode.\r\n"
   8490     "Note: The links are coupled, i.e., links 0-1, 2-3, , 22-23 are\n\r"
   8491     "powered up-down together.",
   8492     "",
   8493     {0,
   8494      0,
   8495      BIT(29)},
   8496     2,
   8497       /*
   8498        * Pointer to a function to call after symbolic parameter
   8499        * has been accepted.
   8500        */
   8501     (VAL_PROC_PTR)NULL
   8502   },
   8503   {
   8504     PARAM_FAP20V_INDICATION_ID,
   8505     "indication",
   8506     (PARAM_VAL_RULES *)&Fap20v_zero_one_num_vals[0],
   8507     (sizeof(Fap20v_zero_one_num_vals) / sizeof(Fap20v_zero_one_num_vals[0])) - 1,
   8508     HAS_DEFAULT,(PARAM_VAL *)&Fap20v_zero_default,
   8509     0,0,0,0,0,0,0,
   8510     "Indication: 0/1 value.\r\n",
   8511     "Examples:\r\n"
   8512     "  fap20v links reset_serdes 0x0 serdes_number 3 indication 1\r\n"
   8513     "Set serdes 2 and 3 to be in reset mode.\r\n",
   8514     "",
   8515     {0,
   8516      0,
   8517      BIT(29)},
   8518    (unsigned int)LAST_ORDINAL,
   8519       /*
   8520        * Pointer to a function to call after symbolic parameter
   8521        * has been accepted.
   8522        */
   8523     (VAL_PROC_PTR)NULL
   8524   },
   8525   {
   8526     PARAM_FAP20V_GET_SERDES_PARAMS_ID,
   8527     "get_serdes_params",
   8528     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   8529     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   8530     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8531     0,0,0,0,0,0,0,
   8532     "gets the status report of all the serdeses.\r\n",
   8533     "Examples:\r\n"
   8534     "  fap20v links get_serdes_params 0x1 \r\n"
   8535     "Results in printing the ststus of all serdeses.\r\n",
   8536     "",
   8537     {BIT(11)},
   8538     2,
   8539       /*
   8540        * Pointer to a function to call after symbolic parameter
   8541        * has been accepted.
   8542        */
   8543     (VAL_PROC_PTR)NULL
   8544   },
   8545   {
   8546     PARAM_FAP20V_SET_SERDES_PD_PARAMS_ID,
   8547     "set_serdes_power_down",
   8548     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   8549     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   8550     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8551     0,0,0,0,0,0,0,
   8552     "sets the serdes power down/up.\r\n",
   8553     "Examples:\r\n"
   8554     "  fap20v links set_serdes_power_down 0x1 serdes_number 12\r\n"
   8555     "Results in setting link#12 to power down.\r\n",
   8556     "",
   8557     {BIT(27)},
   8558     2,
   8559       /*
   8560        * Pointer to a function to call after symbolic parameter
   8561        * has been accepted.
   8562        */
   8563     (VAL_PROC_PTR)NULL
   8564   },
   8565   {
   8566     PARAM_FAP20V_SET_SERDES_PARAMS_ID,
   8567     "set_serdes_params",
   8568     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   8569     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   8570     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8571     0,0,0,0,0,0,0,
   8572     "sets the params of a specific serdes (may reset the link).\r\n",
   8573     "Examples:\r\n"
   8574     "  fap20v links set_serdes_params 0x1 serdes_number 12 amplitude 3 common_mode 2\r\n"
   8575     "   main_control 0 rx_tx_power_down 0 tbg_power_down 0 pre_emphasis 3\r\n"
   8576     "Results in setting link#12 to the above values.\r\n",
   8577     "",
   8578     {BIT(12)},
   8579     2,
   8580       /*
   8581        * Pointer to a function to call after symbolic parameter
   8582        * has been accepted.
   8583        */
   8584     (VAL_PROC_PTR)NULL
   8585   },
   8586   {
   8587     PARAM_FAP20V_SET_SERDES_PARAMS_SERDES_NUMBER_ID,
   8588     "serdes_number",
   8589     (PARAM_VAL_RULES *)&Fap20v_serdes_number_num_vals[0],
   8590     (sizeof(Fap20v_serdes_number_num_vals) / sizeof(Fap20v_serdes_number_num_vals[0])) - 1,
   8591     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8592     0,0,0,0,0,0,0,
   8593     "sets the params of a specific serdes (may reset the link).\r\n",
   8594     "Examples:\r\n"
   8595     "  fap20v links set_serdes_params 0x1 serdes_number 12 amplitude 3 common_mode 2\r\n"
   8596     "   main_control 0 rx_tx_power_down 0 tbg_power_down 0 pre_emphasis 3\r\n"
   8597     "Results in setting link#12 to the above values.\r\n",
   8598     "",
   8599     {BIT(12) | BIT(23) | BIT(27),
   8600      0,
   8601      BIT(29)},
   8602     3,
   8603       /*
   8604        * Pointer to a function to call after symbolic parameter
   8605        * has been accepted.
   8606        */
   8607     (VAL_PROC_PTR)NULL
   8608   },
   8609   {
   8610     PARAM_FAP20V_SERDES_POWER_UP_ID,
   8611     "power_up",
   8612     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   8613     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   8614     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
   8615     0,0,0,0,0,0,0,
   8616     "Power-up indication.\r\n",
   8617     "Examples:\r\n"
   8618     "  fap20v links set_serdes_power_down 0x1 serdes_number 12 power_up\r\n"
   8619     "Results in setting link#12 to power up.\r\n",
   8620     "",
   8621     {BIT(27)},
   8622     4,
   8623       /*
   8624        * Pointer to a function to call after symbolic parameter
   8625        * has been accepted.
   8626        */
   8627     (VAL_PROC_PTR)NULL
   8628   },
   8629   {
   8630     PARAM_FAP20V_SET_SERDES_DRIVER_TX_ID,
   8631     "driver_tx",
   8632     (PARAM_VAL_RULES *)&Fap20v_serdes_driver_tx_num_vals[0],
   8633     (sizeof(Fap20v_serdes_driver_tx_num_vals) / sizeof(Fap20v_serdes_driver_tx_num_vals[0])) - 1,
   8634     HAS_DEFAULT,(PARAM_VAL *)&Fap20v_serdes_driver_tx_default,
   8635     0,0,0,0,0,0,0,
   8636     "Driver TX value of specific SerDes.\r\n",
   8637     "Examples:\r\n"
   8638     "  fap20v links set_serdes_params 0x1 serdes_number 12 amplitude 3 common_mode 2\r\n"
   8639     "   main_control 0 rx_tx_power_down 0 tbg_power_down 0 pre_emphasis 3\r\n"
   8640     "Results in setting link#12 to the above values.\r\n",
   8641     "",
   8642     {BIT(12)},
   8643    (unsigned int)LAST_ORDINAL,
   8644       /*
   8645        * Pointer to a function to call after symbolic parameter
   8646        * has been accepted.
   8647        */
   8648     (VAL_PROC_PTR)NULL
   8649   },
   8650   {
   8651     PARAM_FAP20V_SET_SERDES_DRIVER_EQ_MODE_ID,
   8652     "driver_eq",
   8653     (PARAM_VAL_RULES *)&Fap20v_serdes_driver_eq_num_vals[0],
   8654     (sizeof(Fap20v_serdes_driver_eq_num_vals) / sizeof(Fap20v_serdes_driver_eq_num_vals[0])) - 1,
   8655     HAS_DEFAULT,(PARAM_VAL *)&Fap20v_serdes_driver_eq_default,
   8656     0,0,0,0,0,0,0,
   8657     "Driver EQ value of specific SerDes.\r\n",
   8658     "Examples:\r\n"
   8659     "  fap20v links set_serdes_params 0x1 serdes_number 12 amplitude 3 common_mode 2\r\n"
   8660     "   main_control 0 rx_tx_power_down 0 tbg_power_down 0 pre_emphasis 3\r\n"
   8661     "Results in setting link#12 to the above values.\r\n",
   8662     "",
   8663     {BIT(12)},
   8664    (unsigned int)LAST_ORDINAL,
   8665       /*
   8666        * Pointer to a function to call after symbolic parameter
   8667        * has been accepted.
   8668        */
   8669     (VAL_PROC_PTR)NULL
   8670   },
   8671   {
   8672     PARAM_FAP20V_SET_SERDES_HI_DRV_ID,
   8673     "hi_drv",
   8674     (PARAM_VAL_RULES *)&Fap20v_zero_one_num_vals[0],
   8675     (sizeof(Fap20v_zero_one_num_vals) / sizeof(Fap20v_zero_one_num_vals[0])) - 1,
   8676     HAS_DEFAULT,(PARAM_VAL *)&Fap20v_zero_default,
   8677     0,0,0,0,0,0,0,
   8678     "Hi-Drv on link.\r\n",
   8679     "Examples:\r\n"
   8680     "  fap20v links set_serdes_params 0x1 serdes_number 12 amplitude 3 common_mode 2\r\n"
   8681     "   main_control 0 rx_tx_power_down 0 tbg_power_down 0 pre_emphasis 3\r\n"
   8682     "Results in setting link#12 to the above values.\r\n",
   8683     "",
   8684     {BIT(12)},
   8685    (unsigned int)LAST_ORDINAL,
   8686       /*
   8687        * Pointer to a function to call after symbolic parameter
   8688        * has been accepted.
   8689        */
   8690     (VAL_PROC_PTR)NULL
   8691   },
   8692   {
   8693     PARAM_FAP20V_SET_SERDES_LOW_DRV_ID,
   8694     "low_drv",
   8695     (PARAM_VAL_RULES *)&Fap20v_zero_one_num_vals[0],
   8696     (sizeof(Fap20v_zero_one_num_vals) / sizeof(Fap20v_zero_one_num_vals[0])) - 1,
   8697     HAS_DEFAULT,(PARAM_VAL *)&Fap20v_zero_default,
   8698     0,0,0,0,0,0,0,
   8699     "Low-Drv on link.\r\n",
   8700     "Examples:\r\n"
   8701     "  fap20v links set_serdes_params 0x1 serdes_number 12 amplitude 3 common_mode 2\r\n"
   8702     "   main_control 0 rx_tx_power_down 0 tbg_power_down 0 pre_emphasis 3\r\n"
   8703     "Results in setting link#12 to the above values.\r\n",
   8704     "",
   8705     {BIT(12)},
   8706    (unsigned int)LAST_ORDINAL,
   8707       /*
   8708        * Pointer to a function to call after symbolic parameter
   8709        * has been accepted.
   8710        */
   8711     (VAL_PROC_PTR)NULL
   8712   },
   8713   {
   8714     PARAM_FAP20V_SET_SERDES_LOCAL_LOOPBACK_ID,
   8715     "local_loopback",
   8716     (PARAM_VAL_RULES *)&Fap20v_zero_one_num_vals[0],
   8717     (sizeof(Fap20v_zero_one_num_vals) / sizeof(Fap20v_zero_one_num_vals[0])) - 1,
   8718     HAS_DEFAULT,(PARAM_VAL *)&Fap20v_zero_default,
   8719     0,0,0,0,0,0,0,
   8720     "Low-Drv on link.\r\n",
   8721     "Examples:\r\n"
   8722     "  fap20v links set_serdes_params 0x1 serdes_number 12 amplitude 3 common_mode 2\r\n"
   8723     "   main_control 0 rx_tx_power_down 0 tbg_power_down 0 pre_emphasis 3\r\n"
   8724     "Results in setting link#12 to the above values.\r\n",
   8725     "",
   8726     {BIT(12)},
   8727    (unsigned int)LAST_ORDINAL,
   8728       /*
   8729        * Pointer to a function to call after symbolic parameter
   8730        * has been accepted.
   8731        */
   8732     (VAL_PROC_PTR)NULL
   8733   },
   8734   {
   8735     PARAM_FAP20V_SET_SERDES_SINGLE_TERM_ID,
   8736     "single_term",
   8737     (PARAM_VAL_RULES *)&Fap20v_zero_one_num_vals[0],
   8738     (sizeof(Fap20v_zero_one_num_vals) / sizeof(Fap20v_zero_one_num_vals[0])) - 1,
   8739     HAS_DEFAULT,(PARAM_VAL *)&Fap20v_zero_default,
   8740     0,0,0,0,0,0,0,
   8741     "Single Term on link.\r\n",
   8742     "Examples:\r\n"
   8743     "  fap20v links set_serdes_params 0x1 serdes_number 12 amplitude 3 common_mode 2\r\n"
   8744     "   main_control 0 rx_tx_power_down 0 tbg_power_down 0 pre_emphasis 3\r\n"
   8745     "Results in setting link#12 to the above values.\r\n",
   8746     "",
   8747     {BIT(12)},
   8748    (unsigned int)LAST_ORDINAL,
   8749       /*
   8750        * Pointer to a function to call after symbolic parameter
   8751        * has been accepted.
   8752        */
   8753     (VAL_PROC_PTR)NULL
   8754   },
   8755   {
   8756     PARAM_FAP20V_GET_CONNECTIVITY_MAP_ID,
   8757     "get_connectivity_map",
   8758     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   8759     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   8760     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8761     0,0,0,0,0,0,0,
   8762     "present connectivity map the the chip sees\r\n",
   8763     "Examples:\r\n"
   8764     "  fap20v links get_connectivity_map 0x1 \r\n"
   8765     "Results in printing the connectivity map this chip sees.\r\n",
   8766     "",
   8767     {BIT(11)},
   8768     2,
   8769       /*
   8770        * Pointer to a function to call after symbolic parameter
   8771        * has been accepted.
   8772        */
   8773     (VAL_PROC_PTR)NULL
   8774   },
   8775   {
   8776     PARAM_DEFERRED_FAP20V_INT_MODE_ID,
   8777     "get_connectivity_map",
   8778     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   8779     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   8780     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8781     0,0,0,0,0,0,0,
   8782     "gets the status report of all the serdeses.\r\n",
   8783     "Examples:\r\n"
   8784     "  fap20v deferred get_connectivity_map 0x1 \r\n"
   8785     "Results in printing the connectivity map this chip sees, and every time it changes.\r\n",
   8786     "",
   8787     {BIT(13)},
   8788     2,
   8789       /*
   8790        * Pointer to a function to call after symbolic parameter
   8791        * has been accepted.
   8792        */
   8793     (VAL_PROC_PTR)NULL
   8794   },
   8795   {
   8796     PARAM_FAP20V_GET_LINKS_STATUS_ID,
   8797     "get_links_status",
   8798     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   8799     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   8800     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8801     0,0,0,0,0,0,0,
   8802     "gets status report of all links.\r\n",
   8803     "Examples:\r\n"
   8804     "  fap20v links get_links_status 0x1 list_of_links 0x0 0x1\r\n"
   8805     "Results in printing the ststus of link #0.\r\n",
   8806     "",
   8807     {BIT(14)},
   8808     2,
   8809       /*
   8810        * Pointer to a function to call after symbolic parameter
   8811        * has been accepted.
   8812        */
   8813     (VAL_PROC_PTR)NULL
   8814   },
   8815   {
   8816     PARAM_FAP20V_LIST_OF_LINKS_ID,
   8817     "list_of_links",
   8818     (PARAM_VAL_RULES *)&Fap20v_list_of_links_num_vals[0],
   8819     (sizeof(Fap20v_list_of_links_num_vals) / sizeof(Fap20v_list_of_links_num_vals[0])) - 1,
   8820     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
   8821     0,0,0,0,0,0,0,
   8822     "gets status report of all links.\r\n",
   8823     "Examples:\r\n"
   8824     "  fap20v links get_links_status 0x1 list_of_links 0x0 0x1\r\n"
   8825     "Results in printing the ststus of link #1.\r\n",
   8826     "",
   8827     {BIT(14) | BIT(15) | BIT(19)},
   8828     8,/* just so it would be after polling rate (==6) */
   8829       /*
   8830        * Pointer to a function to call after symbolic parameter
   8831        * has been accepted.
   8832        */
   8833     (VAL_PROC_PTR)NULL
   8834   },
   8835   {
   8836     PARAM_FAP20V_DEFERRED_GET_LINKS_STATUS_ID,
   8837     "get_links_status",
   8838     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   8839     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   8840     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8841     0,0,0,0,0,0,0,
   8842     "gets status report of all links.\r\n",
   8843     "Examples:\r\n"
   8844     "  fap20v deferred get_links_status 0x1 list_of_links 0x0 0x1 interrupt_mode \r\n"
   8845     "Results in printing the ststus of link #0 when changed.\r\n",
   8846     "",
   8847     {BIT(15)},
   8848     2,
   8849       /*
   8850        * Pointer to a function to call after symbolic parameter
   8851        * has been accepted.
   8852        */
   8853     (VAL_PROC_PTR)NULL
   8854   },
   8855   /* END fap20v_api_links.h interface } */
   8856   /* fap20v_api_routing.h interface { */
   8857   {
   8858     PARAM_FAP20V_ROUTING_API_ID,
   8859     "routing",
   8860     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   8861     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   8862     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8863     0,0,0,0,0,0,0,
   8864     "interface to fap20v driver routing services.",
   8865     "Examples:\r\n"
   8866     "  fap20v routing get_unicast_table 0x1 starting_row 125 nof_rows 6\r\n"
   8867     "Results in printing the distribution unicast table of\n\r"
   8868     "  device #1 rows (target FAPs) 125-130.\r\n",
   8869     "",
   8870     {BIT(16) | BIT(17) | BIT (19) | BIT (20)},
   8871     1,
   8872       /*
   8873        * Pointer to a function to call after symbolic parameter
   8874        * has been accepted.
   8875        */
   8876     (VAL_PROC_PTR)NULL
   8877   },
   8878   {
   8879     PARAM_FAP20V_GET_UNICAST_TABLE_ID,
   8880     "get_unicast_table",
   8881     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   8882     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   8883     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8884     0,0,0,0,0,0,0,
   8885     "gets (max of 100 entires of) the unicast distribution table of the device.\r\n",
   8886     "Examples:\r\n"
   8887     "  fap20v routing get_unicast_table 0 starting_row 0 nof_rows 2\r\n"
   8888     "Results in printing the distribution unicast table of device #0 rows (target FAPs) 0-1.\r\n",
   8889     "",
   8890     {BIT(17)},
   8891     2,
   8892       /*
   8893        * Pointer to a function to call after symbolic parameter
   8894        * has been accepted.
   8895        */
   8896     (VAL_PROC_PTR)NULL
   8897   },
   8898   {
   8899     PARAM_FAP20V_DEFERRED_GET_UNICAST_TABLE_ID,
   8900     "get_unicast_table",
   8901     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   8902     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   8903     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8904     0,0,0,0,0,0,0,
   8905     "peridically gets (max of 100 entires of) the unicast distribution table of the device.\r\n",
   8906     "Examples:\r\n"
   8907     "  fap20v deferred get_unicast_table 0x1 starting_row 125 ... \r\n"
   8908     "Results in peridically printing the distribution table of device #1 starting at row 125.\r\n",
   8909     "",
   8910     {BIT(18)},
   8911     2,
   8912       /*
   8913        * Pointer to a function to call after symbolic parameter
   8914        * has been accepted.
   8915        */
   8916     (VAL_PROC_PTR)NULL
   8917   },
   8918   {
   8919     PARAM_FAP20V_STARTING_ROW_ID,
   8920     "starting_row",
   8921     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   8922     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   8923     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8924     0,0,0,0,0,0,0,
   8925     "gets the unicast distribution table of the device.\r\n",
   8926     "Examples:\r\n"
   8927     "  fap20v deferred get_unicast_table 0x1 ... \r\n"
   8928     "Results in peridically printing the distribution table of device #1.\r\n",
   8929     "",
   8930     {BIT(17) | BIT(18) | BIT(19)},
   8931     3,
   8932       /*
   8933        * Pointer to a function to call after symbolic parameter
   8934        * has been accepted.
   8935        */
   8936     (VAL_PROC_PTR)NULL
   8937   },
   8938   {
   8939     PARAM_FAP20V_NOF_ROWS_ID,
   8940     "nof_rows",
   8941     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   8942     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   8943     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8944     0,0,0,0,0,0,0,
   8945     "gets the unicast distribution table of the device.\r\n",
   8946     "Examples:\r\n"
   8947     "  fap20v deferred get_unicast_table 0x1 ... \r\n"
   8948     "Results in peridically printing the distribution table of device #1.\r\n",
   8949     "",
   8950     {BIT(17) | BIT(18) | BIT(19)},
   8951     4,
   8952       /*
   8953        * Pointer to a function to call after symbolic parameter
   8954        * has been accepted.
   8955        */
   8956     (VAL_PROC_PTR)NULL
   8957   },
   8958   /* END fap20v_api_routing.h interface } */
   8959   /* fap20v_api_diagnostics.h interface { */
   8960   {
   8961     PARAM_FAP20V_DIAGNOSTICS_API_ID,
   8962     "diagnostics",
   8963     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   8964     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   8965     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8966     0,0,0,0,0,0,0,
   8967     "interface to fap20v driver diagnostics services.",
   8968     "Examples:\r\n"
   8969     "  fap20v diagnostics get_loopback_type 0x1\r\n"
   8970     "Results in printing loopback mode device #1 is in.\r\n",
   8971     "",
   8972     {BIT(21) | BIT(22) | BIT(23),
   8973      0,
   8974      BIT(9),
   8975      0},
   8976     1,
   8977       /*
   8978        * Pointer to a function to call after symbolic parameter
   8979        * has been accepted.
   8980        */
   8981     (VAL_PROC_PTR)NULL
   8982   },
   8983   {
   8984     PARAM_FAP20V_QDP_INIT_SEQ_ID,
   8985     "qdp_init_seq",
   8986     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   8987     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   8988     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8989     0,0,0,0,0,0,0,
   8990     "Set QDP init sequence.\r\n",
   8991     "Examples:\r\n"
   8992     "  fap20v diagnostics qdp_init_seq 0x0 wait_time_in_nano_sec 1000000\r\n"
   8993     "Sets QDP init sequnce at device #0, wait for 1 mili-sec (1000000 nano).\r\n",
   8994     "",
   8995     {0,
   8996      0,
   8997      BIT(9),
   8998      0},
   8999     2,
   9000       /*
   9001        * Pointer to a function to call after symbolic parameter
   9002        * has been accepted.
   9003        */
   9004     (VAL_PROC_PTR)NULL
   9005   },
   9006   {
   9007     PARAM_FAP20V_TIME_IN_NANO_SEC_ID,
   9008     "wait_time_in_nano_sec",
   9009     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   9010     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   9011     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9012     0,0,0,0,0,0,0,
   9013     "Time in nano to wait before setting the QDO-init trigger.\r\n",
   9014     "Examples:\r\n"
   9015     "  fap20v diagnostics qdp_init_seq 0x0 wait_time_in_nano_sec 1000000\r\n"
   9016     "Sets QDP init sequnce at device #0, wait for 1 mili-sec (1000000 nano).\r\n",
   9017     "",
   9018     {0,
   9019      0,
   9020      BIT(9),
   9021      0},
   9022     LAST_ORDINAL,
   9023       /*
   9024        * Pointer to a function to call after symbolic parameter
   9025        * has been accepted.
   9026        */
   9027     (VAL_PROC_PTR)NULL
   9028   },
   9029   {
   9030     PARAM_FAP20V_LOOPBACK_TYPE_ID,
   9031     "local_loop",
   9032     (PARAM_VAL_RULES *)&Fap20v_local_loopback_on_vals[0],
   9033     (sizeof(Fap20v_local_loopback_on_vals) / sizeof(Fap20v_local_loopback_on_vals[0])) - 1,
   9034     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9035     0,0,0,0,0,0,0,
   9036     "sets the loopback mode the device is in.\r\n",
   9037     "Examples:\r\n"
   9038     "  fap20v diagnostics set_loopback_type 0x1 local_loop on\r\n"
   9039     "Results in setting the loopback mode of device #1 to local loopback.\r\n",
   9040     "",
   9041     {BIT(22)},
   9042     3,
   9043       /*
   9044        * Pointer to a function to call after symbolic parameter
   9045        * has been accepted.
   9046        */
   9047     (VAL_PROC_PTR)NULL
   9048   },
   9049   {
   9050     PARAM_FAP20V_GET_PRBS_MODE_ID,
   9051     "get_prbs_mode",
   9052     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   9053     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   9054     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9055     0,0,0,0,0,0,0,
   9056     "gets the prbs mode the device is in.\r\n",
   9057     "Examples:\r\n"
   9058     "  fap20v diagnostics get_prbs_mode 0x1\r\n"
   9059     "Results in printing the prbs mode of device #1.\r\n",
   9060     "",
   9061     {BIT(21)},
   9062     2,
   9063       /*
   9064        * Pointer to a function to call after symbolic parameter
   9065        * has been accepted.
   9066        */
   9067     (VAL_PROC_PTR)NULL
   9068   },
   9069   {
   9070     PARAM_FAP20V_SET_PRBS_MODE_ID,
   9071     "set_prbs_mode",
   9072     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   9073     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   9074     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9075     0,0,0,0,0,0,0,
   9076     "sets the prbs mode of the device's MAC module.\n\r",
   9077     "Examples:\r\n"
   9078     "  fap20v diagnostics set_prbs_mode 0 serdes_number 0 checker_active on generator_active on loopback on\r\n"
   9079     "Results in setting the prbs params of the MAC.\r\n",
   9080     "",
   9081     {BIT(23)},
   9082     2,
   9083       /*
   9084        * Pointer to a function to call after symbolic parameter
   9085        * has been accepted.
   9086        */
   9087     (VAL_PROC_PTR)NULL
   9088   },
   9089   {
   9090     PARAM_FAP20V_PRBS_CHECKER_LINK_ID,
   9091     "checker_active",
   9092     (PARAM_VAL_RULES *)&Fap20v_on_off_vals[0],
   9093     (sizeof(Fap20v_on_off_vals) / sizeof(Fap20v_on_off_vals[0])) - 1,
   9094     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)NULL,
   9095     0,0,0,0,0,0,0,
   9096     "Make the checker (rx) active.\r\n",
   9097     "Examples:\r\n"
   9098     "  fap20v diagnostics set_prbs_mode 0 serdes_number 0 checker_active on generator_active on loopback on\r\n"
   9099     "Results in setting the prbs params of MAC.\r\n",
   9100     "",
   9101     {BIT(23)},
   9102     (unsigned int)LAST_ORDINAL,
   9103       /*
   9104        * Pointer to a function to call after symbolic parameter
   9105        * has been accepted.
   9106        */
   9107     (VAL_PROC_PTR)NULL
   9108   },
   9109   {
   9110     PARAM_FAP20V_PRBS_GENERATOR_LINK_ID,
   9111     "generator_active",
   9112     (PARAM_VAL_RULES *)&Fap20v_on_off_vals[0],
   9113     (sizeof(Fap20v_on_off_vals) / sizeof(Fap20v_on_off_vals[0])) - 1,
   9114     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)NULL,
   9115     0,0,0,0,0,0,0,
   9116     "Make the generator (tx) active.\r\n",
   9117     "Examples:\r\n"
   9118     "  fap20v diagnostics set_prbs_mode 0 serdes_number 0 checker_active on generator_active on loopback on\r\n"
   9119     "Results in setting the prbs params of MAC.\r\n",
   9120     "",
   9121     {BIT(23)},
   9122     (unsigned int)LAST_ORDINAL,
   9123       /*
   9124        * Pointer to a function to call after symbolic parameter
   9125        * has been accepted.
   9126        */
   9127     (VAL_PROC_PTR)NULL
   9128   },
   9129   {
   9130     PARAM_FAP20V_PRBS_LOOPBACK_ID,
   9131     "loopback",
   9132     (PARAM_VAL_RULES *)&Fap20v_on_off_vals[0],
   9133     (sizeof(Fap20v_on_off_vals) / sizeof(Fap20v_on_off_vals[0])) - 1,
   9134     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)NULL,
   9135     0,0,0,0,0,0,0,
   9136     "Make loopback in the MAC From FAP core to the MACs and back to the core.\r\n",
   9137     "Examples:\r\n"
   9138     "  fap20v diagnostics set_prbs_mode 0 serdes_number 0 checker_active on generator_active on loopback on\r\n"
   9139     "Results in setting the prbs params of MAC.\r\n",
   9140     "",
   9141     {BIT(23)},
   9142     (unsigned int)LAST_ORDINAL,
   9143       /*
   9144        * Pointer to a function to call after symbolic parameter
   9145        * has been accepted.
   9146        */
   9147     (VAL_PROC_PTR)NULL
   9148   },
   9149   {
   9150     PARAM_FAP20V_START_PRBS_TEST_ID,
   9151     "start_prbs_test",
   9152     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   9153     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   9154     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9155     0,0,0,0,0,0,0,
   9156     "starts background collection of ber counters.\r\n",
   9157     "Examples:\r\n"
   9158     "  fap20v diagnostics start_prbs_test 0x1\r\n"
   9159     "Results in the background collection of ber counters of device 1.\r\n",
   9160     "",
   9161     {BIT(21)},
   9162     2,
   9163       /*
   9164        * Pointer to a function to call after symbolic parameter
   9165        * has been accepted.
   9166        */
   9167     (VAL_PROC_PTR)NULL
   9168   },
   9169   {
   9170     PARAM_FAP20V_STOP_PRBS_TEST_ID,
   9171     "stop_prbs_test",
   9172     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   9173     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   9174     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9175     0,0,0,0,0,0,0,
   9176     "stops background collection of ber counters.\r\n",
   9177     "Examples:\r\n"
   9178     "  fap20v diagnostics stop_prbs_test 0x1\r\n"
   9179     "Results in stopping the background collection of ber counters of device 1.\r\n",
   9180     "",
   9181     {BIT(21)},
   9182     2,
   9183       /*
   9184        * Pointer to a function to call after symbolic parameter
   9185        * has been accepted.
   9186        */
   9187     (VAL_PROC_PTR)NULL
   9188   },
   9189   {
   9190     PARAM_FAP20V_GET_BER_COUNTERS_ID,
   9191     "get_ber_counters",
   9192     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   9193     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   9194     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9195     0,0,0,0,0,0,0,
   9196     "gets counter report of prbs units.\r\n",
   9197     "Examples:\r\n"
   9198     "  fap20v diagnostics get_ber_counters 0x1\r\n"
   9199     "Results in printing the counter report of the 4 prbs units of device 1.\r\n",
   9200     "",
   9201     {BIT(21)},
   9202     2,
   9203       /*
   9204        * Pointer to a function to call after symbolic parameter
   9205        * has been accepted.
   9206        */
   9207     (VAL_PROC_PTR)NULL
   9208   },
   9209   {
   9210     PARAM_FAP20V_DIAGNOSTICS_DUMP_REGS_ID,
   9211     "dump_regs",
   9212     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   9213     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   9214     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9215     0,0,0,0,0,0,0,
   9216     "Print all of the registers of the device.\r\n",
   9217     "Examples:\r\n"
   9218     "  fap20v diagnostics dump_regs 0x0\r\n"
   9219     "Results in printing all of the registers of the device device 0.\r\n",
   9220     "",
   9221     {BIT(21)},
   9222     2,
   9223       /*
   9224        * Pointer to a function to call after symbolic parameter
   9225        * has been accepted.
   9226        */
   9227     (VAL_PROC_PTR)NULL
   9228   },
   9229   {
   9230     PARAM_FAP20V_DEFERRED_GET_BER_COUNTERS_ID,
   9231     "get_ber_counters",
   9232     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   9233     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   9234     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9235     0,0,0,0,0,0,0,
   9236     "gets counter report of prbs units.\r\n",
   9237     "Examples:\r\n"
   9238     "  fap20v deferred get_ber_counters 0x1 polling_rate 60 \r\n"
   9239     "Results in printing the counter report of the 4 prbs units of device 1 every second\r\n",
   9240     "",
   9241     {BIT(24)},
   9242     2,
   9243       /*
   9244        * Pointer to a function to call after symbolic parameter
   9245        * has been accepted.
   9246        */
   9247     (VAL_PROC_PTR)NULL
   9248   },
   9249   /* END fap20v_api_diagnostics.h interface } */
   9250   /* fap20v_api_statistics.h interface { */
   9251   {
   9252     PARAM_FAP20V_STATISTICS_API_ID,
   9253     "statistics",
   9254     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   9255     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   9256     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9257     0,0,0,0,0,0,0,
   9258     "interface to fap20v driver statistics services.",
   9259     "Examples:\r\n"
   9260     "  fap20v statistics_services get_mac_counter_type 0x1\r\n"
   9261     "Results in printing mac rx & tx counter type device #1 is in.\r\n",
   9262     "",
   9263     {BIT(25),
   9264      0,
   9265      BIT(26)},
   9266     1,
   9267       /*
   9268        * Pointer to a function to call after symbolic parameter
   9269        * has been accepted.
   9270        */
   9271     (VAL_PROC_PTR)NULL
   9272   },
   9273   {
   9274     PARAM_FAP20V_ALL_COUNTERS_ID,
   9275     "get_all_counters",
   9276     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   9277     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   9278     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9279     0,0,0,0,0,0,0,
   9280     "Gets set of counters that is defined in the statistics section.\n\r"
   9281     "  Refer to other command to see specific counter meanning.\r\n",
   9282     "Examples:\r\n"
   9283     "  fap20v statistics get_all_counters 0x0\r\n"
   9284     "Results in printing all statistics counters of device 0.\r\n",
   9285     "",
   9286     {BIT(25)},
   9287     2,
   9288       /*
   9289        * Pointer to a function to call after symbolic parameter
   9290        * has been accepted.
   9291        */
   9292     (VAL_PROC_PTR)NULL
   9293   },
   9294   {
   9295     PARAM_FAP20V_LONG_FORMAT_ID,
   9296     "long_display_format",
   9297     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   9298     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   9299     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
   9300     0,0,0,0,0,0,0,
   9301     "Makes the print in long format.\r\n",
   9302     "Examples:\r\n"
   9303     "  fap20v statistics get_all_counters 0x0 long_display_format\r\n"
   9304     "Results in printing all statistics counters of device 0,\r\n"
   9305     "  and print in long format.\r\n",
   9306     "",
   9307     {BIT(25),
   9308      0,
   9309      BIT(26)},
   9310     LAST_ORDINAL,
   9311       /*
   9312        * Pointer to a function to call after symbolic parameter
   9313        * has been accepted.
   9314        */
   9315     (VAL_PROC_PTR)NULL
   9316   },
   9317   {
   9318     PARAM_FAP20V_ONE_COUNTER_ID,
   9319     "get_cnt",
   9320     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   9321     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   9322     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9323     0,0,0,0,0,0,0,
   9324     "Get one counter result.\r\n",
   9325     "Examples:\r\n"
   9326     "  fap20v statistics get_cnt 0x0 cnt_type 1\r\n"
   9327     "Results in printing the device 0 counter 1.\r\n",
   9328     "",
   9329     {0,
   9330      0,
   9331      BIT(26)},
   9332     2,
   9333       /*
   9334        * Pointer to a function to call after symbolic parameter
   9335        * has been accepted.
   9336        */
   9337     (VAL_PROC_PTR)NULL
   9338   },
   9339   {
   9340     PARAM_FAP20V_COUNTER_TYPE_ID,
   9341     "type",
   9342     (PARAM_VAL_RULES *)&Fap20v_counter_type[0],
   9343     (sizeof(Fap20v_counter_type) / sizeof(Fap20v_counter_type[0])) - 1,
   9344     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9345     0,0,0,0,0,0,0,
   9346     "Type of counter to get.\r\n",
   9347     "Examples:\r\n"
   9348     "  fap20v statistics get_cnt 0x0 cnt_type tdm_a_pkt\r\n"
   9349     "Results in printing the device 0 counter tdm_a_pkt.\r\n",
   9350     "",
   9351     {BIT(24),
   9352      0,
   9353      BIT(26)},
   9354     LAST_ORDINAL,
   9355       /*
   9356        * Pointer to a function to call after symbolic parameter
   9357        * has been accepted.
   9358        */
   9359     (VAL_PROC_PTR)NULL
   9360   },
   9361   {
   9362     PARAM_FAP20V_DEFERRED_ONE_COUNTER_ID,
   9363     "get_cnt",
   9364     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   9365     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   9366     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9367     0,0,0,0,0,0,0,
   9368     "gets counter report from the FIP about the number of packets\n\r"
   9369     "  were tail-discarded from memory due to the 'drop from front' scheme.\r\n",
   9370     "Examples:\r\n"
   9371     "  fap20v statistics get_tail_discard_pkt_cnt 0x1\r\n"
   9372     "Results in printing the 'Tail-Discarded Packet Counter' of device 1.\r\n",
   9373     "",
   9374     {BIT(24)},
   9375     2,
   9376       /*
   9377        * Pointer to a function to call after symbolic parameter
   9378        * has been accepted.
   9379        */
   9380     (VAL_PROC_PTR)NULL
   9381   },
   9382   /* } END fap20v_api_statistics.h interface */
   9383   /*
   9384    * Test API {
   9385    */
   9386   {
   9387     PARAM_FAP20V_TEST_API_ID,
   9388     "tests",
   9389     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   9390     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   9391     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9392     0,0,0,0,0,0,0,
   9393     "interface to fap20v driver tests services.\n\r"
   9394     "  The system need to be configured in a specific configuration.\n\r"
   9395     "  *NOTE*: All tests may change your FAP configuration - without\n\r"
   9396     "          Restore it to your original values.",
   9397     "Examples:\r\n"
   9398     "  fap20v tests cells\r\n"
   9399     "Results in testing fap20v driver cell module.\r\n"
   9400     "In all the tests the system need to be configured as follows:\n\r"
   9401     "  1. The fabric is considered working (FE/loopbacks)\n\r"
   9402     "  2. The PP is considered UP and initialized with PP-Id is 0\n\r"
   9403     "  3. The is considered after its reset sequence (all HW is functional)\n\r"
   9404     "     FAP-Id is 0.\n\r"
   9405     "  4. No traffic should be injected from out side ports.\n\r"
   9406     "     Unless otherwise is stated.\n\r"
   9407     "  5. One ethernet cable should connect from port 4 to 5.\n\r"
   9408     "     Port 1 and 2 should not be connected.\n\r"
   9409     "  6. PP MAC-table: All port on VLAN 1.\n\r"
   9410     "         MAC address 000000AAAA05 - port 5\n\r"
   9411     "         MAC address 000000AAAA04 - port 4\n\r",
   9412     "",
   9413     {BIT(31),
   9414      BIT(30) | BIT(31), /**/
   9415      BIT(16) | BIT(17) | BIT(18), /*16: ,17, 18:app*/
   9416      BIT(3) | BIT(4) | BIT(5)
   9417 
   9418     },
   9419     1,
   9420       /*
   9421        * Pointer to a function to call after symbolic parameter
   9422        * has been accepted.
   9423        */
   9424     (VAL_PROC_PTR)NULL
   9425   },
   9426   {
   9427     PARAM_FAP20V_TEST_APP_ID,
   9428     "app",
   9429     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   9430     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   9431     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9432     0,0,0,0,0,0,0,
   9433     "activates fap20v test application.\r\n",
   9434     "Examples:\r\n"
   9435     "  fap20v tests app snake_1024\r\n"
   9436     "Results in activating 'snake_1024' application.\r\n",
   9437     "",
   9438     {0,
   9439      0,
   9440      BIT(17) | BIT(18)
   9441     },
   9442     2,
   9443       /*
   9444        * Pointer to a function to call after symbolic parameter
   9445        * has been accepted.
   9446        */
   9447     (VAL_PROC_PTR)NULL
   9448   },
   9449   {
   9450     PARAM_FAP20V_TEST_MEM_READ_DELTA_VALUE_STOP_ID,
   9451     "read_addr_stop",
   9452     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   9453     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   9454     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9455     0,0,0,0,0,0,0,
   9456     "Stops the running test that checks that a certain field does not pass a threshold on several faps .\r\n",
   9457     "Examples:\r\n"
   9458     "  fap20v tests read_addr_stop\r\n"
   9459     "Stops the currently running test.\n\r",
   9460     "",
   9461     {0,
   9462      0,
   9463      0,
   9464      BIT(3)
   9465     },
   9466     2,
   9467       /*
   9468        * Pointer to a function to call after symbolic parameter
   9469        * has been accepted.
   9470        */
   9471     (VAL_PROC_PTR)NULL
   9472   },
   9473   {
   9474     PARAM_FAP20V_TEST_MEM_READ_DELTA_VALUE_START_ID,
   9475     "read_addr_start",
   9476     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   9477     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   9478     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9479     0,0,0,0,0,0,0,
   9480     "Starts a test that checks that a certain field does not pass a threshold on several faps .\r\n",
   9481     "Examples:\r\n"
   9482     "  fap20v read_addr_start offset 0xbe00 ms_bit 28 ls_bit 16 fap_ids 0 1 2 3 \r\n"
   9483     "   delta_test requires_time_normaliztion higher_bound 50 lower_bound 10 \r\n"
   9484     "   polling_rate_in_system_ticks 3 routine_printout_every 1_hour\r\n"
   9485     "Results in registering a polling serivce on the 4 faps above. The polling rate will be\n\r"
   9486     " 3 system ticks (48 ms). The test will check that the delta value between 2 conswqutive calls\r\n"
   9487     " is not greater then 50 and not lower then 10. If both thresholds are not passed in one hour\r\n"
   9488     " the display will show a routine print to the screen\r\n",
   9489     "",
   9490     {0,
   9491      0,
   9492      0,
   9493      BIT(4) | BIT(5)
   9494     },
   9495     2,
   9496       /*
   9497        * Pointer to a function to call after symbolic parameter
   9498        * has been accepted.
   9499        */
   9500     (VAL_PROC_PTR)NULL
   9501   },
   9502   {
   9503     PARAM_FAP20V_TEST_MEM_READ_OFFSET_ID,
   9504     "offset",
   9505     (PARAM_VAL_RULES *)&Fap20v_offset_vals[0],
   9506     (sizeof(Fap20v_offset_vals) / sizeof(Fap20v_offset_vals[0])) - 1,
   9507     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9508     0,0,0,0,0,0,0,
   9509     "Starts a test that checks that a certain field does not pass a threshold on several faps .\r\n",
   9510     "Examples:\r\n"
   9511     "  fap20v read_addr_start offset 0xbe00 ms_bit 28 ls_bit 16 fap_ids 0 1 2 3 \r\n"
   9512     "   delta_test requires_time_normaliztion higher_bound 50 lower_bound 10 \r\n"
   9513     "   polling_rate_in_system_ticks 3 routine_printout_every 1_hour\r\n"
   9514     "Results in registering a polling serivce on the 4 faps above. The polling rate will be\n\r"
   9515     " 3 system ticks (48 ms). The test will check that the delta value between 2 conswqutive calls\r\n"
   9516     " is not greater then 50 and not lower then 10. If both thresholds are not passed in one hour\r\n"
   9517     " the display will show a routine print to the screen\r\n",
   9518     "",
   9519     {0,
   9520      0,
   9521      0,
   9522      BIT(4) | BIT(5)
   9523     },
   9524     3,
   9525       /*
   9526        * Pointer to a function to call after symbolic parameter
   9527        * has been accepted.
   9528        */
   9529     (VAL_PROC_PTR)NULL
   9530   },
   9531   {
   9532     PARAM_FAP20V_TEST_MEM_READ_LS_BIT_ID,
   9533     "ls_bit",
   9534     (PARAM_VAL_RULES *)&Fap20v_bit_vals[0],
   9535     (sizeof(Fap20v_bit_vals) / sizeof(Fap20v_bit_vals[0])) - 1,
   9536     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9537     0,0,0,0,0,0,0,
   9538     "Starts a test that checks that a certain field does not pass a threshold on several faps .\r\n",
   9539     "Examples:\r\n"
   9540     "  fap20v read_addr_start offset 0xbe00 ms_bit 28 ls_bit 16 fap_ids 0 1 2 3 \r\n"
   9541     "   delta_test requires_time_normaliztion higher_bound 50 lower_bound 10 \r\n"
   9542     "   polling_rate_in_system_ticks 3 routine_printout_every 1_hour\r\n"
   9543     "Results in registering a polling serivce on the 4 faps above. The polling rate will be\n\r"
   9544     " 3 system ticks (48 ms). The test will check that the delta value between 2 conswqutive calls\r\n"
   9545     " is not greater then 50 and not lower then 10. If both thresholds are not passed in one hour\r\n"
   9546     " the display will show a routine print to the screen\r\n",
   9547     "",
   9548     {0,
   9549      0,
   9550      0,
   9551      BIT(4) | BIT(5)
   9552     },
   9553     4,
   9554       /*
   9555        * Pointer to a function to call after symbolic parameter
   9556        * has been accepted.
   9557        */
   9558     (VAL_PROC_PTR)NULL
   9559   },
   9560   {
   9561     PARAM_FAP20V_TEST_MEM_READ_MS_BIT_ID,
   9562     "ms_bit",
   9563     (PARAM_VAL_RULES *)&Fap20v_bit_vals[0],
   9564     (sizeof(Fap20v_bit_vals) / sizeof(Fap20v_bit_vals[0])) - 1,
   9565     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9566     0,0,0,0,0,0,0,
   9567     "Starts a test that checks that a certain field does not pass a threshold on several faps .\r\n",
   9568     "Examples:\r\n"
   9569     "  fap20v read_addr_start offset 0xbe00 ms_bit 28 ls_bit 16 fap_ids 0 1 2 3 \r\n"
   9570     "   delta_test requires_time_normaliztion higher_bound 50 lower_bound 10 \r\n"
   9571     "   polling_rate_in_system_ticks 3 routine_printout_every 1_hour\r\n"
   9572     "Results in registering a polling serivce on the 4 faps above. The polling rate will be\n\r"
   9573     " 3 system ticks (48 ms). The test will check that the delta value between 2 conswqutive calls\r\n"
   9574     " is not greater then 50 and not lower then 10. If both thresholds are not passed in one hour\r\n"
   9575     " the display will show a routine print to the screen\r\n",
   9576     "",
   9577     {0,
   9578      0,
   9579      0,
   9580      BIT(4) | BIT(5)
   9581     },
   9582     5,
   9583       /*
   9584        * Pointer to a function to call after symbolic parameter
   9585        * has been accepted.
   9586        */
   9587     (VAL_PROC_PTR)NULL
   9588   },
   9589   {
   9590     PARAM_FAP20V_TEST_MEM_READ_FAP_IDS_ID,
   9591     "fap_ids",
   9592     (PARAM_VAL_RULES *)&Fap20v_fap_ids_vals[0],
   9593     (sizeof(Fap20v_fap_ids_vals) / sizeof(Fap20v_fap_ids_vals[0])) - 1,
   9594     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9595     0,0,0,0,0,0,0,
   9596     "Starts a test that checks that a certain field does not pass a threshold on several faps .\r\n",
   9597     "Examples:\r\n"
   9598     "  fap20v read_addr_start offset 0xbe00 ms_bit 28 ls_bit 16 fap_ids 0 1 2 3 \r\n"
   9599     "   delta_test requires_time_normaliztion higher_bound 50 lower_bound 10 \r\n"
   9600     "   polling_rate_in_system_ticks 3 routine_printout_every 1_hour\r\n"
   9601     "Results in registering a polling serivce on the 4 faps above. The polling rate will be\n\r"
   9602     " 3 system ticks (48 ms). The test will check that the delta value between 2 conswqutive calls\r\n"
   9603     " is not greater then 50 and not lower then 10. If both thresholds are not passed in one hour\r\n"
   9604     " the display will show a routine print to the screen\r\n",
   9605     "",
   9606     {0,
   9607      0,
   9608      0,
   9609      BIT(4) | BIT(5)
   9610     },
   9611     6,
   9612       /*
   9613        * Pointer to a function to call after symbolic parameter
   9614        * has been accepted.
   9615        */
   9616     (VAL_PROC_PTR)NULL
   9617   },
   9618   {
   9619     PARAM_FAP20V_TEST_MEM_READ_DELTA_TEST_ID,
   9620     "delta_test",
   9621     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   9622     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   9623     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
   9624     0,0,0,0,0,0,0,
   9625     "Starts a test that checks that the delta of 2 consequtive reads of certain field\r\n"
   9626     " does not pass a threshold on several faps .\r\n",
   9627     "Examples:\r\n"
   9628     "  fap20v read_addr_start offset 0xbe00 ms_bit 28 ls_bit 16 fap_ids 0 1 2 3 \r\n"
   9629     "   delta_test requires_time_normaliztion higher_bound 50 lower_bound 10 \r\n"
   9630     "   polling_rate_in_system_ticks 3 routine_printout_every 1_hour\r\n"
   9631     "Results in registering a polling serivce on the 4 faps above. The polling rate will be\n\r"
   9632     " 3 system ticks (48 ms). The test will check that the delta value between 2 conswqutive calls\r\n"
   9633     " is not greater then 50 and not lower then 10. If both thresholds are not passed in one hour\r\n"
   9634     " the display will show a routine print to the screen\r\n",
   9635     "",
   9636     {0,
   9637      0,
   9638      0,
   9639      BIT(4)
   9640     },
   9641     7,
   9642       /*
   9643        * Pointer to a function to call after symbolic parameter
   9644        * has been accepted.
   9645        */
   9646     (VAL_PROC_PTR)NULL
   9647   },
   9648   {
   9649     PARAM_FAP20V_TEST_MEM_READ_NORMALIZATION_ID,
   9650     "requires_time_normalization",
   9651     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   9652     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   9653     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
   9654     0,0,0,0,0,0,0,
   9655     "Starts a test that checks that the delta of 2 consequtive reads of certain field normalized\r\n"
   9656     " to the (later passed) exact time interval does not pass a threshold on several faps .\r\n",
   9657     "Examples:\r\n"
   9658     "  fap20v read_addr_start offset 0xbe00 ms_bit 28 ls_bit 16 fap_ids 0 1 2 3 \r\n"
   9659     "   delta_test requires_time_normaliztion higher_bound 50 lower_bound 10 \r\n"
   9660     "   polling_rate_in_system_ticks 3 routine_printout_every 1_hour\r\n"
   9661     "Results in registering a polling serivce on the 4 faps above. The polling rate will be\n\r"
   9662     " 3 system ticks (48 ms). The test will check that the delta value between 2 conswqutive calls\r\n"
   9663     " is not greater then 50 and not lower then 10. If both thresholds are not passed in one hour\r\n"
   9664     " the display will show a routine print to the screen\r\n",
   9665     "",
   9666     {0,
   9667      0,
   9668      0,
   9669      BIT(4)
   9670     },
   9671     LAST_ORDINAL,
   9672       /*
   9673        * Pointer to a function to call after symbolic parameter
   9674        * has been accepted.
   9675        */
   9676     (VAL_PROC_PTR)NULL
   9677   },
   9678   {
   9679     PARAM_FAP20V_TEST_MEM_READ_VALUE_TEST_ID,
   9680     "value_test",
   9681     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
   9682     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
   9683     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
   9684     0,0,0,0,0,0,0,
   9685     "Starts a test that checks that a certain field does not pass a threshold on several faps .\r\n",
   9686     "Examples:\r\n"
   9687     "  fap20v read_addr_start offset 0xbe00 ms_bit 28 ls_bit 16 fap_ids 0 1 2 3 \r\n"
   9688     "   value_test requires_time_normaliztion higher_bound 50 lower_bound 10 \r\n"
   9689     "   polling_rate_in_system_ticks 3 routine_printout_every 1_hour\r\n"
   9690     "Results in registering a polling serivce on the 4 faps above. The polling rate will be\n\r"
   9691     " 3 system ticks (48 ms). The test will check that the value read from the device\r\n"
   9692     " is not greater then 50 and not lower then 10. If both thresholds are not passed in one hour\r\n"
   9693     " the display will show a routine print to the screen.\r\n",
   9694     "",
   9695     {0,
   9696      0,
   9697      0,
   9698      BIT(5)
   9699     },
   9700     7,
   9701       /*
   9702        * Pointer to a function to call after symbolic parameter
   9703        * has been accepted.
   9704        */
   9705     (VAL_PROC_PTR)NULL
   9706   },
   9707   {
   9708     PARAM_FAP20V_TEST_MEM_READ_HIGH_BOUND_ID,
   9709     "higher_bound",
   9710     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   9711     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   9712     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
   9713     0,0,0,0,0,0,0,
   9714     "Starts a test that checks that a certain field does not pass a threshold on several faps .\r\n",
   9715     "Examples:\r\n"
   9716     "  fap20v read_addr_start offset 0xbe00 ms_bit 28 ls_bit 16 fap_ids 0 1 2 3 \r\n"
   9717     "   delta_test requires_time_normaliztion higher_bound 50 lower_bound 10 \r\n"
   9718     "   polling_rate_in_system_ticks 3 routine_printout_every 1_hour\r\n"
   9719     "Results in registering a polling serivce on the 4 faps above. The polling rate will be\n\r"
   9720     " 3 system ticks (48 ms). The test will check that the delta value between 2 conswqutive calls\r\n"
   9721     " is not greater then 50 and not lower then 10. If both thresholds are not passed in one hour\r\n"
   9722     " the display will show a routine print to the screen\r\n",
   9723     "",
   9724     {0,
   9725      0,
   9726      0,
   9727      BIT(4) | BIT(5)
   9728     },
   9729     LAST_ORDINAL,
   9730       /*
   9731        * Pointer to a function to call after symbolic parameter
   9732        * has been accepted.
   9733        */
   9734     (VAL_PROC_PTR)NULL
   9735   },
   9736   {
   9737     PARAM_FAP20V_TEST_MEM_READ_LOW_BOUND_ID,
   9738     "lower_bound",
   9739     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   9740     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   9741     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
   9742     0,0,0,0,0,0,0,
   9743     "Starts a test that checks that a certain field does not pass a threshold on several faps .\r\n",
   9744     "Examples:\r\n"
   9745     "  fap20v read_addr_start offset 0xbe00 ms_bit 28 ls_bit 16 fap_ids 0 1 2 3 \r\n"
   9746     "   delta_test requires_time_normaliztion higher_bound 50 lower_bound 10 \r\n"
   9747     "   polling_rate_in_system_ticks 3 routine_printout_every 1_hour\r\n"
   9748     "Results in registering a polling serivce on the 4 faps above. The polling rate will be\n\r"
   9749     " 3 system ticks (48 ms). The test will check that the delta value between 2 conswqutive calls\r\n"
   9750     " is not greater then 50 and not lower then 10. If both thresholds are not passed in one hour\r\n"
   9751     " the display will show a routine print to the screen\r\n",
   9752     "",
   9753     {0,
   9754      0,
   9755      0,
   9756      BIT(4) | BIT(5)
   9757     },
   9758     LAST_ORDINAL,
   9759       /*
   9760        * Pointer to a function to call after symbolic parameter
   9761        * has been accepted.
   9762        */
   9763     (VAL_PROC_PTR)NULL
   9764   },
   9765   {
   9766     PARAM_FAP20V_TEST_MEM_READ_SYS_TICKS_ID,
   9767     "polling_rate_in_system_ticks",
   9768     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   9769     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   9770     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9771     0,0,0,0,0,0,0,
   9772     "A system tick is approx 16 ms (60 ticks in a second).\r\n",
   9773     "Examples:\r\n"
   9774     "  fap20v read_addr_start offset 0xbe00 ms_bit 28 ls_bit 16 fap_ids 0 1 2 3 \r\n"
   9775     "   delta_test requires_time_normaliztion higher_bound 50 lower_bound 10 \r\n"
   9776     "   polling_rate_in_system_ticks 3 routine_printout_every 1_hour\r\n"
   9777     "Results in registering a polling serivce on the 4 faps above. The polling rate will be\n\r"
   9778     " 3 system ticks (48 ms). The test will check that the delta value between 2 conswqutive calls\r\n"
   9779     " is not greater then 50 and not lower then 10. If both thresholds are not passed in one hour\r\n"
   9780     " the display will show a routine print to the screen\r\n",
   9781     "",
   9782     {0,
   9783      0,
   9784      0,
   9785      BIT(4) | BIT(5)
   9786     },
   9787     LAST_ORDINAL,
   9788       /*
   9789        * Pointer to a function to call after symbolic parameter
   9790        * has been accepted.
   9791        */
   9792     (VAL_PROC_PTR)NULL
   9793   },
   9794   {
   9795     PARAM_FAP20V_TEST_MEM_READ_PRINT_INTERVAL_ID,
   9796     "routine_printout_every",
   9797     (PARAM_VAL_RULES *)&Fap20v_print_interval_vals[0],
   9798     (sizeof(Fap20v_print_interval_vals) / sizeof(Fap20v_print_interval_vals[0])) - 1,
   9799     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9800     0,0,0,0,0,0,0,
   9801     "Starts a test that checks that a certain field does not pass a threshold on several faps .\r\n",
   9802     "Examples:\r\n"
   9803     "  fap20v read_addr_start offset 0xbe00 ms_bit 28 ls_bit 16 fap_ids 0 1 2 3 \r\n"
   9804     "   delta_test requires_time_normaliztion higher_bound 50 lower_bound 10 \r\n"
   9805     "   polling_rate_in_system_ticks 3 routine_printout_every 1_hour\r\n"
   9806     "Results in registering a polling serivce on the 4 faps above. The polling rate will be\n\r"
   9807     " 3 system ticks (48 ms). The test will check that the delta value between 2 conswqutive calls\r\n"
   9808     " is not greater then 50 and not lower then 10. If both thresholds are not passed in one hour\r\n"
   9809     " the display will show a routine print to the screen\r\n",
   9810     "",
   9811     {0,
   9812      0,
   9813      0,
   9814      BIT(4) | BIT(5)
   9815     },
   9816     LAST_ORDINAL,
   9817       /*
   9818        * Pointer to a function to call after symbolic parameter
   9819        * has been accepted.
   9820        */
   9821     (VAL_PROC_PTR)NULL
   9822   },
   9823   {
   9824     PARAM_FAP20V_NOF_FAP_IDS_ID,
   9825     "nof_fap_ids",
   9826     (PARAM_VAL_RULES *)&Fap20v_fap_id[0],
   9827     (sizeof(Fap20v_fap_id) / sizeof(Fap20v_fap_id[0])) - 1,
   9828     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9829     0,0,0,0,0,0,0,
   9830     "Number of target faps to use\r\n",
   9831     "Examples:\r\n"
   9832     "  fap20v tests app set_queue_label_group 0 start_fap_id 0 nof_fap_ids 128 start_queue_id 8188 queue_block_size 64\r\n"
   9833     "Open on FAP 0 (driver id not FAP-id), at the LBP unicast table 128 tatget faps starting at fap 0.\n\r"
   9834     "  The queue number to use are 8188, 60, 124, ... (all module 8K).\r\n",
   9835     "",
   9836     {0,
   9837      0,
   9838      BIT(18)
   9839     },
   9840     LAST_ORDINAL,
   9841       /*
   9842        * Pointer to a function to call after symbolic parameter
   9843        * has been accepted.
   9844        */
   9845     (VAL_PROC_PTR)NULL
   9846   },
   9847   {
   9848     PARAM_FAP20V_START_QUEUE_ID_ID,
   9849     "start_queue_id",
   9850     (PARAM_VAL_RULES *)&Fap20v_queue_id[0],
   9851     (sizeof(Fap20v_queue_id) / sizeof(Fap20v_queue_id[0])) - 1,
   9852     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9853     0,0,0,0,0,0,0,
   9854     "Start queue id to set\r\n",
   9855     "Examples:\r\n"
   9856     "  fap20v tests app set_queue_label_group 0 start_fap_id 0 nof_fap_ids 128 start_queue_id 8188 queue_block_size 64\r\n"
   9857     "Open on FAP 0 (driver id not FAP-id), at the LBP unicast table 128 tatget faps starting at fap 0.\n\r"
   9858     "  The queue number to use are 8188, 60, 124, ... (all module 8K).\r\n",
   9859     "",
   9860     {0,
   9861      0,
   9862      BIT(18)
   9863     },
   9864     LAST_ORDINAL,
   9865       /*
   9866        * Pointer to a function to call after symbolic parameter
   9867        * has been accepted.
   9868        */
   9869     (VAL_PROC_PTR)NULL
   9870   },
   9871   {
   9872     PARAM_FAP20V_TARGET_FAP_ID_ID,
   9873     "start_fap_id",
   9874     (PARAM_VAL_RULES *)&Fap20v_fap_id[0],
   9875     (sizeof(Fap20v_fap_id) / sizeof(Fap20v_fap_id[0])) - 1,
   9876     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9877     0,0,0,0,0,0,0,
   9878     "Start fap id to set\r\n",
   9879     "Examples:\r\n"
   9880     "  fap20v tests app set_queue_label_group 0 start_fap_id 0 nof_fap_ids 128 start_queue_id 8188 queue_block_size 64\r\n"
   9881     "Open on FAP 0 (driver id not FAP-id), at the LBP unicast table 128 tatget faps starting at fap 0.\n\r"
   9882     "  The queue number to use are 8188, 60, 124, ... (all module 8K).\r\n",
   9883     "",
   9884     {0,
   9885      0,
   9886      BIT(18)
   9887     },
   9888     LAST_ORDINAL,
   9889       /*
   9890        * Pointer to a function to call after symbolic parameter
   9891        * has been accepted.
   9892        */
   9893     (VAL_PROC_PTR)NULL
   9894   },
   9895   {
   9896     PARAM_FAP20V_QUEUE_BLOCK_SIZE_ID,
   9897     "queue_block_size",
   9898     (PARAM_VAL_RULES *)&Fap20v_nof_queues[0],
   9899     (sizeof(Fap20v_nof_queues) / sizeof(Fap20v_nof_queues[0])) - 1,
   9900     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9901     0,0,0,0,0,0,0,
   9902     "How many queues to add in every table entry.\r\n",
   9903     "Examples:\r\n"
   9904     "  fap20v tests app set_queue_label_group 0 start_fap_id 0 nof_fap_ids 128 start_queue_id 8188 queue_block_size 64\r\n"
   9905     "Open on FAP 0 (driver id not FAP-id), at the LBP unicast table 128 tatget faps starting at fap 0.\n\r"
   9906     "  The queue number to use are 8188, 60, 124, ... (all module 8K).\r\n",
   9907     "",
   9908     {0,
   9909      0,
   9910      BIT(18)
   9911     },
   9912     LAST_ORDINAL,
   9913       /*
   9914        * Pointer to a function to call after symbolic parameter
   9915        * has been accepted.
   9916        */
   9917     (VAL_PROC_PTR)NULL
   9918   },
   9919   {
   9920     PARAM_FAP20V_TEST_APP_OPEN_FLOW_QUEUE_GROUP_ID,
   9921     "open_queue_flow_group",
   9922     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
   9923     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
   9924     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9925     0,0,0,0,0,0,0,
   9926     "Rapid flow/queue app.\r\n",
   9927     "Examples:\r\n"
   9928     "  fap20v tests app open_queue_flow_group 0 target_fap_id 0 start_queue_id 4 start_flow_id 4 nof_queue_flow 800 nof_flows_per_port 64 start_port_id 0 nof_ports 8 qos_scheme 0 qos_free_param 10000\r\n"
   9929     "Open on FAP 0 (driver id), 800 flows/queues, both use target fap id - 0,\n\r"
   9930     "  the start queue and flow ids are 4. Number of flow before port\n\r"
   9931     "  is incrementing is 64, port number will run from 0 and will wrap at 8\n\r"
   9932     "  (8 will not be used).\r\n",
   9933 
   9934     "",
   9935     {0,
   9936      0,
   9937      BIT(17)
   9938     },
   9939     3,
   9940       /*
   9941        * Pointer to a function to call after symbolic parameter
   9942        * has been accepted.
   9943        */
   9944     (VAL_PROC_PTR)NULL
   9945   },
   9946   {
   9947     PARAM_FAP20V_TARGET_FAP_ID_ID,
   9948     "target_fap_id",
   9949     (PARAM_VAL_RULES *)&Fap20v_fap_id[0],
   9950     (sizeof(Fap20v_fap_id) / sizeof(Fap20v_fap_id[0])) - 1,
   9951     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9952     0,0,0,0,0,0,0,
   9953     "Target fap to use\r\n",
   9954     "Examples:\r\n"
   9955     "  fap20v tests app open_queue_flow_group 0 target_fap_id 0 start_queue_id 4 start_flow_id 4 nof_queue_flow 800 nof_flows_per_port 64 start_port_id 0 nof_ports 8 qos_scheme 0 qos_free_param 10000\r\n"
   9956     "Open on FAP 0 (driver id), 800 flows/queues, both use target fap id - 0,\n\r"
   9957     "  the start queue and flow ids are 4. Number of flow before port\n\r"
   9958     "  is incrementing is 64, port number will run from 0 and will wrap at 8\n\r"
   9959     "  (8 will not be used).\r\n",
   9960     "",
   9961     {0,
   9962      0,
   9963      BIT(17)
   9964     },
   9965     LAST_ORDINAL,
   9966       /*
   9967        * Pointer to a function to call after symbolic parameter
   9968        * has been accepted.
   9969        */
   9970     (VAL_PROC_PTR)NULL
   9971   },
   9972   {
   9973     PARAM_FAP20V_QUEUE_ID_ID,
   9974     "start_queue_id",
   9975     (PARAM_VAL_RULES *)&Fap20v_queue_id[0],
   9976     (sizeof(Fap20v_queue_id) / sizeof(Fap20v_queue_id[0])) - 1,
   9977     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   9978     0,0,0,0,0,0,0,
   9979     "The first queue id to use.\r\n",
   9980     "Examples:\r\n"
   9981     "  fap20v tests app open_queue_flow_group 0 target_fap_id 0 start_queue_id 4 start_flow_id 4 nof_queue_flow 800 nof_flows_per_port 64 start_port_id 0 nof_ports 8 qos_scheme 0 qos_free_param 10000\r\n"
   9982     "Open on FAP 0 (driver id), 800 flows/queues, both use target fap id - 0,\n\r"
   9983     "  the start queue and flow ids are 4. Number of flow before port\n\r"
   9984     "  is incrementing is 64, port number will run from 0 and will wrap at 8\n\r"
   9985     "  (8 will not be used).\r\n",
   9986     "",
   9987     {0,
   9988      0,
   9989      BIT(17)
   9990     },
   9991     LAST_ORDINAL,
   9992       /*
   9993        * Pointer to a function to call after symbolic parameter
   9994        * has been accepted.
   9995        */
   9996     (VAL_PROC_PTR)NULL
   9997   },
   9998   {
   9999     PARAM_FAP20V_FLOW_ID_ID,
  10000     "start_flow_id",
  10001     (PARAM_VAL_RULES *)&Fap20v_flow_id[0],
  10002     (sizeof(Fap20v_flow_id) / sizeof(Fap20v_flow_id[0])) - 1,
  10003     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10004     0,0,0,0,0,0,0,
  10005     "The first flow id to use.\r\n",
  10006     "Examples:\r\n"
  10007     "  fap20v tests app open_queue_flow_group 0 target_fap_id 0 start_queue_id 4 start_flow_id 4 nof_queue_flow 800 nof_flows_per_port 64 start_port_id 0 nof_ports 8 qos_scheme 0 qos_free_param 10000\r\n"
  10008     "Open on FAP 0 (driver id), 800 flows/queues, both use target fap id - 0,\n\r"
  10009     "  the start queue and flow ids are 4. Number of flow before port\n\r"
  10010     "  is incrementing is 64, port number will run from 0 and will wrap at 8\n\r"
  10011     "  (8 will not be used).\r\n",
  10012     "",
  10013     {0,
  10014      0,
  10015      BIT(17)
  10016     },
  10017     LAST_ORDINAL,
  10018       /*
  10019        * Pointer to a function to call after symbolic parameter
  10020        * has been accepted.
  10021        */
  10022     (VAL_PROC_PTR)NULL
  10023   },
  10024   {
  10025     PARAM_FAP20V_NOF_QUEUES_ID,
  10026     "nof_queue_flow",
  10027     (PARAM_VAL_RULES *)&Fap20v_nof_queues[0],
  10028     (sizeof(Fap20v_nof_queues) / sizeof(Fap20v_nof_queues[0])) - 1,
  10029     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10030     0,0,0,0,0,0,0,
  10031     "Total number of queues/flows to open.\r\n",
  10032     "Examples:\r\n"
  10033     "  fap20v tests app open_queue_flow_group 0 target_fap_id 0 start_queue_id 4 start_flow_id 4 nof_queue_flow 800 nof_flows_per_port 64 start_port_id 0 nof_ports 8 qos_scheme 0 qos_free_param 10000\r\n"
  10034     "Open on FAP 0 (driver id), 800 flows/queues, both use target fap id - 0,\n\r"
  10035     "  the start queue and flow ids are 4. Number of flow before port\n\r"
  10036     "  is incrementing is 64, port number will run from 0 and will wrap at 8\n\r"
  10037     "  (8 will not be used).\r\n",
  10038     "",
  10039     {0,
  10040      0,
  10041      BIT(17)
  10042     },
  10043     LAST_ORDINAL,
  10044       /*
  10045        * Pointer to a function to call after symbolic parameter
  10046        * has been accepted.
  10047        */
  10048     (VAL_PROC_PTR)NULL
  10049   },
  10050   {
  10051     PARAM_FAP20V_NOF_FLOWS_PER_PORT_ID,
  10052     "nof_flows_per_port",
  10053     (PARAM_VAL_RULES *)&Fap20v_nof_queues[0],
  10054     (sizeof(Fap20v_nof_queues) / sizeof(Fap20v_nof_queues[0])) - 1,
  10055     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10056     0,0,0,0,0,0,0,
  10057     "Number of flows before the port number get incremented.\r\n",
  10058     "Examples:\r\n"
  10059     "  fap20v tests app open_queue_flow_group 0 target_fap_id 0 start_queue_id 4 start_flow_id 4 nof_queue_flow 800 nof_flows_per_port 64 start_port_id 0 nof_ports 8 qos_scheme 0 qos_free_param 10000\r\n"
  10060     "Open on FAP 0 (driver id), 800 flows/queues, both use target fap id - 0,\n\r"
  10061     "  the start queue and flow ids are 4. Number of flow before port\n\r"
  10062     "  is incrementing is 64, port number will run from 0 and will wrap at 8\n\r"
  10063     "  (8 will not be used).\r\n",
  10064     "",
  10065     {0,
  10066      0,
  10067      BIT(17)
  10068     },
  10069     LAST_ORDINAL,
  10070       /*
  10071        * Pointer to a function to call after symbolic parameter
  10072        * has been accepted.
  10073        */
  10074     (VAL_PROC_PTR)NULL
  10075   },
  10076   {
  10077     PARAM_FAP20V_QOS_SCHEME_ID,
  10078     "qos_scheme",
  10079     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  10080     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  10081     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10082     0,0,0,0,0,0,0,
  10083     "Quality of service scheme.\r\n"
  10084     "0 - edf0 for all flows, free param the Kilo Bit Sec.\n\r"
  10085     "1 - edf1 for all flows, free param the Kilo Bit Sec\n\r"
  10086     "2 - wfq for all the wheels, free param the weight .\n\r"
  10087     "3 - edf0 for all the wheels, Kilo Bit Sec start at 0 and increments by free param.\n\r"
  10088     "4 - edf1 for all the wheels, Kilo Bit Sec start at 0 and increments by free param.\n\r"
  10089     "5 - edf0 for one flow, edf1 for the second flow, free param the Kilo Bit Sec.\n\r"
  10090     "6 - 6 - edf1 for one flow free param the Kilo Bit Sec, wfq for the other flow weight - 30.\n\r"
  10091     "7 - rcy flow for each wheel free param the weight\n\r"
  10092     "8 - edf0,edf1 for even flows free param the Kilo Bit Sec,\n\r"
  10093     "    wfq for odd flows weight - 30.\n\r"
  10094     "    FSF 8 ==> 3 sub flows on one flows\n\r"
  10095     "9 - edf0,edf1 for even flows free param the Kilo Bit Sec,\n\r"
  10096     "    wfq for odd flows weight - 30, edf0 for odd flows minimum BW.\n\r"
  10097     "    FSF 4 ==> 4 sub flows on one flows\n\r",
  10098     "Examples:\r\n"
  10099     "  fap20v tests app open_queue_flow_group 0 target_fap_id 0 start_queue_id 4 start_flow_id 4 nof_queue_flow 800 nof_flows_per_port 64 start_port_id 0 nof_ports 8 qos_scheme 0 qos_free_param 10000\r\n"
  10100     "Open on FAP 0 (driver id), 800 flows/queues, both use target fap id - 0,\n\r"
  10101     "  the start queue and flow ids are 4. Number of flow before port\n\r"
  10102     "  is incrementing is 64, port number will run from 0 and will wrap at 8\n\r"
  10103     "  (8 will not be used).\r\n",
  10104     "",
  10105     {0,
  10106      0,
  10107      BIT(17)
  10108     },
  10109     LAST_ORDINAL,
  10110       /*
  10111        * Pointer to a function to call after symbolic parameter
  10112        * has been accepted.
  10113        */
  10114     (VAL_PROC_PTR)NULL
  10115   },
  10116   {
  10117     PARAM_FAP20V_QOS_FREE_PARAM_ID,
  10118     "qos_free_param",
  10119     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  10120     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  10121     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10122     0,0,0,0,0,0,0,
  10123     "Quality of service parameter, changes with respect to the QOS scheme.\r\n"
  10124     "0 - edf0 for all flows, free param the Kilo Bit Sec.\n\r"
  10125     "1 - edf1 for all flows, free param the Kilo Bit Sec\n\r"
  10126     "2 - wfq for all the wheels, free param the weight .\n\r"
  10127     "3 - edf0 for all the wheels, Kilo Bit Sec start at 0 and increments by free param.\n\r"
  10128     "4 - edf1 for all the wheels, Kilo Bit Sec start at 0 and increments by free param.\n\r"
  10129     "5 - edf0 for one flow, edf1 for the second flow, free param the Kilo Bit Sec.\n\r"
  10130     "6 - 6 - edf1 for one flow free param the Kilo Bit Sec, wfq for the other flow weight - 30.\n\r"
  10131     "7 - rcy flow for each wheel free param the weight\n\r"
  10132     "8 - edf0,edf1 for even flows free param the Kilo Bit Sec,\n\r"
  10133     "    wfq for odd flows weight - 30.\n\r"
  10134     "    FSF 8 ==> 3 sub flows on one flows\n\r"
  10135     "9 - edf0,edf1 for even flows free param the Kilo Bit Sec,\n\r"
  10136     "    wfq for odd flows weight - 30, edf0 for odd flows minimum BW.\n\r"
  10137     "    FSF 4 ==> 4 sub flows on one flows\n\r",
  10138     "Examples:\r\n"
  10139     "  fap20v tests app open_queue_flow_group 0 target_fap_id 0 start_queue_id 4 start_flow_id 4 nof_queue_flow 800 nof_flows_per_port 64 start_port_id 0 nof_ports 8 qos_scheme 0 qos_free_param 10000\r\n"
  10140     "Open on FAP 0 (driver id), 800 flows/queues, both use target fap id - 0,\n\r"
  10141     "  the start queue and flow ids are 4. Number of flow before port\n\r"
  10142     "  is incrementing is 64, port number will run from 0 and will wrap at 8\n\r"
  10143     "  (8 will not be used).\r\n",
  10144     "",
  10145     {0,
  10146      0,
  10147      BIT(17)
  10148     },
  10149     LAST_ORDINAL,
  10150       /*
  10151        * Pointer to a function to call after symbolic parameter
  10152        * has been accepted.
  10153        */
  10154     (VAL_PROC_PTR)NULL
  10155   },
  10156   {
  10157     PARAM_FAP20V_START_PORT_ID_ID,
  10158     "start_port_id",
  10159     (PARAM_VAL_RULES *)&Fap20v_scheduler_port_id_vals[0],
  10160     (sizeof(Fap20v_scheduler_port_id_vals) / sizeof(Fap20v_scheduler_port_id_vals[0])) - 1,
  10161     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10162     0,0,0,0,0,0,0,
  10163     "The first port number.\r\n",
  10164     "Examples:\r\n"
  10165     "  fap20v tests app open_queue_flow_group 0 target_fap_id 0 start_queue_id 4 start_flow_id 4 nof_queue_flow 800 nof_flows_per_port 64 start_port_id 0 nof_ports 8 qos_scheme 0 qos_free_param 10000\r\n"
  10166     "Open on FAP 0 (driver id), 800 flows/queues, both use target fap id - 0,\n\r"
  10167     "  the start queue and flow ids are 4. Number of flow before port\n\r"
  10168     "  is incrementing is 64, port number will run from 0 and will wrap at 8\n\r"
  10169     "  (8 will not be used).\r\n",
  10170     "",
  10171     {0,
  10172      0,
  10173      BIT(17)
  10174     },
  10175     LAST_ORDINAL,
  10176       /*
  10177        * Pointer to a function to call after symbolic parameter
  10178        * has been accepted.
  10179        */
  10180     (VAL_PROC_PTR)NULL
  10181   },
  10182   {
  10183     PARAM_FAP20V_NOF_PORTS_ID,
  10184     "nof_ports",
  10185     (PARAM_VAL_RULES *)&Fap20v_scheduler_port_id_vals[0],
  10186     (sizeof(Fap20v_scheduler_port_id_vals) / sizeof(Fap20v_scheduler_port_id_vals[0])) - 1,
  10187     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10188     0,0,0,0,0,0,0,
  10189     "Number of ports.\r\n",
  10190     "Examples:\r\n"
  10191     "  fap20v tests app open_queue_flow_group 0 target_fap_id 0 start_queue_id 4 start_flow_id 4 nof_queue_flow 800 nof_flows_per_port 64 start_port_id 0 nof_ports 8 qos_scheme 0 qos_free_param 10000\r\n"
  10192     "Open on FAP 0 (driver id), 800 flows/queues, both use target fap id - 0,\n\r"
  10193     "  the start queue and flow ids are 4. Number of flow before port\n\r"
  10194     "  is incrementing is 64, port number will run from 0 and will wrap at 8\n\r"
  10195     "  (8 will not be used).\r\n",
  10196     "",
  10197     {0,
  10198      0,
  10199      BIT(17)
  10200     },
  10201     LAST_ORDINAL,
  10202       /*
  10203        * Pointer to a function to call after symbolic parameter
  10204        * has been accepted.
  10205        */
  10206     (VAL_PROC_PTR)NULL
  10207   },
  10208   {
  10209     PARAM_FAP20V_TEST_SCENARIO_PKT_ID,
  10210     "packet_utils",
  10211     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10212     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10213     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
  10214     0,0,0,0,0,0,0,
  10215     "activates fap20v cells test.\r\n",
  10216     "Examples:\r\n"
  10217     "  fap20v tests packet_utils send_packet_test_fdt 0 target_fap_id 0 pattern 0xFF0022FF pkt_byte_size 1024 nof_pkts 1000\r\n"
  10218     "Results in activating packet tests.\r\n",
  10219     "",
  10220     {0,
  10221      BIT(30) | BIT(31),
  10222      BIT(16)},
  10223     2,
  10224       /*
  10225        * Pointer to a function to call after symbolic parameter
  10226        * has been accepted.
  10227        */
  10228     (VAL_PROC_PTR)NULL
  10229   },
  10230   {
  10231     PARAM_FAP20V_TEST_SCENARIO_1_ID,
  10232     "cells",
  10233     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10234     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10235     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
  10236     0,0,0,0,0,0,0,
  10237     "activates fap20v cell test.\r\n",
  10238     "Examples:\r\n"
  10239     "  fap20v test cells\r\n"
  10240     "Results in activating cells tests using direct/deferred.\r\n",
  10241     "",
  10242     {BIT(31)},
  10243     2,
  10244       /*
  10245        * Pointer to a function to call after symbolic parameter
  10246        * has been accepted.
  10247        */
  10248     (VAL_PROC_PTR)NULL
  10249   },
  10250   {
  10251     PARAM_FAP20V_TEST_SCENARIO_2_ID,
  10252     "sch_flows",
  10253     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10254     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10255     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
  10256     0,0,0,0,0,0,0,
  10257     "activates fap20v scheduler-flows test.\r\n",
  10258     "Examples:\r\n"
  10259     "  fap20v test sch_flows\r\n"
  10260     "Results in activating scheduler-flows tests.\r\n",
  10261     "",
  10262     {BIT(31)},
  10263     2,
  10264       /*
  10265        * Pointer to a function to call after symbolic parameter
  10266        * has been accepted.
  10267        */
  10268     (VAL_PROC_PTR)NULL
  10269   },
  10270   {
  10271     PARAM_FAP20V_TEST_SCENARIO_3_ID,
  10272     "sch_ports",
  10273     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10274     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10275     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
  10276     0,0,0,0,0,0,0,
  10277     "activates fap20v scheduler-ports test.\r\n",
  10278     "Examples:\r\n"
  10279     "  fap20v test sch_ports\r\n"
  10280     "Results in activating scheduler-ports tests.\r\n",
  10281     "",
  10282     {BIT(31)},
  10283     2,
  10284       /*
  10285        * Pointer to a function to call after symbolic parameter
  10286        * has been accepted.
  10287        */
  10288     (VAL_PROC_PTR)NULL
  10289   },
  10290   {
  10291     PARAM_FAP20V_TEST_SCENARIO_4_ID,
  10292     "packets",
  10293     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10294     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10295     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
  10296     0,0,0,0,0,0,0,
  10297     "activates fap20v traffic test.\r\n",
  10298     "Examples:\r\n"
  10299     "  fap20v test packets\r\n"
  10300     "Results in activating pakcets tests using direct/deferred.\r\n",
  10301     "",
  10302     {BIT(31)},
  10303     2,
  10304       /*
  10305        * Pointer to a function to call after symbolic parameter
  10306        * has been accepted.
  10307        */
  10308     (VAL_PROC_PTR)NULL
  10309   },
  10310   {
  10311     PARAM_FAP20V_TEST_SCENARIO_5_ID,
  10312     "links",
  10313     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10314     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10315     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
  10316     0,0,0,0,0,0,0,
  10317     "activates fap20v links test.\r\n",
  10318     "Examples:\r\n"
  10319     "  fap20v test links\r\n"
  10320     "Results in activating links tests using direct and deferred calls.\r\n",
  10321     "",
  10322     {BIT(31)},
  10323     2,
  10324       /*
  10325        * Pointer to a function to call after symbolic parameter
  10326        * has been accepted.
  10327        */
  10328     (VAL_PROC_PTR)NULL
  10329   },
  10330   {
  10331     PARAM_FAP20V_TEST_SCENARIO_6_ID,
  10332     "routing",
  10333     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10334     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10335     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
  10336     0,0,0,0,0,0,0,
  10337     "activates fap20v routing test.\r\n",
  10338     "Examples:\r\n"
  10339     "  fap20v test_scenario_routing direct \r\n"
  10340     "Results in activating routing tests using direct (and not deferred calls).\r\n",
  10341     "",
  10342     {BIT(31)},
  10343     2,
  10344       /*
  10345        * Pointer to a function to call after symbolic parameter
  10346        * has been accepted.
  10347        */
  10348     (VAL_PROC_PTR)NULL
  10349   },
  10350   {
  10351     PARAM_FAP20V_TEST_SCENARIO_7_ID,
  10352     "statistics",
  10353     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10354     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10355     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
  10356     0,0,0,0,0,0,0,
  10357     "activates fap20v statistics test.\r\n",
  10358     "Examples:\r\n"
  10359     "  fap20v test_scenario_statistics direct \r\n"
  10360     "Results in activating statistics tests using direct (and not deferred calls).\r\n",
  10361     "",
  10362     {BIT(31)},
  10363     2,
  10364       /*
  10365        * Pointer to a function to call after symbolic parameter
  10366        * has been accepted.
  10367        */
  10368     (VAL_PROC_PTR)NULL
  10369   },
  10370   {
  10371     PARAM_FAP20V_TEST_SCENARIO_8_ID,
  10372     "diagnostics",
  10373     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10374     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10375     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
  10376     0,0,0,0,0,0,0,
  10377     "activates fap20v diagnostics test.\r\n",
  10378     "Examples:\r\n"
  10379     "  fap20v test_scenario_diagnostics direct \r\n"
  10380     "Results in activating diagnostics tests using direct (and not deferred calls).\r\n",
  10381     "",
  10382     {BIT(31)},
  10383     2,
  10384       /*
  10385        * Pointer to a function to call after symbolic parameter
  10386        * has been accepted.
  10387        */
  10388     (VAL_PROC_PTR)NULL
  10389   },
  10390   {
  10391     PARAM_FAP20V_TEST_SCENARIO_9_ID,
  10392     "general",
  10393     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10394     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10395     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
  10396     0,0,0,0,0,0,0,
  10397     "activates fap20v agent general module test.\r\n",
  10398     "Examples:\r\n"
  10399     "  fap20v test general\r\n"
  10400     "Results in activating test on the general module through the FMC.\r\n",
  10401     "",
  10402     {BIT(31)},
  10403     2,
  10404       /*
  10405        * Pointer to a function to call after symbolic parameter
  10406        * has been accepted.
  10407        */
  10408     (VAL_PROC_PTR)NULL
  10409   },
  10410   {
  10411     PARAM_FAP20V_TEST_SCENARIO_10_ID,
  10412     "spatial_multicast",
  10413     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10414     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10415     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
  10416     0,0,0,0,0,0,0,
  10417     "activates fap20v agent spatial-multicast module test.\r\n",
  10418     "Examples:\r\n"
  10419     "  fap20v test spatial_multicast\r\n"
  10420     "Results in activating test on the spatial-multicast module through the FMC.\r\n",
  10421     "",
  10422     {BIT(31)},
  10423     2,
  10424       /*
  10425        * Pointer to a function to call after symbolic parameter
  10426        * has been accepted.
  10427        */
  10428     (VAL_PROC_PTR)NULL
  10429   },
  10430   {
  10431     PARAM_FAP20V_TEST_SCENARIO_11_ID,
  10432     "recycle_multicast",
  10433     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10434     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10435     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
  10436     0,0,0,0,0,0,0,
  10437     "activates fap20v agent recycle-multicast module test.\r\n",
  10438     "Examples:\r\n"
  10439     "  fap20v test recycle_multicast\r\n"
  10440     "Results in activating test on the recycle-multicast module through the FMC.\r\n",
  10441     "",
  10442     {BIT(31)},
  10443     2,
  10444       /*
  10445        * Pointer to a function to call after symbolic parameter
  10446        * has been accepted.
  10447        */
  10448     (VAL_PROC_PTR)NULL
  10449   },
  10450   {
  10451     PARAM_FAP20V_TEST_SCENARIO_12_ID,
  10452     "configuration",
  10453     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10454     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10455     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
  10456     0,0,0,0,0,0,0,
  10457     "activates fap20v agent configuration module test.\r\n",
  10458     "Examples:\r\n"
  10459     "  fap20v test configuration\r\n"
  10460     "Results in activating test on the configuration module through the FMC.\r\n",
  10461     "",
  10462     {BIT(31)},
  10463     2,
  10464       /*
  10465        * Pointer to a function to call after symbolic parameter
  10466        * has been accepted.
  10467        */
  10468     (VAL_PROC_PTR)NULL
  10469   },
  10470   {
  10471     PARAM_FAP20V_TEST_ZBT_INTERRUPT_ID,
  10472     "zbt_interrupt",
  10473     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10474     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10475     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
  10476     0,0,0,0,0,0,0,
  10477     "activates fap20v agent zbt interrupt test.\r\n",
  10478     "Examples:\r\n"
  10479     "  fap20v test zbt_interrupt\r\n"
  10480     "Results in activating test on the zbt interrupt through the FMC.\r\n",
  10481     "",
  10482     {BIT(31)},
  10483     2,
  10484       /*
  10485        * Pointer to a function to call after symbolic parameter
  10486        * has been accepted.
  10487        */
  10488     (VAL_PROC_PTR)NULL
  10489   },
  10490   {
  10491     PARAM_FAP20V_TEST_ALL_ID,
  10492     "all",
  10493     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10494     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10495     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
  10496     0,0,0,0,0,0,0,
  10497     "activates all fap20v tests.\r\n",
  10498     "Examples:\r\n"
  10499     "  fap20v test all\r\n"
  10500     "Results in activating all fap20v tests through the ATM and FMC.\r\n",
  10501     "",
  10502     {BIT(31)},
  10503     2,
  10504       /*
  10505        * Pointer to a function to call after symbolic parameter
  10506        * has been accepted.
  10507        */
  10508     (VAL_PROC_PTR)NULL
  10509   },
  10510   {
  10511     PARAM_FAP20V_TEST_CALLBACKS_ID,
  10512     "callbacks",
  10513     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10514     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10515     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
  10516     0,0,0,0,0,0,0,
  10517     "activates fap20v agent callbacks tests.\r\n",
  10518     "Examples:\r\n"
  10519     "  fap20v test all\r\n"
  10520     "Results in activating fap20v agent callbacks tests through the FMC.\r\n",
  10521     "",
  10522     {BIT(31)},
  10523     2,
  10524       /*
  10525        * Pointer to a function to call after symbolic parameter
  10526        * has been accepted.
  10527        */
  10528     (VAL_PROC_PTR)NULL
  10529   },
  10530   {
  10531     PARAM_FAP20V_SEND_PACKET_TEST_FDT_ID,
  10532     "send_packet_test_fdt",
  10533     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  10534     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  10535     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10536     0,0,0,0,0,0,0,
  10537     "This procedure transmits packets through the FDT\n\r"
  10538     "  and expect to recive them through the CPU interface.\r\n"
  10539     "  It them check that the packet payload was unchanged.",
  10540     "Examples:\r\n"
  10541     "  fap20v tests packets send_packet_test_fdt 0 nof_pkts 10 target_fap_id 0\r\n"
  10542     "Results in sending to 10 packets to FAP with id of 0, from device 0\r\n"
  10543     "  and than check there payload.\r\n",
  10544     "",
  10545     {0,
  10546      BIT(30) },
  10547     3,
  10548       /*
  10549        * Pointer to a function to call after symbolic parameter
  10550        * has been accepted.
  10551        */
  10552     (VAL_PROC_PTR)NULL
  10553   },
  10554   {
  10555     PARAM_FAP20V_PORT_ID,
  10556     "pp_port",
  10557     (PARAM_VAL_RULES *)&Fap20v_scheduler_port_id_no_recyle_vals[0],
  10558     (sizeof(Fap20v_scheduler_port_id_no_recyle_vals) / sizeof(Fap20v_scheduler_port_id_no_recyle_vals[0])) - 1,
  10559     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Fap20v_pp_port_default,
  10560     0,0,0,0,0,0,0,
  10561     "Prestera port to send packet to. Range 0-63 (63 is the CPU port)",
  10562     "Examples:\r\n"
  10563     "  fap20v tests packets send_packet_to_pp 0 nof_pkts 10 packet_type 0 port 5\r\n"
  10564     "Results in sending packet (64  bytes), through the FDT,\n\r"
  10565     "  via the fabric (or loop-backs), to the FAP.\n\r"
  10566     "  Next to the PP and to PORT 5, VLAN 1.\r\n"
  10567     "  Note: We've reached 700 Meg-bit/sec through this method\r\n",
  10568     "",
  10569     {0,
  10570      BIT(31)
  10571     },
  10572     LAST_ORDINAL,
  10573       /*
  10574        * Pointer to a function to call after symbolic parameter
  10575        * has been accepted.
  10576        */
  10577     (VAL_PROC_PTR)NULL
  10578   },
  10579   {
  10580     PARAM_FAP20V_VLAN_ID_ID,
  10581     "vlan_id",
  10582     (PARAM_VAL_RULES *)&Fap20v_vlan_id_vals[0],
  10583     (sizeof(Fap20v_vlan_id_vals) / sizeof(Fap20v_vlan_id_vals[0])) - 1,
  10584     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Fap20v_vlan_id_default,
  10585     0,0,0,0,0,0,0,
  10586     "Prestera VLAN id. Range 0-4095",
  10587     "Examples:\r\n"
  10588     "  fap20v tests packets send_packet_to_pp 0 nof_pkts 10 packet_type 0 port 5 vlan_id 1\r\n"
  10589     "Results in sending packet (64  bytes), through the FDT,\n\r"
  10590     "  via the fabric (or loop-backs), to the FAP.\n\r"
  10591     "  Next to the PP and to PORT 5, VLAN 1.\r\n"
  10592     "  Note: We've reached 700 Meg-bit/sec through this method\r\n",
  10593     "",
  10594     {0,
  10595      BIT(31)
  10596     },
  10597     LAST_ORDINAL,
  10598       /*
  10599        * Pointer to a function to call after symbolic parameter
  10600        * has been accepted.
  10601        */
  10602     (VAL_PROC_PTR)NULL
  10603   },
  10604   {
  10605     PARAM_FAP20V_NOF_PACKETS_ID,
  10606     "nof_pkts",
  10607     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  10608     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  10609     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10610     0,0,0,0,0,0,0,
  10611     "This procedure transmits packets through the FDT\n\r"
  10612     "  and expect to recive them through the CPU interface.\r\n"
  10613     "  It them check that the packet payload was unchanged.\n\r",
  10614     "Examples:\r\n"
  10615     "  fap20v tests packets send_packet_test_fdt 0 nof_pkts 10 target_fap_id 0\r\n"
  10616     "Results in sending to 10 packets to FAP with id of 0, from device 0\r\n"
  10617     "  and than check there payload.\r\n",
  10618     "",
  10619     {0,
  10620      BIT(30) | BIT(31) },
  10621     LAST_ORDINAL,
  10622       /*
  10623        * Pointer to a function to call after symbolic parameter
  10624        * has been accepted.
  10625        */
  10626     (VAL_PROC_PTR)NULL
  10627   },
  10628   {
  10629     PARAM_FAP20V_PACKET_BYTE_SIZE_ID,
  10630     "pkt_byte_size",
  10631     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  10632     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  10633     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10634     0,0,0,0,0,0,0,
  10635     "Packet payload byte size.\n\r",
  10636     "Examples:\r\n"
  10637     "  fap20v tests packets send_packet_test_fdt 0 nof_pkts 10 pkt_byte_size 60 target_fap_id 0\r\n"
  10638     "Results in sending to 10 packets to FAP with id of 0, from device 0\r\n"
  10639     "  and than check there payload.\r\n",
  10640     "",
  10641     {0,
  10642      BIT(30) },
  10643     LAST_ORDINAL,
  10644       /*
  10645        * Pointer to a function to call after symbolic parameter
  10646        * has been accepted.
  10647        */
  10648     (VAL_PROC_PTR)NULL
  10649   },
  10650   {
  10651     PARAM_FAP20V_PACKET_PATTERN_ID,
  10652     "pattern",
  10653     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  10654     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  10655     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10656     0,0,0,0,0,0,0,
  10657     "Packet payload byte size.\n\r",
  10658     "Examples:\r\n"
  10659     "  fap20v tests packets send_packet_test_fdt 0 nof_pkts 10 pkt_byte_size 60 target_fap_id 0 pattren 0xFE\r\n"
  10660     "Results in sending to 10 packets to FAP with id of 0, from device 0\r\n"
  10661     "  and than check there payload.\r\n",
  10662     "",
  10663     {0,
  10664      BIT(30) },
  10665     LAST_ORDINAL,
  10666       /*
  10667        * Pointer to a function to call after symbolic parameter
  10668        * has been accepted.
  10669        */
  10670     (VAL_PROC_PTR)NULL
  10671   },
  10672   {
  10673     PARAM_FAP20V_TARGET_FAP_ID_ID,
  10674     "target_fap_id",
  10675     (PARAM_VAL_RULES *)&Fap20v_fap_id[0],
  10676     (sizeof(Fap20v_fap_id) / sizeof(Fap20v_fap_id[0])) - 1,
  10677     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10678     0,0,0,0,0,0,0,
  10679     "Target FAP identifier.",
  10680     "Examples:\r\n"
  10681     "  fap20v tests packets send_packet_test_fdt 0 nof_pkts 10 target_fap_id 0\r\n"
  10682     "Results in sending to 10 packets to FAP with id of 0, from device 0\r\n"
  10683     "  and than check there payload.\r\n",
  10684     "",
  10685     {0,
  10686      BIT(30) | BIT(31) },
  10687     LAST_ORDINAL,
  10688       /*
  10689        * Pointer to a function to call after symbolic parameter
  10690        * has been accepted.
  10691        */
  10692     (VAL_PROC_PTR)NULL
  10693   },
  10694   /*
  10695    * END Test API }
  10696    */
  10697   /* { fap20v_api_auto_flow_management.h interface */
  10698   {
  10699     PARAM_FAP20V_AUTO_FLOW_MANAGEMENT_API_ID,
  10700     "auto_flow_mngt",
  10701     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10702     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10703     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10704     0,0,0,0,0,0,0,
  10705     "interface to fap20v driver auto flow management services.",
  10706     "Examples:\r\n"
  10707     "  fap20v auto_flow_mngt set_auto_params 0 max_nof_ports 10 max_nof_fap 15\r\n"
  10708     "Results in setting (on device 0) 'Fap20v_max_nof_ports' to 10 \n\r"
  10709     "  and 'Fap20v_max_nof_faps' to 15.\n\r"
  10710     "  This indicates on a system with 15 FAPs each FAP have 10 physical ports.\n\r",
  10711     "",
  10712     {0,
  10713      0,
  10714      BIT(8) | BIT(10) | BIT(11) | BIT(12) | BIT(13) | BIT(14) | BIT(15) | BIT(19) },
  10715     1,
  10716       /*
  10717        * Pointer to a function to call after symbolic parameter
  10718        * has been accepted.
  10719        */
  10720     (VAL_PROC_PTR)NULL
  10721   },
  10722   {
  10723     PARAM_FAP20V_AUTO_SET_QUEUE_TYPE_PARAMS_ID,
  10724     "set_queue_type_params",
  10725     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10726     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10727     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10728     0,0,0,0,0,0,0,
  10729     "Set driver queues type to be load via 'fap_open_queues'.",
  10730     "Examples:\r\n"
  10731     "  fap20v auto_flow_mngt set_queue_type_params fabric_class fabric_class_c queue_types 0 1 2 3\r\n"
  10732     "Results in loading to the driver parameter 4 (fabric_class_c) queue types parameters\n\r",
  10733     "",
  10734     {0,
  10735      0,
  10736      BIT(15) },
  10737     2,
  10738       /*
  10739        * Pointer to a function to call after symbolic parameter
  10740        * has been accepted.
  10741        */
  10742     (VAL_PROC_PTR)NULL
  10743   },
  10744   {
  10745     PARAM_FAP20V_AUTO_QUEUE_TYPES_ID,
  10746     "queue_types",
  10747     (PARAM_VAL_RULES *)&Fap20v_auto_queue_types[0],
  10748     (sizeof(Fap20v_auto_queue_types) / sizeof(Fap20v_auto_queue_types[0])) - 1,
  10749     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10750     0,0,0,0,0,0,0,
  10751     "Queue types to load with 'fap20v_open_fap_queues()'.\n\r"
  10752     "  Number of array entries is as indicated in 'fabric_class' 1, 2, 4 or 8.",
  10753     "Examples:\r\n"
  10754     "  fap20v auto_flow_mngt set_queue_type_params fabric_class fabric_class_c queue_types 0 1 2 3\r\n"
  10755     "Results in loading to the driver parameter 4 (fabric_class_c) queue types parameters\n\r",
  10756     "",
  10757     {0,
  10758      0,
  10759      BIT(15) },
  10760     3,
  10761       /*
  10762        * Pointer to a function to call after symbolic parameter
  10763        * has been accepted.
  10764        */
  10765     (VAL_PROC_PTR)NULL
  10766   },
  10767   {
  10768     PARAM_FAP20V_AUTO_SET_ONE_FLOW_PARAMS_ID,
  10769     "set_one_flow_params",
  10770     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10771     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10772     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10773     0,0,0,0,0,0,0,
  10774     "Set one flow parameter to user with 'open_fap_flow'.",
  10775     "Examples:\r\n"
  10776     "  fap20v auto_flow_mngt set_one_flow_params fabric_class_entry 4 sub_0_flow_type wfq1 sub_0_flow_value 222\r\n"
  10777     "Results in setting entry 4 to 2 sub flows (with there appropriate values)\n\r"
  10778     "  and not low jitter flow.\n\r",
  10779     "",
  10780     {0,
  10781      0,
  10782      BIT(13) | BIT(14) },
  10783     2,
  10784       /*
  10785        * Pointer to a function to call after symbolic parameter
  10786        * has been accepted.
  10787        */
  10788     (VAL_PROC_PTR)NULL
  10789   },
  10790   {
  10791     PARAM_FAP20V_FABRIC_CLASS_ENTRY_ID,
  10792     "fabric_class_entry",
  10793     (PARAM_VAL_RULES *)&Fap20v_fabric_class_entry[0],
  10794     (sizeof(Fap20v_fabric_class_entry) / sizeof(Fap20v_fabric_class_entry[0])) - 1,
  10795     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10796     0,0,0,0,0,0,0,
  10797     "One of 8 possiable fabric class ('fap20v_get_fabric_class()').",
  10798     "Examples:\r\n"
  10799     "  fap20v auto_flow_mngt set_one_flow_params fabric_class_entry 4 sub_0_flow_type wfq1 sub_0_flow_value 222\r\n"
  10800     "Results in setting entry 4 to 2 sub flows (with there appropriate values)\n\r"
  10801     "  and not low jitter flow.\n\r",
  10802     "",
  10803     {0,
  10804      0,
  10805      BIT(13) | BIT(14) },
  10806     3,
  10807       /*
  10808        * Pointer to a function to call after symbolic parameter
  10809        * has been accepted.
  10810        */
  10811     (VAL_PROC_PTR)NULL
  10812   },
  10813   {
  10814     PARAM_FAP20V_AUTO_GET_QUEUE_TYPE_PARAMS_ID,
  10815     "get_queue_type_params",
  10816     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10817     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10818     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10819     0,0,0,0,0,0,0,
  10820     "Get array queue types from the driver.\n\r"
  10821     "  This queue types get loaded to the devices with 'open_fap_queues'.",
  10822     "Examples:\r\n"
  10823     "  fap20v auto_flow_mngt get_queue_type_paramss fabric_class fabric_class_c\r\n"
  10824     "Results in displaying 4 (fabric_class_c) queue types.\n\r"
  10825     "  Note that this fabric class should be the same for all device in the fabric.\n\r",
  10826     "",
  10827     {0,
  10828      0,
  10829      BIT(12)},
  10830     2,
  10831       /*
  10832        * Pointer to a function to call after symbolic parameter
  10833        * has been accepted.
  10834        */
  10835     (VAL_PROC_PTR)NULL
  10836   },
  10837   {
  10838     PARAM_FAP20V_AUTO_GET_FLOW_PARAMS_ID,
  10839     "get_flow_params",
  10840     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  10841     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  10842     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10843     0,0,0,0,0,0,0,
  10844     "Get array flow parameters from the driver.\n\r"
  10845     "  This parameters get loaded to the devices with 'open_fap_flows'.",
  10846     "Examples:\r\n"
  10847     "  fap20v auto_flow_mngt get_flow_params fabric_class fabric_class_c\r\n"
  10848     "Results in displaying 4 (fabric_class_c) flow parameters.\n\r"
  10849     "  Note that this fabric class should be the same for all device in the fabric.\n\r",
  10850     "",
  10851     {0,
  10852      0,
  10853      BIT(12)},
  10854     2,
  10855       /*
  10856        * Pointer to a function to call after symbolic parameter
  10857        * has been accepted.
  10858        */
  10859     (VAL_PROC_PTR)NULL
  10860   },
  10861   {
  10862     PARAM_FAP20V_AUTO_OPEN_FAP_QUEUES_ID,
  10863     "open_fap_queues",
  10864     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  10865     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  10866     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10867     0,0,0,0,0,0,0,
  10868     "Static queues to 'target_fap_id' are opened.\n\r"
  10869     "  The queue types loaded to that queue is set with\n\r"
  10870     "  'fap20v_set_auto_queue_type_params'.\n\r"
  10871     "  This procedure open the queues through repeated\n\r"
  10872     "  calls to 'fap20v_open_queue'.",
  10873     "Examples:\r\n"
  10874     "  fap20v auto_flow_mngt open_fap_queues 1 target_fap_id 123\r\n"
  10875     "Results in automatic queue managment opening (on device 1)\n\r"
  10876     " input queues aimed to target fap 123.\n\r"
  10877     " Number of queues open on the device per port is determained\n\r"
  10878     " through 'fap20v_set_fabric_class()'.\n\r",
  10879     "",
  10880     {0,
  10881      0,
  10882      BIT(11)},
  10883     2,
  10884       /*
  10885        * Pointer to a function to call after symbolic parameter
  10886        * has been accepted.
  10887        */
  10888     (VAL_PROC_PTR)NULL
  10889   },
  10890   {
  10891     PARAM_FAP20V_AUTO_CLOSE_FAP_QUEUES_ID,
  10892     "close_fap_queues",
  10893     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  10894     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  10895     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10896     0,0,0,0,0,0,0,
  10897     "Static queues to 'target_fap_id' are closed.\r\n"
  10898     "  This procedure open the queues through \n\r"
  10899     "  repeated calls to 'fap20v_close_queue'.",
  10900     "Examples:\r\n"
  10901     "  fap20v auto_flow_mngt close_fap_queues 0 target_fap_id 123\r\n"
  10902     "Results in automatic queue managment closing (on device 0)\n\r"
  10903     " input queue aimed to target fap 123.\n\r",
  10904     "",
  10905     {0,
  10906      0,
  10907      BIT(11)},
  10908     2,
  10909       /*
  10910        * Pointer to a function to call after symbolic parameter
  10911        * has been accepted.
  10912        */
  10913     (VAL_PROC_PTR)NULL
  10914   },
  10915   {
  10916     PARAM_FAP20V_TARGET_FAP_ID_ID,
  10917     "target_fap_id",
  10918     (PARAM_VAL_RULES *)&Fap20v_fap_id[0],
  10919     (sizeof(Fap20v_fap_id) / sizeof(Fap20v_fap_id[0])) - 1,
  10920     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10921     0,0,0,0,0,0,0,
  10922     "Target FAP identifier.",
  10923     "Examples:\r\n"
  10924     "  fap20v auto_flow_mngt close_fap_queues 0 target_fap_id 123\r\n"
  10925     "Results in automatic queue managment closing (on device 0)\n\r"
  10926     " input queue aimed to target fap 123.\n\r",
  10927     "",
  10928     {0,
  10929      0,
  10930      BIT(11)},
  10931     3,
  10932       /*
  10933        * Pointer to a function to call after symbolic parameter
  10934        * has been accepted.
  10935        */
  10936     (VAL_PROC_PTR)NULL
  10937   },
  10938   {
  10939     PARAM_FAP20V_AUTO_OPEN_FAP_FLOWS_ID,
  10940     "open_fap_flows",
  10941     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  10942     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  10943     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10944     0,0,0,0,0,0,0,
  10945     "Static flows to 'source_fap_id' are opened.\n\r"
  10946     "  The flows parameters loaded to these flows are set\n\r"
  10947     "  with fap20v_auto_set_one_flow_params().\n\r"
  10948     "  This procedure open the queues through\n\r"
  10949     "  repeated calls to 'fap20v_open_scheduler_flow'.",
  10950     "Examples:\r\n"
  10951     "  fap20v auto_flow_mngt open_fap_flows 1 source_fap_id 123\r\n"
  10952     "Results in automatic flow managment opening (on device 1)\n\r"
  10953     " scheduler flows aimed to source fap 123.\n\r"
  10954     " Number of flow open on the devices per port is determained\n\r"
  10955     " through 'fap20v_set_fabric_class()'.\n\r",
  10956     "",
  10957     {0,
  10958      0,
  10959      BIT(10)},
  10960     2,
  10961       /*
  10962        * Pointer to a function to call after symbolic parameter
  10963        * has been accepted.
  10964        */
  10965     (VAL_PROC_PTR)NULL
  10966   },
  10967   {
  10968     PARAM_FAP20V_AUTO_CLOSE_FAP_FLOWS_ID,
  10969     "close_fap_flows",
  10970     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  10971     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  10972     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10973     0,0,0,0,0,0,0,
  10974     "Static flows to 'source_fap_id' are closed.\r\n"
  10975     "  Close the flows through repeated calls to\n\r"
  10976     "  'fap20v_close_scheduler_flow'.",
  10977     "Examples:\r\n"
  10978     "  fap20v auto_flow_mngt close_fap_flows 0 source_fap_id 123\r\n"
  10979     "Results in automatic flow managment closing (on device 0)\n\r"
  10980     " scheduler flows aimed to source fap 123.\n\r",
  10981     "",
  10982     {0,
  10983      0,
  10984      BIT(10)},
  10985     2,
  10986       /*
  10987        * Pointer to a function to call after symbolic parameter
  10988        * has been accepted.
  10989        */
  10990     (VAL_PROC_PTR)NULL
  10991   },
  10992   {
  10993     PARAM_FAP20V_SOURCE_FAP_ID_ID,
  10994     "source_fap_id",
  10995     (PARAM_VAL_RULES *)&Fap20v_fap_id[0],
  10996     (sizeof(Fap20v_fap_id) / sizeof(Fap20v_fap_id[0])) - 1,
  10997     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  10998     0,0,0,0,0,0,0,
  10999     "Source FAP identifier.",
  11000     "Examples:\r\n"
  11001     "  fap20v auto_flow_mngt close_fap_flows 0 source_fap_id 123\r\n"
  11002     "Results in automatic flow managment closing (on device 0)\n\r"
  11003     " scheduler flows aimed to source fap 123.\n\r",
  11004     "",
  11005     {0,
  11006      0,
  11007      BIT(10)},
  11008     3,
  11009       /*
  11010        * Pointer to a function to call after symbolic parameter
  11011        * has been accepted.
  11012        */
  11013     (VAL_PROC_PTR)NULL
  11014   },
  11015   {
  11016     PARAM_FAP20V_AUTO_FLOW_MNGT_GET_PARAMS_ID,
  11017     "get_auto_params",
  11018     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  11019     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  11020     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11021     0,0,0,0,0,0,0,
  11022     "Gets 'Fap20v_max_nof_ports' and 'Fap20v_max_nof_faps' -\n\r"
  11023     "  auto-flow-management parameters.",
  11024     "Examples:\r\n"
  11025     "  fap20v auto_flow_mngt get_auto_params 0\r\n"
  11026     "Results in getting (on device 0) 'Fap20v_max_nof_ports' and\n\r"
  11027     " and 'Fap20v_max_nof_faps' parameters.\n\r",
  11028     "",
  11029     {0,
  11030      0,
  11031      BIT(8)},
  11032     2,
  11033       /*
  11034        * Pointer to a function to call after symbolic parameter
  11035        * has been accepted.
  11036        */
  11037     (VAL_PROC_PTR)NULL
  11038   },
  11039   {
  11040     PARAM_FAP20V_AUTO_FLOW_MNGT_SET_PARAMS_ID,
  11041     "set_auto_params",
  11042     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  11043     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  11044     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11045     0,0,0,0,0,0,0,
  11046     "Sets 'Fap20v_max_nof_ports' and 'Fap20v_max_nof_faps'  -\n\r"
  11047     "  auto-flow-management parameters.",
  11048     "Examples:\r\n"
  11049     "  fap20v auto_flow_mngt set_auto_params 0 max_nof_ports 10 max_nof_fap 15\r\n"
  11050     "Results in setting (on device 0) 'Fap20v_max_nof_ports' to 10,\n\r"
  11051     " and 'Fap20v_max_nof_faps' to 15.\n\r"
  11052     " This indicates on a system with 15 FAPs each FAP have 10 physical ports on each SPI.",
  11053      "",
  11054     {0,
  11055      0,
  11056      BIT(19) },
  11057     2,
  11058       /*
  11059        * Pointer to a function to call after symbolic parameter
  11060        * has been accepted.
  11061        */
  11062     (VAL_PROC_PTR)NULL
  11063   },
  11064   {
  11065     PARAM_FAP20V_MAX_NOF_FAPS_ID,
  11066     "max_nof_faps",
  11067     (PARAM_VAL_RULES *)&Fap20v_fap_id[0],
  11068     (sizeof(Fap20v_fap_id) / sizeof(Fap20v_fap_id[0])) - 1,
  11069     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11070     0,0,0,0,0,0,0,
  11071     "Max number of FAPs one wishes to support.\n\r"
  11072     "  This number should be the same on every SOC_SAND_FAP20V driver in the system",
  11073     "Examples:\r\n"
  11074     "  fap20v auto_flow_mngt set_auto_params 0 max_nof_ports 10 max_nof_fap 15\r\n"
  11075     "Results in setting (on device 0) 'Fap20v_max_nof_ports' to 10,\n\r"
  11076     " 'Fap20v_max_nof_faps' to 15 and 'Fap20v_fabric_class' to fabric_class_c.\n\r"
  11077     " This indicates on a system with 15 FAPs each FAP have 10 physical ports on each SPI.",
  11078     "",
  11079     {0,
  11080      0,
  11081      BIT(19) },
  11082     3,
  11083       /*
  11084        * Pointer to a function to call after symbolic parameter
  11085        * has been accepted.
  11086        */
  11087     (VAL_PROC_PTR)NULL
  11088   },
  11089   {
  11090     PARAM_FAP20V_MAX_NOF_PORTS_ID,
  11091     "max_nof_ports",
  11092     (PARAM_VAL_RULES *)&Fap20v_max_nof_ports[0],
  11093     (sizeof(Fap20v_max_nof_ports) / sizeof(Fap20v_max_nof_ports[0])) - 1,
  11094     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11095     0,0,0,0,0,0,0,
  11096     "Max number of physical ports one wishes to support on every FAP.\n\r"
  11097     "  This number should include the PP-CPU port.\n\r"
  11098     "  E.g. in 12-port PP this number should be 13.\n\r"
  11099     "  This number should be the same on every SOC_SAND_FAP20V driver in the system",
  11100     "Examples:\r\n"
  11101     "  fap20v auto_flow_mngt set_auto_params 0 max_nof_ports 10 max_nof_fap 15\r\n"
  11102     "Results in setting (on device 0) 'Fap20v_max_nof_ports' to 10,\n\r"
  11103     " 'Fap20v_max_nof_faps' to 15 and 'Fap20v_fabric_class' to fabric_class_c.\n\r"
  11104     " This indicates on a system with 15 FAPs each FAP have 10 physical ports on each SPI.",
  11105      "",
  11106     {0,
  11107      0,
  11108      BIT(19) },
  11109     4,
  11110       /*
  11111        * Pointer to a function to call after symbolic parameter
  11112        * has been accepted.
  11113        */
  11114     (VAL_PROC_PTR)NULL
  11115   },
  11116 
  11117   /* END fap20v_api_auto_flow_management.h interface }*/
  11118 
  11119   /* { fap20v_api_configuration.h interface */
  11120   {
  11121     PARAM_FAP20V_CONFIGURATION_API_ID,
  11122     "configuration",
  11123     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  11124     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  11125     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11126     0,0,0,0,0,0,0,
  11127     "interface to fap20v driver configuration services.",
  11128     "Examples:\r\n"
  11129     "  fap20v configuration set_fap_id 1 fap_id 123 \r\n"
  11130     "Results in setting on device 1, fap identifier of 123.\n\r"
  11131     "This fap identifier is the identifier that the device is seen\n\r"
  11132     "in the fabric system. while the 'unit' is the identifier\n\r"
  11133     "of that fap in the context of the local driver\r\n",
  11134     "",
  11135     {0,
  11136      0,
  11137      BIT(0) | BIT(1) | BIT(2) | BIT(3) | BIT(4) | BIT(5) | BIT(6) | BIT(7) },
  11138     1,
  11139       /*
  11140        * Pointer to a function to call after symbolic parameter
  11141        * has been accepted.
  11142        */
  11143     (VAL_PROC_PTR)NULL
  11144   },
  11145   {
  11146     PARAM_FAP20V_GET_FABRIC_CLASS_ID,
  11147     "get_fabric_class",
  11148     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  11149     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  11150     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11151     0,0,0,0,0,0,0,
  11152     "Gets the used fabric class.",
  11153     "Examples:\r\n"
  11154     "  fap20v configuration get_fabric_class 0\r\n"
  11155     "Results in getting (on device 0) the fabric class used.\n\r"
  11156     " class a: PFH class {0,...,7} mapped to fabric class 0.\n\r"
  11157     " class b: PFH class {0,...,3} mapped to fabric class 0.\r\n"
  11158     "          PFH class {4,...,7} mapped to fabric class 1.\r\n"
  11159     " class c: PFH class {0,1} mapped to fabric class 0.\r\n"
  11160     "          PFH class {2,3} mapped to fabric class 1.\r\n"
  11161     "          PFH class {4,5} mapped to fabric class 2.\r\n"
  11162     "          PFH class {6,7} mapped to fabric class 3.\r\n"
  11163     " class d: PFH class X mapped to fabric class X,\r\n"
  11164     "          that is, No translation occurs .\r\n",
  11165     "",
  11166     {0,
  11167      0,
  11168      BIT(0)},
  11169     2,
  11170       /*
  11171        * Pointer to a function to call after symbolic parameter
  11172        * has been accepted.
  11173        */
  11174     (VAL_PROC_PTR)NULL
  11175   },
  11176   {
  11177     PARAM_FAP20V_SET_FABRIC_CLASS_ID,
  11178     "set_fabric_class",
  11179     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  11180     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  11181     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11182     0,0,0,0,0,0,0,
  11183     "Sets the used fabric class.",
  11184     "Examples:\r\n"
  11185     "  fap20v configuration set_fabric_class 0 fabric_class class_b\r\n"
  11186     "Results in setting (on device 0) for fabric class to class b.\n\r"
  11187     " class a: PFH class {0,...,7} mapped to fabric class 0.\n\r"
  11188     " class b: PFH class {0,...,3} mapped to fabric class 0.\r\n"
  11189     "          PFH class {4,...,7} mapped to fabric class 1.\r\n"
  11190     " class c: PFH class {0,1} mapped to fabric class 0.\r\n"
  11191     "          PFH class {2,3} mapped to fabric class 1.\r\n"
  11192     "          PFH class {4,5} mapped to fabric class 2.\r\n"
  11193     "          PFH class {6,7} mapped to fabric class 3.\r\n"
  11194     " class d: PFH class X mapped to fabric class X,\r\n"
  11195     "          that is, No translation occurs .\r\n",
  11196     "",
  11197     {0,
  11198      0,
  11199      BIT(7)},
  11200     2,
  11201       /*
  11202        * Pointer to a function to call after symbolic parameter
  11203        * has been accepted.
  11204        */
  11205     (VAL_PROC_PTR)NULL
  11206   },
  11207   {
  11208     PARAM_FAP20V_FABRIC_CLASS_ID,
  11209     "fabric_class",
  11210     (PARAM_VAL_RULES *)&Fap20v_fabric_class[0],
  11211     (sizeof(Fap20v_fabric_class) / sizeof(Fap20v_fabric_class[0])) - 1,
  11212     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11213     0,0,0,0,0,0,0,
  11214     "Fabric class.",
  11215     "Examples:\r\n"
  11216     "  fap20v configuration set_fabric_class 0 fabric_class class_b\r\n"
  11217     "Results in setting (on device 0) for fabric class to class b.\n\r",
  11218     "",
  11219     {0,
  11220      0,
  11221      BIT(7)},
  11222     3,
  11223       /*
  11224        * Pointer to a function to call after symbolic parameter
  11225        * has been accepted.
  11226        */
  11227     (VAL_PROC_PTR)NULL
  11228   },
  11229   {
  11230     PARAM_FAP20V_SET_WRED_PARAMS_ID,
  11231     "set_wred_params",
  11232     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  11233     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  11234     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11235     0,0,0,0,0,0,0,
  11236     "Sets the WRED parameters of the specific 'queue_type' and 'drop_precedence'.",
  11237     "Examples:\r\n"
  11238     "  fap20v configuration set_wred_params 0 queue_type 2 drop_precedence 3 max_packet_size 1024 max_probability 54 min_avrg_th 10000 max_avrg_th 20000\r\n"
  11239     "Results in setting (on device 0) for queue type 2 \n\r"
  11240     " and drop precedence of 3 its WRED parameters:\r\n"
  11241     " The WRED alg. max packet size is 1024,\r\n"
  11242     " maximum probability of discarding a packet is 54%%,\r\n"
  11243     " if queue average size is below 10000 all packet are admitted\r\n"
  11244     " and if queue average size is above 20000 all packet are discarded.\n\r",
  11245     "",
  11246     {0,
  11247      0,
  11248      BIT(6)},
  11249     2,
  11250       /*
  11251        * Pointer to a function to call after symbolic parameter
  11252        * has been accepted.
  11253        */
  11254     (VAL_PROC_PTR)NULL
  11255   },
  11256   {
  11257     PARAM_FAP20V_MAX_PACKET_SIZE_ID,
  11258     "max_packet_size",
  11259     (PARAM_VAL_RULES *)&Fap20v_max_packet_size[0],
  11260     (sizeof(Fap20v_max_packet_size) / sizeof(Fap20v_max_packet_size[0])) - 1,
  11261     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11262     0,0,0,0,0,0,0,
  11263     "Max packet size for the WRED algorithm.\n\r"
  11264     "  Size of packet in bytes.",
  11265     "Examples:\r\n"
  11266     "  fap20v configuration set_wred_params 0 queue_type 2 drop_precedence 3 max_packet_size 1024 max_probability 54 min_avrg_th 10000 max_avrg_th 20000\r\n"
  11267     "Results in setting (on device 0) for queue type 2 \n\r"
  11268     " and drop precedence of 3 its WRED parameters:\r\n"
  11269     " The WRED alg. max packet size is 1024,\r\n"
  11270     " maximum probability of discarding a packet is 54%%,\r\n"
  11271     " if queue average size is below 10000 all packet are admitted\r\n"
  11272     " and if queue average size is above 20000 all packet are discarded.\n\r",
  11273     "",
  11274     {0,
  11275      0,
  11276      BIT(6)},
  11277     5,
  11278       /*
  11279        * Pointer to a function to call after symbolic parameter
  11280        * has been accepted.
  11281        */
  11282     (VAL_PROC_PTR)NULL
  11283   },
  11284   {
  11285     PARAM_FAP20V_MAX_PROBABILITY_ID,
  11286     "max_probability",
  11287     (PARAM_VAL_RULES *)&Fap20v_percent[0],
  11288     (sizeof(Fap20v_percent) / sizeof(Fap20v_percent[0])) - 1,
  11289     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11290     0,0,0,0,0,0,0,
  11291     "The maximum probability of discarding a packet (when the queue reaches\n\r"
  11292     "  the maximum average size ('max_avrg_th') and the packet size is the\n\r"
  11293     "  maximum size ('max_packet_size')).",
  11294     "Examples:\r\n"
  11295     "  fap20v configuration set_wred_params 0 queue_type 2 drop_precedence 3 max_packet_size 1024 max_probability 54 min_avrg_th 10000 max_avrg_th 20000\r\n"
  11296     "Results in setting (on device 0) for queue type 2 \n\r"
  11297     " and drop precedence of 3 its WRED parameters:\r\n"
  11298     " The WRED alg. max packet size is 1024,\r\n"
  11299     " maximum probability of discarding a packet is 54%%,\r\n"
  11300     " if queue average size is below 10000 all packet are admitted\r\n"
  11301     " and if queue average size is above 20000 all packet are discarded.\n\r",
  11302     "",
  11303     {0,
  11304      0,
  11305      BIT(6)},
  11306     6,
  11307       /*
  11308        * Pointer to a function to call after symbolic parameter
  11309        * has been accepted.
  11310        */
  11311     (VAL_PROC_PTR)NULL
  11312   },
  11313   {
  11314     PARAM_FAP20V_MIN_AVRG_TH_ID,
  11315     "min_avrg_th",
  11316     (PARAM_VAL_RULES *)&Fap20v_min_avrg_th[0],
  11317     (sizeof(Fap20v_min_avrg_th) / sizeof(Fap20v_min_avrg_th[0])) - 1,
  11318     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11319     0,0,0,0,0,0,0,
  11320     "Relating to queue average size.\n\r"
  11321     "  Maximum Average Threshold - Above this threshold,\n\r"
  11322     "  packet is discarded from the queue.\n\r"
  11323     "  Resolution of 1-Kbyte (64 is 64K bytes)\n\r"
  11324     "  The SOC_SAND_FAP20V resolution is of 64K bytes (1-63 KB will be round up to 64 KB)",
  11325     "Examples:\r\n"
  11326     "  fap20v configuration set_wred_params 0 queue_type 2 drop_precedence 3 max_packet_size 1024 max_probability 54 min_avrg_th 10000 max_avrg_th 20000\r\n"
  11327     "Results in setting (on device 0) for queue type 2 \n\r"
  11328     " and drop precedence of 3 its WRED parameters:\r\n"
  11329     " The WRED alg. max packet size is 1024,\r\n"
  11330     " maximum probability of discarding a packet is 54%%,\r\n"
  11331     " if queue average size is below 10000 all packet are admitted\r\n"
  11332     " and if queue average size is above 20000 all packet are discarded.\n\r",
  11333     "",
  11334     {0,
  11335      0,
  11336      BIT(6)},
  11337     7,
  11338       /*
  11339        * Pointer to a function to call after symbolic parameter
  11340        * has been accepted.
  11341        */
  11342     (VAL_PROC_PTR)NULL
  11343   },
  11344   {
  11345     PARAM_FAP20V_MAX_AVRG_TH_ID,
  11346     "max_avrg_th",
  11347     (PARAM_VAL_RULES *)&Fap20v_max_avrg_th[0],
  11348     (sizeof(Fap20v_max_avrg_th) / sizeof(Fap20v_max_avrg_th[0])) - 1,
  11349     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11350     0,0,0,0,0,0,0,
  11351     "Relating to queue average size.\n\r"
  11352     "  Maximum Average Threshold - Above this threshold,\n\r"
  11353     "  packet is discarded from the queue.\n\r"
  11354     "  Resolution of 1-Kbyte (64 is 64K bytes)\n\r"
  11355     "  The SOC_SAND_FAP20V resolution is of 64K bytes (1-63 KB will be round up to 64 KB)",
  11356     "Examples:\r\n"
  11357     "  fap20v configuration set_wred_params 0 queue_type 2 drop_precedence 3 max_packet_size 1024 max_probability 54 min_avrg_th 10000 max_avrg_th 20000\r\n"
  11358     "Results in setting (on device 0) for queue type 2 \n\r"
  11359     " and drop precedence of 3 its WRED parameters:\r\n"
  11360     " The WRED alg. max packet size is 1024,\r\n"
  11361     " maximum probability of discarding a packet is 54%%,\r\n"
  11362     " if queue average size is below 10000 all packet are admitted\r\n"
  11363     " and if queue average size is above 20000 all packet are discarded.\n\r",
  11364     "",
  11365     {0,
  11366      0,
  11367      BIT(6)},
  11368     8,
  11369       /*
  11370        * Pointer to a function to call after symbolic parameter
  11371        * has been accepted.
  11372        */
  11373     (VAL_PROC_PTR)NULL
  11374   },
  11375 
  11376   {
  11377     PARAM_FAP20V_GET_WRED_PARAMS_ID,
  11378     "get_wred_params",
  11379     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  11380     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  11381     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11382     0,0,0,0,0,0,0,
  11383     "Gets the WRED parameters of the specific 'queue_type' and 'drop_precedence'.",
  11384     "Examples:\r\n"
  11385     "  fap20v configuration get_wred_params 0 queue_type 2 drop_precedence 3\r\n"
  11386     "Results in getting (on device 0) for queue type 2 \n\r"
  11387     "  and drop precedence of 3 its WRED parameters.\r\n",
  11388     "",
  11389     {0,
  11390      0,
  11391      BIT(5)},
  11392     2,
  11393       /*
  11394        * Pointer to a function to call after symbolic parameter
  11395        * has been accepted.
  11396        */
  11397     (VAL_PROC_PTR)NULL
  11398   },
  11399   {
  11400     PARAM_FAP20V_DROP_PRECEDENCE_ID,
  11401     "drop_precedence",
  11402     (PARAM_VAL_RULES *)&Fap20v_drop_precedence[0],
  11403     (sizeof(Fap20v_drop_precedence) / sizeof(Fap20v_drop_precedence[0])) - 1,
  11404     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11405     0,0,0,0,0,0,0,
  11406     "Drop precedence identifier.",
  11407     "Examples:\r\n"
  11408     "  fap20v configuration get_wred_params 0 queue_type 2 drop_precedence 3\r\n"
  11409     "Results in getting (on device 0) for queue type 2 \n\r"
  11410     "  and drop precedence of 3 its WRED parameters.\r\n",
  11411     "",
  11412     {0,
  11413      0,
  11414      BIT(5) | BIT(6)},
  11415     4,
  11416       /*
  11417        * Pointer to a function to call after symbolic parameter
  11418        * has been accepted.
  11419        */
  11420     (VAL_PROC_PTR)NULL  },
  11421 
  11422   {
  11423     PARAM_FAP20V_SET_QUEUE_TYPE_PARAMS_ID,
  11424     "set_queue_type_params",
  11425     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  11426     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  11427     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11428     0,0,0,0,0,0,0,
  11429     "Sets the required queue type parameters.",
  11430     "Examples:\r\n"
  11431     "  fap20v configuration set_queue_type_params 1 queue_type 2 max_queue_size 1200 flow_stat_msg 500 flow_slow_th 300 RED_exp_weight 5 \r\n"
  11432     "Results in setting (on device 1) queue type 2 parameters to:\r\n"
  11433     " Maximum queue size 1200 bytes,\n\r"
  11434     " every time the queue size cross over multiple of 500 the queue \r\n"
  11435     " is to sent status message to its related flow,\n\r"
  11436     " if the queue size is beneath 300 the queue is considered in 'Slow' state,\n\r"
  11437     " RED_exp_weight appear - indication that RED algorithm is applying this queue\n\r"
  11438     " type with the specified exponent.\n\r",
  11439     "",
  11440     {0,
  11441      0,
  11442      BIT(4)},
  11443     2,
  11444       /*
  11445        * Pointer to a function to call after symbolic parameter
  11446        * has been accepted.
  11447        */
  11448     (VAL_PROC_PTR)NULL
  11449   },
  11450   {
  11451     PARAM_FAP20V_MAX_QUEUE_SIZE_ID,
  11452     "max_queue_size",
  11453     (PARAM_VAL_RULES *)&Fap20v_max_queue_size[0],
  11454     (sizeof(Fap20v_max_queue_size) / sizeof(Fap20v_max_queue_size[0])) - 1,
  11455     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11456     0,0,0,0,0,0,0,
  11457     "Max queue size. When a queue reaches this max size,\n\r"
  11458     "  all packets reaches this queue are droped.\n\r"
  11459     "  Byte resolution.",
  11460     "Examples:\r\n"
  11461     "  fap20v configuration set_queue_type_params 1 queue_type 2 max_queue_size 1200 flow_stat_msg 500 flow_slow_th 300 RED_exp_weight 5 \r\n"
  11462     "Results in setting (on device 1) queue type 2 parameters to:\r\n"
  11463     " Maximum queue size 1200 bytes,\n\r"
  11464     " every time the queue size cross over multiple of 500 the queue \r\n"
  11465     " is to sent status message to its related flow,\n\r"
  11466     " if the queue size is beneath 300 the queue is considered in 'Slow' state,\n\r"
  11467     " RED_exp_weight appear - indication that RED algorithm is applying this queue\n\r"
  11468     " type with the specified exponent.\n\r",
  11469     "",
  11470     {0,
  11471      0,
  11472      BIT(4)},
  11473     4,
  11474       /*
  11475        * Pointer to a function to call after symbolic parameter
  11476        * has been accepted.
  11477        */
  11478     (VAL_PROC_PTR)NULL
  11479   },
  11480   {
  11481     PARAM_FAP20V_FLOW_STAT_MSG_ID,
  11482     "flow_stat_msg",
  11483     (PARAM_VAL_RULES *)&Fap20v_flow_stat_msg[0],
  11484     (sizeof(Fap20v_flow_stat_msg) / sizeof(Fap20v_flow_stat_msg[0])) - 1,
  11485     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11486     0,0,0,0,0,0,0,
  11487     "Every integer multiple of this parameter, a status message is sent to\n\r"
  11488     "  the flow related to that queue.\n\r"
  11489     "  Byte resolution.",
  11490     "Examples:\r\n"
  11491     "  fap20v configuration set_queue_type_params 1 queue_type 2 max_queue_size 1200 flow_stat_msg 500 flow_slow_th 300 RED_exp_weight 5 \r\n"
  11492     "Results in setting (on device 1) queue type 2 parameters to:\r\n"
  11493     " Maximum queue size 1200 bytes,\n\r"
  11494     " every time the queue size cross over multiple of 500 the queue \r\n"
  11495     " is to sent status message to its related flow,\n\r"
  11496     " if the queue size is beneath 300 the queue is considered in 'Slow' state,\n\r"
  11497     " RED_exp_weight appear - indication that RED algorithm is applying this queue\n\r"
  11498     " type with the specified exponent.\n\r",
  11499     "",
  11500     {0,
  11501      0,
  11502      BIT(4)},
  11503     5,
  11504       /*
  11505        * Pointer to a function to call after symbolic parameter
  11506        * has been accepted.
  11507        */
  11508     (VAL_PROC_PTR)NULL
  11509   },
  11510   {
  11511     PARAM_FAP20V_FLOW_SLOW_TH_ID,
  11512     "flow_slow_th",
  11513     (PARAM_VAL_RULES *)&Fap20v_flow_slow_th[0],
  11514     (sizeof(Fap20v_flow_slow_th) / sizeof(Fap20v_flow_slow_th[0])) - 1,
  11515     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11516     0,0,0,0,0,0,0,
  11517     "Beneath this threshold, the queue is in 'Slow' state.\n\r"
  11518     "  Byte resolution.",
  11519     "Examples:\r\n"
  11520     "  fap20v configuration set_queue_type_params 1 queue_type 2 max_queue_size 1200 flow_stat_msg 500 flow_slow_th 300 RED_exp_weight 5 \r\n"
  11521     "Results in setting (on device 1) queue type 2 parameters to:\r\n"
  11522     " Maximum queue size 1200 bytes,\n\r"
  11523     " every time the queue size cross over multiple of 500 the queue \r\n"
  11524     " is to sent status message to its related flow,\n\r"
  11525     " if the queue size is beneath 300 the queue is considered in 'Slow' state,\n\r"
  11526     " RED_exp_weight appear - indication that RED algorithm is applying this queue\n\r"
  11527     " type with the specified exponent.\n\r",
  11528     "",
  11529     {0,
  11530      0,
  11531      BIT(4)},
  11532     6,
  11533       /*
  11534        * Pointer to a function to call after symbolic parameter
  11535        * has been accepted.
  11536        */
  11537     (VAL_PROC_PTR)NULL
  11538   },
  11539   {
  11540     PARAM_FAP20V_RED_EXP_WEIGHT_ID,
  11541     "red_exp_weight",
  11542     (PARAM_VAL_RULES *)&Fap20v_red_exp_weight[0],
  11543     (sizeof(Fap20v_red_exp_weight) / sizeof(Fap20v_red_exp_weight[0])) - 1,
  11544     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
  11545     0,0,0,0,0,0,0,
  11546     "Weight for average queue size calculation.\n\r"
  11547     "  If not appears disable WRED algorithm to this queue type.\n\r"
  11548     "  The average calculation:\n\r"
  11549     "    Average_constant = 2^(-RED_exp_weight)\n\r"
  11550     "    if (Instantaneous-Queue-size < Average-queue-size)\n\r"
  11551     "      Average-queue-size = Instantaneous-Queue-size\n\r"
  11552     "    else\n\r"
  11553     "      Average-queue-size = \n\r"
  11554     "          (1-Average_constant)*Average-queue-size +\n\r"
  11555     "          Average_constant*Instantaneous-Queue-size\n\r"
  11556     "  Range  0-31, I.e., make the average factor from 1 to 1^(-31).",
  11557     "Examples:\r\n"
  11558     "  fap20v configuration set_queue_type_params 1 queue_type 2 max_queue_size 1200 flow_stat_msg 500 flow_slow_th 300 RED_exp_weight 5 \r\n"
  11559     "Results in setting (on device 1) queue type 2 parameters to:\r\n"
  11560     " Maximum queue size 1200 bytes,\n\r"
  11561     " every time the queue size cross over multiple of 500 the queue \r\n"
  11562     " is to sent status message to its related flow,\n\r"
  11563     " if the queue size is beneath 300 the queue is considered in 'Slow' state,\n\r"
  11564     " RED_exp_weight appear - indication that RED algorithm is applying this queue\n\r"
  11565     " type with the specified exponent.\n\r",
  11566     "",
  11567     {0,
  11568      0,
  11569      BIT(4)},
  11570     7,
  11571       /*
  11572        * Pointer to a function to call after symbolic parameter
  11573        * has been accepted.
  11574        */
  11575     (VAL_PROC_PTR)NULL
  11576   },
  11577 
  11578   {
  11579     PARAM_FAP20V_GET_QUEUE_TYPE_PARAMS_ID,
  11580     "get_queue_type_params",
  11581     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  11582     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  11583     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11584     0,0,0,0,0,0,0,
  11585     "Gets the queue parameters of 'queue_type'.",
  11586     "Examples:\r\n"
  11587     "  fap20v configuration get_queue_type_params 1 queue_type 2\r\n"
  11588     "Results in getting (on device 1) queue type 2 parameters.\r\n",
  11589     "",
  11590     {0,
  11591      0,
  11592      BIT(3)},
  11593     2,
  11594       /*
  11595        * Pointer to a function to call after symbolic parameter
  11596        * has been accepted.
  11597        */
  11598     (VAL_PROC_PTR)NULL
  11599   },
  11600   {
  11601     PARAM_FAP20V_QUEUE_TYPE_ID,
  11602     "queue_type",
  11603     (PARAM_VAL_RULES *)&Fap20v_queue_type[0],
  11604     (sizeof(Fap20v_queue_type) / sizeof(Fap20v_queue_type[0])) - 1,
  11605     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11606     0,0,0,0,0,0,0,
  11607     "Queue type number.",
  11608     "Examples:\r\n"
  11609     "  fap20v configuration get_queue_type_params 1 queue_type 2\r\n"
  11610     "Results in getting (on device 1) queue type 2 parameters.\r\n",
  11611     "",
  11612     {0,
  11613      0,
  11614      BIT(3) | BIT(4) | BIT(5) | BIT(6)},
  11615     3,
  11616       /*
  11617        * Pointer to a function to call after symbolic parameter
  11618        * has been accepted.
  11619        */
  11620     (VAL_PROC_PTR)NULL
  11621   },
  11622 
  11623   {
  11624     PARAM_FAP20V_GET_FAP_ID_ID,
  11625     "get_fap_id",
  11626     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  11627     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  11628     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11629     0,0,0,0,0,0,0,
  11630     "Get fap identifier (as seen in the system).",
  11631     "Examples:\r\n"
  11632     "  fap20v configuration get_fap_id 1\r\n"
  11633     "Results in getting the (on device 1) its system identifier.\r\n",
  11634     "",
  11635     {0,
  11636      0,
  11637      BIT(0)},
  11638     2,
  11639       /*
  11640        * Pointer to a function to call after symbolic parameter
  11641        * has been accepted.
  11642        */
  11643     (VAL_PROC_PTR)NULL
  11644   },
  11645   {
  11646     PARAM_FAP20V_SET_FAP_ID_ID,
  11647     "set_fap_id",
  11648     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  11649     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  11650     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11651     0,0,0,0,0,0,0,
  11652     "Sets the device with its identifier (as seen in the system).",
  11653     "Examples:\r\n"
  11654     "  fap20v configuration set_fap_id 1 fap_id 123\r\n"
  11655     "Results in setting on device 1, fap identifier of 123.\n\r"
  11656     "This fap identifier is the identifier that the device is seen\n\r"
  11657     "in the fabric system. while the 'unit' is the identifier\n\r"
  11658     "of that fap in the context of the local driver\r\n",
  11659     "",
  11660     {0,
  11661      0,
  11662      BIT(1)},
  11663     2,
  11664       /*
  11665        * Pointer to a function to call after symbolic parameter
  11666        * has been accepted.
  11667        */
  11668     (VAL_PROC_PTR)NULL
  11669   },
  11670   {
  11671     PARAM_FAP20V_FAP_ID_ID,
  11672     "fap_id",
  11673     (PARAM_VAL_RULES *)&Fap20v_fap_id[0],
  11674     (sizeof(Fap20v_fap_id) / sizeof(Fap20v_fap_id[0])) - 1,
  11675     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11676     0,0,0,0,0,0,0,
  11677     "The designated physical FAP id.",
  11678     "Examples:\r\n"
  11679     "  fap20v configuration set_fap_id 1 fap_id 123\r\n"
  11680     "Results in setting on device 1, fap identifier of 123.\n\r"
  11681     "This fap identifier is the identifier that the device is seen\n\r"
  11682     "in the fabric system. while the 'unit' is the identifier\n\r"
  11683     "of that fap in the context of the local driver\r\n",
  11684     "",
  11685     {0,
  11686      0,
  11687      BIT(1)},
  11688     3,
  11689       /*
  11690        * Pointer to a function to call after symbolic parameter
  11691        * has been accepted.
  11692        */
  11693     (VAL_PROC_PTR)NULL
  11694   },
  11695   {
  11696     PARAM_FAP20V_GET_PROFILE_ID,
  11697     "get_profile",
  11698     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  11699     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  11700     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11701     0,0,0,0,0,0,0,
  11702     "Gets the identifier of current loaded 'profile' \n\r"
  11703     "  (the profile identifier loaded with 'set_profile').",
  11704     "Examples:\r\n"
  11705     "  fap20v configuration get_profile 1\r\n"
  11706     "Results in getting the (on device 1) its loaded profile identifier.\r\n",
  11707     "",
  11708     {0,
  11709      0,
  11710      BIT(0)},
  11711     2,
  11712       /*
  11713        * Pointer to a function to call after symbolic parameter
  11714        * has been accepted.
  11715        */
  11716     (VAL_PROC_PTR)NULL
  11717   },
  11718   {
  11719     PARAM_FAP20V_SET_PROFILE_ID,
  11720     "set_profile",
  11721     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  11722     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  11723     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11724     0,0,0,0,0,0,0,
  11725     "Sets sets device with pre-defined profile.\n\r"
  11726     "  A large set of registers is written to the device.",
  11727     "Examples:\r\n"
  11728     "  fap20v configuration set_profile 1 profile_id 0\r\n"
  11729     "Results in setting the (on device 1) its profile number 1.\r\n",
  11730     "",
  11731     {0,
  11732      0,
  11733      BIT(2)},
  11734     2,
  11735       /*
  11736        * Pointer to a function to call after symbolic parameter
  11737        * has been accepted.
  11738        */
  11739     (VAL_PROC_PTR)NULL
  11740   },
  11741   {
  11742     PARAM_FAP20V_PROFILE_ID_ID,
  11743     "profile_id",
  11744     (PARAM_VAL_RULES *)&Fap20v_profile_id[0],
  11745     (sizeof(Fap20v_profile_id) / sizeof(Fap20v_profile_id[0])) - 1,
  11746     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11747     0,0,0,0,0,0,0,
  11748     "The profile identifier, which the driver load the device.",
  11749     "Examples:\r\n"
  11750     "  fap20v configuration set_profile_id 1 profile_id 0\r\n"
  11751     "Results in setting the (on device 1) its profile number 1.\r\n",
  11752     "",
  11753     {0,
  11754      0,
  11755      BIT(2)},
  11756     3,
  11757       /*
  11758        * Pointer to a function to call after symbolic parameter
  11759        * has been accepted.
  11760        */
  11761     (VAL_PROC_PTR)NULL
  11762   },
  11763   {
  11764     PARAM_FAP20V_GET_PROFILE_VALUES_ID,
  11765     "get_profile_values",
  11766     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  11767     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  11768     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11769     0,0,0,0,0,0,0,
  11770     "Gets the profile values from the device.\n\r"
  11771     "  A large set of register is read from the device.",
  11772     "Examples:\r\n"
  11773     "  fap20v configuration get_profile_values 1\r\n"
  11774     "Results in getting the (on device 1) loaded profile values from the device.\r\n",
  11775     "",
  11776     {0,
  11777      0,
  11778      BIT(0)},
  11779     2,
  11780       /*
  11781        * Pointer to a function to call after symbolic parameter
  11782        * has been accepted.
  11783        */
  11784     (VAL_PROC_PTR)NULL
  11785   },
  11786 
  11787   /* END fap20v_api_configuration.h interface }*/
  11788 
  11789 
  11790   /* { fap20v_api_scheduler_flows.h interface */
  11791   {
  11792     PARAM_FAP20V_SCHEDULER_FLOW_API_ID,
  11793     "flow",
  11794     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  11795     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  11796     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11797     0,0,0,0,0,0,0,
  11798     "interface to fap20v driver scheduler flow services.",
  11799     "Examples:\r\n"
  11800     "  fap20v scheduler flow open_flow 0 flow_id 16111 sch_port_id 0 source_fap 2047 ingress_queue 8191 low_delay off flow_type regular sub_0_flow_type edf1 sub_0_flow_value 1000\r\n"
  11801     "Resulting in opening (on device 0) flow 16111, \n\r"
  11802     " which to be installed on scheduler port 0,\r\n"
  11803     " send it credits to fap 2047 queue 8191 (on that fap).\n\r"
  11804     " The flow will NOT be 'low jitter'. It will be regular (appose to virtual or aggregate)\n\r"
  11805     " One subflow will be installed on that flow.\n\r",
  11806     "",
  11807     {0,
  11808      BIT(24) | BIT(25) | BIT(26) | BIT(29),
  11809      0,
  11810      BIT(0) | BIT(1) | BIT(19) | BIT(20) },
  11811     2,
  11812       /*
  11813        * Pointer to a function to call after symbolic parameter
  11814        * has been accepted.
  11815        */
  11816     (VAL_PROC_PTR)NULL
  11817   },
  11818   {
  11819     PARAM_FAP20V_CLOSE_SCHEDULER_FLOW_ID,
  11820     "close_flow",
  11821     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  11822     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  11823     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11824     0,0,0,0,0,0,0,
  11825     "Get scheduler flow parameters.",
  11826     "Examples:\r\n"
  11827     "  fap20v scheduler flow close_flow 1 flow_id 54\r\n"
  11828     "Results in closing on device 1 scheduler flow 54.\r\n",
  11829     "",
  11830     {0,
  11831      BIT(26)},
  11832     3,
  11833       /*
  11834        * Pointer to a function to call after symbolic parameter
  11835        * has been accepted.
  11836        */
  11837     (VAL_PROC_PTR)NULL
  11838   },
  11839   {
  11840     PARAM_FAP20V_GET_SCHEDULER_FLOW_PARAMS_ID,
  11841     "get_flow",
  11842     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  11843     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  11844     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11845     0,0,0,0,0,0,0,
  11846     "Get scheduler flow parameters.",
  11847     "Examples:\r\n"
  11848     "  fap20v scheduler flow get_flow 1 flow_id 54\r\n"
  11849     "Results in getting on device 1 the parameters of scheduler flow 54.\r\n",
  11850     "",
  11851     {0,
  11852      BIT(26)},
  11853     3,
  11854       /*
  11855        * Pointer to a function to call after symbolic parameter
  11856        * has been accepted.
  11857        */
  11858     (VAL_PROC_PTR)NULL
  11859   },
  11860   {
  11861     PARAM_FAP20V_UPDATE_SCHEDULER_RECYCLE_FLOW_ID,
  11862     "update_recycle_flow",
  11863     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  11864     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  11865     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11866     0,0,0,0,0,0,0,
  11867     "Updates recycle scheduler flow, set its parameters and return the\n\r"
  11868     "  exact parameters were loaded to the device after rounding.",
  11869     "Examples:\r\n"
  11870     "  fap20v scheduler flow update_recycle_flow 1 flow_id 122 source_fap 90 ingress_queue 2305 low_delay weight 12\r\n"
  11871     "Resulting in updating (on device 1) flow 122 to be recycle flow, \n\r"
  11872     " which to be installed on scheduler port 64,\r\n"
  11873     " send it credits to fap 90 queue 2035 (on the fap).\n\r"
  11874     " The flow weight on the recycle wheel is 12.\n\r",
  11875     "",
  11876     {0,
  11877      BIT(29)},
  11878     3,
  11879       /*
  11880        * Pointer to a function to call after symbolic parameter
  11881        * has been accepted.
  11882        */
  11883     (VAL_PROC_PTR)NULL
  11884   },
  11885   {
  11886     PARAM_FAP20V_OPEN_SCHEDULER_RECYCLE_FLOW_ID,
  11887     "open_recycle_flow",
  11888     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  11889     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  11890     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11891     0,0,0,0,0,0,0,
  11892     "Opens recycle scheduler flow, set its parameters and return the\n\r"
  11893     "  exact parameters were loaded to the device after rounding.",
  11894     "Examples:\r\n"
  11895     "  fap20v scheduler flow open_recycle_flow 1 flow_id 122 source_fap 90 ingress_queue 2305 low_delay weight 12\r\n"
  11896     "Resulting in opening (on device 1) flow 122 to be recycle flow, \n\r"
  11897     " which to be installed on scheduler port 64,\r\n"
  11898     " send it credits to fap 90 queue 2035 (on the fap).\n\r"
  11899     " The flow weight on the recycle wheel is 12.\n\r",
  11900     "",
  11901     {0,
  11902      BIT(29)},
  11903     3,
  11904       /*
  11905        * Pointer to a function to call after symbolic parameter
  11906        * has been accepted.
  11907        */
  11908     (VAL_PROC_PTR)NULL
  11909   },
  11910   {
  11911     PARAM_FAP20V_SCHEDULER_RECYCLE_FLOW_WEIGHT_ID,
  11912     "weight",
  11913     (PARAM_VAL_RULES *)&fap20v_scheduler_recycle_flow_weight_vals[0],
  11914     (sizeof(fap20v_scheduler_recycle_flow_weight_vals) / sizeof(fap20v_scheduler_recycle_flow_weight_vals[0])) - 1,
  11915     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11916     0,0,0,0,0,0,0,
  11917     "OWeight of that flow on the recycle wheel.",
  11918     "Examples:\r\n"
  11919     "  fap20v scheduler flow open_recycle_flow 1 flow_id 122 source_fap 90 ingress_queue 2305 weight 12 low_delay \r\n"
  11920     "Resulting in opening (on device 1) flow 122 to be recycle flow, \n\r"
  11921     " which to be installed on scheduler port 64,\r\n"
  11922     " send it credits to fap 90 queue 2035 (on the fap).\n\r"
  11923     " The flow weight on the recycle wheel is 12.\n\r",
  11924     "",
  11925     {0,
  11926      BIT(29)},
  11927     10,
  11928       /*
  11929        * Pointer to a function to call after symbolic parameter
  11930        * has been accepted.
  11931        */
  11932     (VAL_PROC_PTR)NULL
  11933   },
  11934   {
  11935     PARAM_FAP20V_UPDATE_SCHEDULER_FLOW_ID,
  11936     "update_flow",
  11937     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  11938     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  11939     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11940     0,0,0,0,0,0,0,
  11941     "Updates scheduler flow, set its parameters and return the\n\r"
  11942     "  exact parameters were loaded to the device after rounding.",
  11943     "Examples:\r\n"
  11944     "  fap20v scheduler flow update_flow 1 flow_id 122 sch_port_id 54 source_fap 90 ingress_queue 2305 low_delay  sub_0_flow_type wfq1 sub_0_flow_value 323 sub_1_flow_type edf1 sub_1_flow_value 12  \r\n"
  11945     "Resulting in updating (on device 1) flow 122, \n\r"
  11946     " which to be installed on scheduler port 54,\r\n"
  11947     " send it credits to fap 90 queue 2035 (on tha fap).\n\r"
  11948     " The flow wiil be 'low jitter' flow with 2 subflows.\n\r",
  11949     "",
  11950     {0,
  11951      BIT(24) | BIT(25),
  11952      0,
  11953      BIT(19) | BIT(20)},
  11954     3,
  11955       /*
  11956        * Pointer to a function to call after symbolic parameter
  11957        * has been accepted.
  11958        */
  11959     (VAL_PROC_PTR)NULL
  11960   },
  11961   {
  11962     PARAM_FAP20V_OPEN_SCHEDULER_FLOW_ID,
  11963     "open_flow",
  11964     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  11965     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  11966     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11967     0,0,0,0,0,0,0,
  11968     "Open scheduler flow, set its parameters and return the\n\r"
  11969     "  exact parameters were loaded to the device after rounding.",
  11970     "Examples:\r\n"
  11971     "  fap20v scheduler flow open_flow 0 flow_id 16111 sch_port_id 0 source_fap 2047 ingress_queue 8191 low_delay off flow_type regular sub_0_flow_type edf1 sub_0_flow_value 1000\r\n"
  11972     "Resulting in opening (on device 0) flow 16111, \n\r"
  11973     " which to be installed on scheduler port 0,\r\n"
  11974     " send it credits to fap 2047 queue 8191 (on that fap).\n\r"
  11975     " The flow will NOT be 'low jitter'. It will be regular (appose to virtual or aggregate)\n\r"
  11976     " One subflow will be installed on that flow.\n\r",
  11977     "",
  11978     {0,
  11979      BIT(24) | BIT(25),
  11980      0,
  11981      BIT(19) | BIT(20) },
  11982     3,
  11983       /*
  11984        * Pointer to a function to call after symbolic parameter
  11985        * has been accepted.
  11986        */
  11987     (VAL_PROC_PTR)NULL
  11988   },
  11989   {
  11990     PARAM_FAP20V_FLOW_ID_ID,
  11991     "flow_id",
  11992     (PARAM_VAL_RULES *)&Fap20v_flow_id[0],
  11993     (sizeof(Fap20v_flow_id) / sizeof(Fap20v_flow_id[0])) - 1,
  11994     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  11995     0,0,0,0,0,0,0,
  11996     "Flow, in the scheduler.",
  11997     "Examples:\r\n"
  11998     "  fap20v scheduler flow open_flow 0 flow_id 16111 sch_port_id 0 source_fap 2047 ingress_queue 8191 low_delay off flow_type regular sub_0_flow_type edf1 sub_0_flow_value 1000\r\n"
  11999     "Resulting in opening (on device 0) flow 16111, \n\r"
  12000     " which to be installed on scheduler port 0,\r\n"
  12001     " send it credits to fap 2047 queue 8191 (on that fap).\n\r"
  12002     " The flow will NOT be 'low jitter'. It will be regular (appose to virtual or aggregate)\n\r"
  12003     " One subflow will be installed on that flow.\n\r",
  12004     "",
  12005     {0,
  12006      BIT(24) | BIT(25) | BIT(26) | BIT(29),
  12007      0,
  12008      BIT(0) | BIT(1) | BIT(19) | BIT(20) },
  12009     4,
  12010       /*
  12011        * Pointer to a function to call after symbolic parameter
  12012        * has been accepted.
  12013        */
  12014     (VAL_PROC_PTR)NULL
  12015   },
  12016   {
  12017     PARAM_FAP20V_SCHEDULER_PORT_ID_ID,
  12018     "sch_port_id",
  12019     (PARAM_VAL_RULES *)&Fap20v_scheduler_port_id_no_recyle_vals[0],
  12020     (sizeof(Fap20v_scheduler_port_id_no_recyle_vals) / sizeof(Fap20v_scheduler_port_id_no_recyle_vals[0])) - 1,
  12021     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12022     0,0,0,0,0,0,0,
  12023     "Scheduler port, the will is belonged to.",
  12024     "Examples:\r\n"
  12025     "  fap20v scheduler flow open_flow 0 flow_id 16111 sch_port_id 0 source_fap 2047 ingress_queue 8191 low_delay off flow_type regular sub_0_flow_type edf1 sub_0_flow_value 1000\r\n"
  12026     "Resulting in opening (on device 0) flow 16111, \n\r"
  12027     " which to be installed on scheduler port 0,\r\n"
  12028     " send it credits to fap 2047 queue 8191 (on that fap).\n\r"
  12029     " The flow will NOT be 'low jitter'. It will be regular (appose to virtual or aggregate)\n\r"
  12030     " One subflow will be installed on that flow.\n\r",
  12031     "",
  12032     {0,
  12033      BIT(24) | BIT(25),
  12034      0,
  12035      BIT(19) | BIT(20) },
  12036     5,
  12037       /*
  12038        * Pointer to a function to call after symbolic parameter
  12039        * has been accepted.
  12040        */
  12041     (VAL_PROC_PTR)NULL
  12042   },
  12043   {
  12044     PARAM_FAP20V_SOURCE_FAP_ID_ID,
  12045     "source_fap",
  12046     (PARAM_VAL_RULES *)&Fap20v_fap_id[0],
  12047     (sizeof(Fap20v_fap_id) / sizeof(Fap20v_fap_id[0])) - 1,
  12048     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12049     0,0,0,0,0,0,0,
  12050     "FAP identifier, this flow is supposed to sent credits to.",
  12051     "Examples:\r\n"
  12052     "  fap20v scheduler flow open_flow 0 flow_id 16111 sch_port_id 0 source_fap 2047 ingress_queue 8191 low_delay off flow_type regular sub_0_flow_type edf1 sub_0_flow_value 1000\r\n"
  12053     "Resulting in opening (on device 0) flow 16111, \n\r"
  12054     " which to be installed on scheduler port 0,\r\n"
  12055     " send it credits to fap 2047 queue 8191 (on that fap).\n\r"
  12056     " The flow will NOT be 'low jitter'. It will be regular (appose to virtual or aggregate)\n\r"
  12057     " One subflow will be installed on that flow.\n\r",
  12058     "",
  12059     {0,
  12060      BIT(24) | BIT(25) | BIT(29),
  12061      0,
  12062      BIT(19) | BIT(20) },
  12063     6,
  12064       /*
  12065        * Pointer to a function to call after symbolic parameter
  12066        * has been accepted.
  12067        */
  12068     (VAL_PROC_PTR)NULL
  12069   },
  12070   {
  12071     PARAM_FAP20V_INGRESS_QUEUE_ID_ID,
  12072     "ingress_queue",
  12073     (PARAM_VAL_RULES *)&Fap20v_queue_id[0],
  12074     (sizeof(Fap20v_queue_id) / sizeof(Fap20v_queue_id[0])) - 1,
  12075     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12076     0,0,0,0,0,0,0,
  12077     "Ingress queue identifier, this flow is supposed to sent credits to.",
  12078     "Examples:\r\n"
  12079     "  fap20v scheduler flow open_flow 0 flow_id 16111 sch_port_id 0 source_fap 2047 ingress_queue 8191 low_delay off flow_type regular sub_0_flow_type edf1 sub_0_flow_value 1000\r\n"
  12080     "Resulting in opening (on device 0) flow 16111, \n\r"
  12081     " which to be installed on scheduler port 0,\r\n"
  12082     " send it credits to fap 2047 queue 8191 (on that fap).\n\r"
  12083     " The flow will NOT be 'low jitter'. It will be regular (appose to virtual or aggregate)\n\r"
  12084     " One subflow will be installed on that flow.\n\r",
  12085     "",
  12086     {0,
  12087      BIT(24) | BIT(25) | BIT(29),
  12088      0,
  12089      BIT(19) | BIT(20) },
  12090     7,
  12091       /*
  12092        * Pointer to a function to call after symbolic parameter
  12093        * has been accepted.
  12094        */
  12095     (VAL_PROC_PTR)NULL
  12096   },
  12097   {
  12098     PARAM_FAP20V_LOW_JITTER_ENABLE_ID,
  12099     "low_delay",
  12100     (PARAM_VAL_RULES *)&Fap20v_on_off_vals[0],
  12101     (sizeof(Fap20v_on_off_vals) / sizeof(Fap20v_on_off_vals[0])) - 1,
  12102     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12103     0,0,0,0,0,0,0,
  12104     "If appears, indicates that this flow will sent its credit\r\n"
  12105     " regardless if its ingress queue has data.",
  12106     "  fap20v scheduler flow open_flow 0 flow_id 16111 sch_port_id 0 source_fap 2047 ingress_queue 8191 low_delay off flow_type regular sub_0_flow_type edf1 sub_0_flow_value 1000\r\n"
  12107     "Resulting in opening (on device 0) flow 16111, \n\r"
  12108     " which to be installed on scheduler port 0,\r\n"
  12109     " send it credits to fap 2047 queue 8191 (on that fap).\n\r"
  12110     " The flow will NOT be 'low jitter'. It will be regular (appose to virtual or aggregate)\n\r"
  12111     " One subflow will be installed on that flow.\n\r",
  12112     "",
  12113     {0,
  12114      BIT(24) | BIT(25) | BIT(29),
  12115      BIT(13) | BIT(14),
  12116      BIT(19) | BIT(20) },
  12117      8,
  12118       /*
  12119        * Pointer to a function to call after symbolic parameter
  12120        * has been accepted.
  12121        */
  12122     (VAL_PROC_PTR)NULL
  12123   },
  12124   {
  12125     PARAM_FAP20V_SCH_FLOW_TYPE_ID,
  12126     "flow_type",
  12127     (PARAM_VAL_RULES *)&Fap20v_sch_flow_type_vals[0],
  12128     (sizeof(Fap20v_sch_flow_type_vals) / sizeof(Fap20v_sch_flow_type_vals[0])) - 1,
  12129     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12130     0,0,0,0,0,0,0,
  12131     "If appears, indicates the scheduler flow type (regular, virtual, aggregate).",
  12132     "  fap20v scheduler flow open_flow 1 flow_id 122 sch_port_id 54 source_fap 90 ingress_queue 2305 low_delay  sub_0_flow_type wfq1 sub_0_flow_value 323 sub_1_flow_type edf1 sub_1_flow_value 12  \r\n"
  12133     "Resulting in opening (on device 1) flow 122, \n\r"
  12134     " which to be installed on scheduler port 54,\r\n"
  12135     " send it credits to fap 90 queue 2035 (on tha fap).\n\r"
  12136     " The flow wiil be 'low jitter' flow with 2 subflows.\n\r",
  12137     "",
  12138     {0,
  12139      BIT(24) | BIT(25) | BIT(29),
  12140      BIT(13) | BIT(14),
  12141      BIT(19) | BIT(20) },
  12142      9,
  12143       /*
  12144        * Pointer to a function to call after symbolic parameter
  12145        * has been accepted.
  12146        */
  12147     (VAL_PROC_PTR)NULL
  12148   },
  12149   {
  12150     PARAM_FAP20V_SUB_FLOW_0_TYPE_ID,
  12151     "sub_0_flow_type",
  12152     (PARAM_VAL_RULES *)&Fap20v_sub_flow_types[0],
  12153     (sizeof(Fap20v_sub_flow_types) / sizeof(Fap20v_sub_flow_types[0])) - 1,
  12154     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12155     0,0,0,0,0,0,0,
  12156     "Ingress queue identifier, this flow is supposed to sent credits to.",
  12157     "Examples:\r\n"
  12158     "  fap20v scheduler flow open_flow 0 flow_id 16111 sch_port_id 0 source_fap 2047 ingress_queue 8191 low_delay off flow_type regular sub_0_flow_type edf1 sub_0_flow_value 1000\r\n"
  12159     "Resulting in opening (on device 0) flow 16111, \n\r"
  12160     " which to be installed on scheduler port 0,\r\n"
  12161     " send it credits to fap 2047 queue 8191 (on that fap).\n\r"
  12162     " The flow will NOT be 'low jitter'. It will be regular (appose to virtual or aggregate)\n\r"
  12163     " One subflow will be installed on that flow.\n\r",
  12164     "",
  12165     {0,
  12166      BIT(24) | BIT(25),
  12167      BIT(13) | BIT(14),
  12168      BIT(0) | BIT(1) | BIT(19) | BIT(20) },
  12169     10,
  12170       /*
  12171        * Pointer to a function to call after symbolic parameter
  12172        * has been accepted.
  12173        */
  12174     (VAL_PROC_PTR)NULL
  12175   },
  12176   {
  12177     PARAM_FAP20V_SUB_FLOW_0_VALUE_ID,
  12178     "sub_0_flow_value",
  12179     (PARAM_VAL_RULES *)&Fap20v_sub_flow_values[0],
  12180     (sizeof(Fap20v_sub_flow_values) / sizeof(Fap20v_sub_flow_values[0])) - 1,
  12181     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12182     0,0,0,0,0,0,0,
  12183     "Ingress queue identifier, this flow is supposed to sent credits to.\n\r"
  12184     " 'value' semantics depends on the 'type' value:\n\r"
  12185     "\n\r"
  12186     " FAP20V_SUB_FLOW_TYPE        | 'value' semantics\n\r"
  12187     "---------------------------------------------------------\n\r"
  12188     " FAP20V_EDF0_FLOW            | Kilo-bits - guaranteed rate\n\r"
  12189     " FAP20V_EDF1_FLOW            | Kilo-bits -Maximal rate\n\r"
  12190     " FAP20V_EDF0_PERCENTAGE_FLOW | 0-1000000: 90000  = 9%%\n\r"
  12191     " FAP20V_EDF1_PERCENTAGE_FLOW | 0-1000000: 120000 = 12%%\n\r"
  12192     " FAP20V_WFQ1_FLOW            | Weight. Range from 1 to 126*8.\n\r"
  12193     "",
  12194     "Examples:\r\n"
  12195     "  fap20v scheduler flow open_flow 0 flow_id 16111 sch_port_id 0 source_fap 2047 ingress_queue 8191 low_delay off flow_type regular sub_0_flow_type edf1 sub_0_flow_value 1000\r\n"
  12196     "Resulting in opening (on device 0) flow 16111, \n\r"
  12197     " which to be installed on scheduler port 0,\r\n"
  12198     " send it credits to fap 2047 queue 8191 (on that fap).\n\r"
  12199     " The flow will NOT be 'low jitter'. It will be regular (appose to virtual or aggregate)\n\r"
  12200     " One subflow will be installed on that flow.\n\r",
  12201     "",
  12202     {0,
  12203      BIT(24) | BIT(25),
  12204      BIT(13) | BIT(14),
  12205      BIT(0) | BIT(1) | BIT(19) | BIT(20) },
  12206     11,
  12207       /*
  12208        * Pointer to a function to call after symbolic parameter
  12209        * has been accepted.
  12210        */
  12211     (VAL_PROC_PTR)NULL
  12212   },
  12213   {
  12214     PARAM_FAP20V_SUB_FLOW_1_TYPE_ID,
  12215     "sub_1_flow_type",
  12216     (PARAM_VAL_RULES *)&Fap20v_sub_flow_types[0],
  12217     (sizeof(Fap20v_sub_flow_types) / sizeof(Fap20v_sub_flow_types[0])) - 1,
  12218     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12219     0,0,0,0,0,0,0,
  12220     "Ingress queue identifier, this flow is supposed to sent credits to.",
  12221     "Examples:\r\n"
  12222     "  fap20v scheduler flow open_flow 0 flow_id 16111 sch_port_id 0 source_fap 2047 ingress_queue 8191 low_delay off flow_type regular sub_0_flow_type edf1 sub_0_flow_value 1000 sub_1_flow_type edf0 sub_1_flow_value 9500\r\n"
  12223     "Resulting in opening (on device 0) flow 16111, \n\r"
  12224     " which to be installed on scheduler port 0,\r\n"
  12225     " send it credits to fap 2047 queue 8191 (on that fap).\n\r"
  12226     " The flow will NOT be 'low jitter'. It will be regular (appose to virtual or aggregate)\n\r"
  12227     " 2 subflows will be installed on that flow.\n\r",
  12228     "",
  12229     {0,
  12230      BIT(25),
  12231      BIT(13),
  12232      BIT(1) | BIT(19) | BIT(20)
  12233     },
  12234     12,
  12235       /*
  12236        * Pointer to a function to call after symbolic parameter
  12237        * has been accepted.
  12238        */
  12239     (VAL_PROC_PTR)NULL
  12240   },
  12241   {
  12242     PARAM_FAP20V_SUB_FLOW_1_VALUE_ID,
  12243     "sub_1_flow_value",
  12244     (PARAM_VAL_RULES *)&Fap20v_sub_flow_values[0],
  12245     (sizeof(Fap20v_sub_flow_values) / sizeof(Fap20v_sub_flow_values[0])) - 1,
  12246     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12247     0,0,0,0,0,0,0,
  12248     "Ingress queue identifier, this flow is supposed to sent credits to.",
  12249     "Examples:\r\n"
  12250     "  fap20v scheduler flow open_flow 0 flow_id 16111 sch_port_id 0 source_fap 2047 ingress_queue 8191 low_delay off flow_type regular sub_0_flow_type edf1 sub_0_flow_value 1000 sub_1_flow_type edf0 sub_1_flow_value 9500\r\n"
  12251     "Resulting in opening (on device 0) flow 16111, \n\r"
  12252     " which to be installed on scheduler port 0,\r\n"
  12253     " send it credits to fap 2047 queue 8191 (on that fap).\n\r"
  12254     " The flow will NOT be 'low jitter'. It will be regular (appose to virtual or aggregate)\n\r"
  12255     " 2 subflows will be installed on that flow.\n\r",
  12256     "",
  12257     {0,
  12258      BIT(25) ,
  12259      BIT(13),
  12260      BIT(1) | BIT(19) | BIT(20)
  12261     },
  12262     13,
  12263       /*
  12264        * Pointer to a function to call after symbolic parameter
  12265        * has been accepted.
  12266        */
  12267     (VAL_PROC_PTR)NULL
  12268   },
  12269   {
  12270     PARAM_FAP20V_SUB_FLOW_2_TYPE_ID,
  12271     "sub_2_flow_type",
  12272     (PARAM_VAL_RULES *)&Fap20v_sub_flow_types[0],
  12273     (sizeof(Fap20v_sub_flow_types) / sizeof(Fap20v_sub_flow_types[0])) - 1,
  12274     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12275     0,0,0,0,0,0,0,
  12276     "Ingress queue identifier, this flow is supposed to sent credits to.",
  12277     "Examples:\r\n"
  12278     "  fap20v scheduler flow open_flow 0 flow_id 16111 sch_port_id 0 source_fap 2047 ingress_queue 8191 low_delay off flow_type regular sub_0_flow_type edf1 sub_0_flow_value 1000 sub_1_flow_type edf0 sub_1_flow_value 9500 sub_2_flow_type wfq1 sub_2_flow_value 54\r\n"
  12279     "Resulting in opening (on device 0) flow 16111, \n\r"
  12280     " which to be installed on scheduler port 0,\r\n"
  12281     " send it credits to fap 2047 queue 8191 (on that fap).\n\r"
  12282     " The flow will NOT be 'low jitter'. It will be regular (appose to virtual or aggregate)\n\r"
  12283     " Three subflows will be installed on that flow.\n\r",
  12284     "",
  12285     {0,
  12286      0,
  12287      0,
  12288      BIT(1) | BIT(19) | BIT(20)
  12289     },
  12290     14,
  12291       /*
  12292        * Pointer to a function to call after symbolic parameter
  12293        * has been accepted.
  12294        */
  12295     (VAL_PROC_PTR)NULL
  12296   },
  12297   {
  12298     PARAM_FAP20V_SUB_FLOW_2_VALUE_ID,
  12299     "sub_2_flow_value",
  12300     (PARAM_VAL_RULES *)&Fap20v_sub_flow_values[0],
  12301     (sizeof(Fap20v_sub_flow_values) / sizeof(Fap20v_sub_flow_values[0])) - 1,
  12302     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12303     0,0,0,0,0,0,0,
  12304     "Ingress queue identifier, this flow is supposed to sent credits to.",
  12305     "Examples:\r\n"
  12306     "  fap20v scheduler flow open_flow 0 flow_id 16111 sch_port_id 0 source_fap 2047 ingress_queue 8191 low_delay off flow_type regular sub_0_flow_type edf1 sub_0_flow_value 1000 sub_1_flow_type edf0 sub_1_flow_value 9500 sub_2_flow_type wfq1 sub_2_flow_value 54\r\n"
  12307     "Resulting in opening (on device 0) flow 16111, \n\r"
  12308     " which to be installed on scheduler port 0,\r\n"
  12309     " send it credits to fap 2047 queue 8191 (on that fap).\n\r"
  12310     " The flow will NOT be 'low jitter'. It will be regular (appose to virtual or aggregate)\n\r"
  12311     " Three subflows will be installed on that flow.\n\r",
  12312     "",
  12313     {0,
  12314      0,
  12315      0,
  12316      BIT(1) | BIT(19) | BIT(20)
  12317     },
  12318     15,
  12319       /*
  12320        * Pointer to a function to call after symbolic parameter
  12321        * has been accepted.
  12322        */
  12323     (VAL_PROC_PTR)NULL
  12324   },
  12325   {
  12326     PARAM_FAP20V_SUB_FLOW_3_TYPE_ID,
  12327     "sub_3_flow_type",
  12328     (PARAM_VAL_RULES *)&Fap20v_sub_flow_types[0],
  12329     (sizeof(Fap20v_sub_flow_types) / sizeof(Fap20v_sub_flow_types[0])) - 1,
  12330     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12331     0,0,0,0,0,0,0,
  12332     "Ingress queue identifier, this flow is supposed to sent credits to.",
  12333     "Examples:\r\n"
  12334     "  fap20v scheduler flow open_flow 0 flow_id 16111 sch_port_id 0 source_fap 2047 ingress_queue 8191 low_delay off flow_type regular sub_0_flow_type edf1 sub_0_flow_value 1000 sub_1_flow_type edf0 sub_1_flow_value 9500 sub_2_flow_type wfq1 sub_2_flow_value 54 sub_3_flow_type edf0 sub_3_flow_value 54\r\n"
  12335     "Resulting in opening (on device 0) flow 16111, \n\r"
  12336     " which to be installed on scheduler port 0,\r\n"
  12337     " send it credits to fap 2047 queue 8191 (on that fap).\n\r"
  12338     " The flow will NOT be 'low jitter'. It will be regular (appose to virtual or aggregate)\n\r"
  12339     " Four subflows will be installed on that flow.\n\r",
  12340     "",
  12341     {0,
  12342      BIT(31),
  12343      0 ,
  12344      BIT(1) | BIT(20)
  12345     },
  12346     16,
  12347       /*
  12348        * Pointer to a function to call after symbolic parameter
  12349        * has been accepted.
  12350        */
  12351     (VAL_PROC_PTR)NULL
  12352   },
  12353   {
  12354     PARAM_FAP20V_SUB_FLOW_3_VALUE_ID,
  12355     "sub_3_flow_value",
  12356     (PARAM_VAL_RULES *)&Fap20v_sub_flow_values[0],
  12357     (sizeof(Fap20v_sub_flow_values) / sizeof(Fap20v_sub_flow_values[0])) - 1,
  12358     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12359     0,0,0,0,0,0,0,
  12360     "Ingress queue identifier, this flow is supposed to sent credits to.",
  12361     "  fap20v scheduler flow open_flow 0 flow_id 16111 sch_port_id 0 source_fap 2047 ingress_queue 8191 low_delay off flow_type regular sub_0_flow_type edf1 sub_0_flow_value 1000 sub_1_flow_type edf0 sub_1_flow_value 9500 sub_2_flow_type wfq1 sub_2_flow_value 54 sub_3_flow_type edf0 sub_3_flow_value 54\r\n"
  12362     "Resulting in opening (on device 0) flow 16111, \n\r"
  12363     " which to be installed on scheduler port 0,\r\n"
  12364     " send it credits to fap 2047 queue 8191 (on that fap).\n\r"
  12365     " The flow will NOT be 'low jitter'. It will be regular (appose to virtual or aggregate)\n\r"
  12366     " Four subflows will be installed on that flow.\n\r",
  12367     "",
  12368     {0,
  12369      BIT(31),
  12370      0 ,
  12371      BIT(1) | BIT(20)
  12372     },
  12373     17,
  12374       /*
  12375        * Pointer to a function to call after symbolic parameter
  12376        * has been accepted.
  12377        */
  12378     (VAL_PROC_PTR)NULL
  12379   },
  12380   /* END fap20v_api_scheduler_flows.h interface }*/
  12381   /* { fap20v_api_packet.h interface */
  12382   {
  12383     PARAM_FAP20V_RECV_PACKET_ID,
  12384     "recv_packet",
  12385     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  12386     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  12387     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12388     0,0,0,0,0,0,0,
  12389     "This procedure receives packet.\r\n",
  12390     "Examples:\r\n"
  12391     "  fap20v traffic recv_packet 0 \r\n"
  12392     "Results in checking if there is packet in the device.\n\r"
  12393     "Case there is, read and print it.\r\n",
  12394     "",
  12395     {0,
  12396      BIT(22) },
  12397     2,
  12398       /*
  12399        * Pointer to a function to call after symbolic parameter
  12400        * has been accepted.
  12401        */
  12402     (VAL_PROC_PTR)NULL
  12403   },
  12404   {
  12405     PARAM_FAP20V_DEFRRED_RECV_PACKET_ID,
  12406     "recv_packet",
  12407     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  12408     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  12409     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12410     0,0,0,0,0,0,0,
  12411     "deferred receive (polling) packet.\r\n",
  12412     "Examples:\r\n"
  12413     "  fap20v deferred recv_packet 0x1 polling_rate 160\r\n"
  12414     "Results in deferred reading a packets (were designated to the CPU)\n\r"
  12415     " from device 0x1.\r\n",
  12416     "",
  12417     {BIT(24)},
  12418     2,
  12419       /*
  12420        * Pointer to a function to call after symbolic parameter
  12421        * has been accepted.
  12422        */
  12423     (VAL_PROC_PTR)NULL
  12424   },
  12425   {
  12426     PARAM_FAP20V_SEND_PACKET_ID,
  12427     "send_packet",
  12428     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  12429     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  12430     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12431     0,0,0,0,0,0,0,
  12432     "This procedure transmits one packet.\r\n",
  12433     "Examples:\r\n"
  12434     "  fap20v traffic send_packet 0 target_fap 120 data 0x12 0x775487 0x76767 \r\n"
  12435     "Results in sending to FAP with id of 120, from device 0, one packet\r\n"
  12436     "  with 12 bytes with the above data.\r\n",
  12437     "",
  12438     {0,
  12439      BIT(23) },
  12440     2,
  12441       /*
  12442        * Pointer to a function to call after symbolic parameter
  12443        * has been accepted.
  12444        */
  12445     (VAL_PROC_PTR)NULL
  12446   },
  12447   {
  12448     PARAM_FAP20V_TARGET_FAP_ID_ID,
  12449     "target_fap",
  12450     (PARAM_VAL_RULES *)&Fap20v_fap_id[0],
  12451     (sizeof(Fap20v_fap_id) / sizeof(Fap20v_fap_id[0])) - 1,
  12452     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12453     0,0,0,0,0,0,0,
  12454     "One of FAPs identifier in the system.\r\n",
  12455     "Examples:\r\n"
  12456     "  fap20v traffic send_packet 0 target_fap 120 data 0x12 0x775487 0x76767 \r\n"
  12457     "Results in sending to FAP with id of 120, from device 0, one packet\r\n"
  12458     "  with 12 bytes with the above data.\r\n",
  12459     "",
  12460     {0,
  12461      BIT(23) },
  12462     3,
  12463       /*
  12464        * Pointer to a function to call after symbolic parameter
  12465        * has been accepted.
  12466        */
  12467     (VAL_PROC_PTR)NULL
  12468   },
  12469   {
  12470     PARAM_FAP20V_PACKET_DATA_ID,
  12471     "data",
  12472     (PARAM_VAL_RULES *)&Fap20v_packet_data[0],
  12473     (sizeof(Fap20v_packet_data) / sizeof(Fap20v_packet_data[0])) - 1,
  12474     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12475     0,0,0,0,0,0,0,
  12476     "Data to carry on packet payload. In case that data length is less \r\n"
  12477     "then 64 bytes (16 long) it will be completed to 16 long with zero padding.\r\n",
  12478     "Examples:\r\n"
  12479     "  fap20v traffic send_packet 0 target_fap 120 data 0x12 0x775487 0x76767 \r\n"
  12480     "Results in sending to FAP with id of 120, from device 0, one packet\r\n"
  12481     "  with 12 bytes with the above data and 52 bytes of zero.\r\n",
  12482     "",
  12483     {0,
  12484      BIT(23) },
  12485     4,
  12486       /*
  12487        * Pointer to a function to call after symbolic parameter
  12488        * has been accepted.
  12489        */
  12490     (VAL_PROC_PTR)NULL
  12491   },
  12492   /* END fap20v_api_packet.h interface }*/
  12493   /* { fap20v_api_recycle_multicast.h interface */
  12494   {
  12495     PARAM_FAP20V_RECYCLE_MULTICAST_API_ID,
  12496     "recycle",
  12497     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  12498     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  12499     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12500     0,0,0,0,0,0,0,
  12501     "interface to fap20v driver recycle multicast module services.",
  12502     "Examples:\r\n"
  12503     "  fap20v multicast recycle open_internal_node 0 tree_id 12000 next_tree_id 900 recycle_q_index_0 100 recycle_q_index_1 29 \r\n"
  12504     "Results in setting on device 0 for tree id 12000 to be:\n\r"
  12505     "Internal node, which point to next tree id 900 and to recycling queue indices of 100 and 29.\r\n",
  12506     "",
  12507     {0,
  12508      BIT(17) | BIT(18) | BIT(19) | BIT(20) | BIT(21) },
  12509     2,
  12510       /*
  12511        * Pointer to a function to call after symbolic parameter
  12512        * has been accepted.
  12513        */
  12514     (VAL_PROC_PTR)NULL
  12515   },
  12516   {
  12517     PARAM_FAP20V_GET_RECYCLING_QUEUE_ID,
  12518     "get_recycling_queue",
  12519     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  12520     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  12521     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12522     0,0,0,0,0,0,0,
  12523     "This procedure gets recycling queue parameters.\r\n",
  12524     "Examples:\r\n"
  12525     "  fap20v multicast recycle get_recycling_queue 0 recycle_queue_index 12\r\n"
  12526     "Results in get and display recycle queue index 12.\r\n",
  12527     "",
  12528     {0,
  12529      BIT(21) },
  12530     3,
  12531       /*
  12532        * Pointer to a function to call after symbolic parameter
  12533        * has been accepted.
  12534        */
  12535     (VAL_PROC_PTR)NULL
  12536   },
  12537   {
  12538     PARAM_FAP20V_CLOSE_RECYCLING_QUEUE_ID,
  12539     "close_recycling_queue",
  12540     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  12541     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  12542     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12543     0,0,0,0,0,0,0,
  12544     "This procedure deletes a recycling queue by setting the FAP - \n\r"
  12545     "  'recycle_queue_index' to be invalid.\r\n",
  12546     "Examples:\r\n"
  12547     "  fap20v multicast recycle close_recycling_queue 0 recycle_queue_index 12\r\n"
  12548     "Results in recycle queue index 12 to be invalid.\r\n",
  12549     "",
  12550     {0,
  12551      BIT(21) },
  12552     3,
  12553       /*
  12554        * Pointer to a function to call after symbolic parameter
  12555        * has been accepted.
  12556        */
  12557     (VAL_PROC_PTR)NULL
  12558   },
  12559   {
  12560     PARAM_FAP20V_OPEN_RECYCLING_QUEUE_ID,
  12561     "open_recycling_queue",
  12562     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  12563     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  12564     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12565     0,0,0,0,0,0,0,
  12566     "This procedure adds a recycling queue by setting the\r\n"
  12567     "  'recycle_queue_index' to point to a the new 'queue_id'.\r\n",
  12568     "Examples:\r\n"
  12569     "  fap20v multicast recycle open_recycling_queue 0 recycle_queue_index 127 queue_id 8191\r\n"
  12570     "Results in recycle queue index 127 points to queue 8191 on device 0.\r\n",
  12571     "",
  12572     {0,
  12573      BIT(20) },
  12574     3,
  12575       /*
  12576        * Pointer to a function to call after symbolic parameter
  12577        * has been accepted.
  12578        */
  12579     (VAL_PROC_PTR)NULL
  12580   },
  12581   {
  12582     PARAM_FAP20V_RECYCLE_Q_INDEX_ID,
  12583     "recycle_queue_index",
  12584     (PARAM_VAL_RULES *)&Fap20v_recycle_queue_index[0],
  12585     (sizeof(Fap20v_recycle_queue_index) / sizeof(Fap20v_recycle_queue_index[0])) - 1,
  12586     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12587     0,0,0,0,0,0,0,
  12588     "Index in the Recycling-Queue table.\r\n",
  12589     "Examples:\r\n"
  12590     "  fap20v multicast recycle open_recycling_queue 0 recycle_queue_index 127 queue_id 8191\r\n"
  12591     "Results in recycle queue index 127 points to queue 8191 on device 0.\r\n",
  12592     "",
  12593     {0,
  12594      BIT(20) | BIT(21)},
  12595     4,
  12596       /*
  12597        * Pointer to a function to call after symbolic parameter
  12598        * has been accepted.
  12599        */
  12600     (VAL_PROC_PTR)NULL
  12601   },
  12602   {
  12603     PARAM_FAP20V_QUEUE_ID_ID,
  12604     "queue_id",
  12605     (PARAM_VAL_RULES *)&Fap20v_queue_id[0],
  12606     (sizeof(Fap20v_queue_id) / sizeof(Fap20v_queue_id[0])) - 1,
  12607     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12608     0,0,0,0,0,0,0,
  12609     "Queue identifier.\r\n",
  12610     "Examples:\r\n"
  12611     "  fap20v multicast recycle open_recycling_queue 0 recycle_queue_index 127 queue_id 8191\r\n"
  12612     "Results in recycle queue index 127 points to queue 8191 on device 0.\r\n",
  12613     "",
  12614     {0,
  12615      BIT(20) },
  12616     5,
  12617       /*
  12618        * Pointer to a function to call after symbolic parameter
  12619        * has been accepted.
  12620        */
  12621     (VAL_PROC_PTR)NULL
  12622   },
  12623   {
  12624     PARAM_FAP20V_CLOSE_RECYCLE_NODE_ID,
  12625     "close_node",
  12626     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  12627     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  12628     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12629     0,0,0,0,0,0,0,
  12630     "This procedure deletes one node form the recycle tree.\r\n",
  12631     "Examples:\r\n"
  12632     "  fap20v multicast recycle close_node 0 tree_id 1221 \r\n"
  12633     "Results in closing on device 0 for tree id 1221.\r\n",
  12634     "",
  12635     {0,
  12636      BIT(19) },
  12637     3,
  12638       /*
  12639        * Pointer to a function to call after symbolic parameter
  12640        * has been accepted.
  12641        */
  12642     (VAL_PROC_PTR)NULL
  12643   },
  12644   {
  12645     PARAM_FAP20V_GET_RECYCLE_NODE_ID,
  12646     "get_node",
  12647     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  12648     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  12649     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12650     0,0,0,0,0,0,0,
  12651     "This procedure get and display one node form the recycle tree.\r\n",
  12652     "Examples:\r\n"
  12653     "  fap20v multicast recycle get_node 0 tree_id 1221 \r\n"
  12654     "Results in getting and displaying on device 0 node on tree id 1221.\r\n",
  12655     "",
  12656     {0,
  12657      BIT(19) },
  12658     3,
  12659       /*
  12660        * Pointer to a function to call after symbolic parameter
  12661        * has been accepted.
  12662        */
  12663     (VAL_PROC_PTR)NULL
  12664   },
  12665   {
  12666     PARAM_FAP20V_OPEN_RECYCLE_LAST_NODE_ID,
  12667     "open_last_node",
  12668     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  12669     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  12670     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12671     0,0,0,0,0,0,0,
  12672     "This procedure adds one last node to the recycle tree.\r\n",
  12673     "Examples:\r\n"
  12674     "  fap20v multicast recycle open_last_node 0 tree_id 1221 queues 125 8191 \r\n"
  12675     "Results in setting on device 0 for tree id 1221 to be:\n\r"
  12676     "Last node, which point to 2 queues: 125 and 8191.\r\n",
  12677     "",
  12678     {0,
  12679      BIT(18) },
  12680     3,
  12681       /*
  12682        * Pointer to a function to call after symbolic parameter
  12683        * has been accepted.
  12684        */
  12685     (VAL_PROC_PTR)NULL
  12686   },
  12687   {
  12688     PARAM_FAP20V_QUEUES_ID_ID,
  12689     "queues",
  12690     (PARAM_VAL_RULES *)&Fap20v_recycle_multicast_queues[0],
  12691     (sizeof(Fap20v_recycle_multicast_queues) / sizeof(Fap20v_recycle_multicast_queues[0])) - 1,
  12692     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12693     0,0,0,0,0,0,0,
  12694     "1 or 2 queues identifiers.\r\n",
  12695     "Examples:\r\n"
  12696     "  fap20v multicast recycle open_last_node 0 tree_id 1221 queues 125 8191 \r\n"
  12697     "Results in setting on device 0 for tree id 1221 to be:\n\r"
  12698     "Last node, which point to 2 queues: 125 and 8191.\r\n",
  12699     "",
  12700     {0,
  12701      BIT(18) },
  12702     5,
  12703       /*
  12704        * Pointer to a function to call after symbolic parameter
  12705        * has been accepted.
  12706        */
  12707     (VAL_PROC_PTR)NULL
  12708   },
  12709   {
  12710     PARAM_FAP20V_OPEN_RECYCLE_INTERNAL_NODE_ID,
  12711     "open_internal_node",
  12712     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  12713     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  12714     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12715     0,0,0,0,0,0,0,
  12716     "This procedure adds one last node to the recycle tree.\r\n",
  12717     "Examples:\r\n"
  12718     "  fap20v multicast recycle open_internal_node 0 tree_id 12000 next_tree_id 900 recycle_q_index_0 100 recycle_q_index_1 29 \r\n"
  12719     "Results in setting on device 0 for tree id 12000 to be:\n\r"
  12720     "Internal node, which point to nect tree id 900 and to recycling queue indices of 100 and 29.\r\n",
  12721     "",
  12722     {0,
  12723      BIT(17) },
  12724     3,
  12725       /*
  12726        * Pointer to a function to call after symbolic parameter
  12727        * has been accepted.
  12728        */
  12729     (VAL_PROC_PTR)NULL
  12730   },
  12731   {
  12732     PARAM_FAP20V_TREE_ID_ID,
  12733     "tree_id",
  12734     (PARAM_VAL_RULES *)&Fap20v_recycle_multicast_tree_id[0],
  12735     (sizeof(Fap20v_recycle_multicast_tree_id) / sizeof(Fap20v_recycle_multicast_tree_id[0])) - 1,
  12736     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12737     0,0,0,0,0,0,0,
  12738     "Tree id in recycle tree.\r\n",
  12739     "Examples:\r\n"
  12740     "  fap20v multicast recycle open_internal_node 0 tree_id 12000 next_tree_id 900 recycle_q_index_0 100 recycle_q_index_1 29 \r\n"
  12741     "Results in setting on device 0 for tree id 12000 to be:\n\r"
  12742     "Internal node, which point to nect tree id 900 and to recycling queue indices of 100 and 29.\r\n",
  12743     "",
  12744     {0,
  12745      BIT(17) | BIT(18) | BIT(19)},
  12746     4,
  12747       /*
  12748        * Pointer to a function to call after symbolic parameter
  12749        * has been accepted.
  12750        */
  12751     (VAL_PROC_PTR)NULL
  12752   },
  12753   {
  12754     PARAM_FAP20V_NEXT_TREE_ID_ID,
  12755     "next_tree_id",
  12756     (PARAM_VAL_RULES *)&Fap20v_recycle_multicast_tree_id[0],
  12757     (sizeof(Fap20v_recycle_multicast_tree_id) / sizeof(Fap20v_recycle_multicast_tree_id[0])) - 1,
  12758     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12759     0,0,0,0,0,0,0,
  12760     "Next level tree id.\r\n",
  12761     "Examples:\r\n"
  12762     "  fap20v multicast recycle open_internal_node 0 tree_id 12000 next_tree_id 900 recycle_q_indices 100 29 \r\n"
  12763     "Results in setting on device 0 for tree id 12000 to be:\n\r"
  12764     "Internal node, which point to next tree id 900 and to recycling queue indices of 100 and 29.\r\n",
  12765     "",
  12766     {0,
  12767      BIT(17) },
  12768     5,
  12769       /*
  12770        * Pointer to a function to call after symbolic parameter
  12771        * has been accepted.
  12772        */
  12773     (VAL_PROC_PTR)NULL
  12774   },
  12775   {
  12776     PARAM_FAP20V_RECYCLE_Q_INDEX_0_ID,
  12777     "recycle_q_index_0",
  12778     (PARAM_VAL_RULES *)&Fap20v_recycle_queue_index[0],
  12779     (sizeof(Fap20v_recycle_queue_index) / sizeof(Fap20v_recycle_queue_index[0])) - 1,
  12780     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12781     0,0,0,0,0,0,0,
  12782     "index to \'Multicast Recycling-Queue\' table.\r\n",
  12783     "Examples:\r\n"
  12784     "  fap20v multicast recycle open_internal_node 0 tree_id 12000 next_tree_id 900 recycle_q_index_0 100 recycle_q_index_1 29 \r\n"
  12785     "Results in setting on device 0 for tree id 12000 to be:\n\r"
  12786     "Internal node, which point to next tree id 900 and to recycling queue indices of 100 and 29.\r\n",
  12787     "",
  12788     {0,
  12789      BIT(17) },
  12790     6,
  12791       /*
  12792        * Pointer to a function to call after symbolic parameter
  12793        * has been accepted.
  12794        */
  12795     (VAL_PROC_PTR)NULL
  12796   },
  12797   {
  12798     PARAM_FAP20V_RECYCLE_Q_INDEX_1_ID,
  12799     "recycle_q_index_1",
  12800     (PARAM_VAL_RULES *)&Fap20v_recycle_queue_index[0],
  12801     (sizeof(Fap20v_recycle_queue_index) / sizeof(Fap20v_recycle_queue_index[0])) - 1,
  12802     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12803     0,0,0,0,0,0,0,
  12804     "index to \'Multicast Recycling-Queue\' table.\r\n",
  12805     "Examples:\r\n"
  12806     "  fap20v multicast recycle open_internal_node 0 tree_id 12000 next_tree_id 900 recycle_q_index_0 100 recycle_q_index_1 29 \r\n"
  12807     "Results in setting on device 0 for tree id 12000 to be:\n\r"
  12808     "Internal node, which point to next tree id 900 and to recycling queue indices of 100 and 29.\r\n",
  12809     "",
  12810     {0,
  12811      BIT(17) },
  12812     7,
  12813       /*
  12814        * Pointer to a function to call after symbolic parameter
  12815        * has been accepted.
  12816        */
  12817     (VAL_PROC_PTR)NULL
  12818   },
  12819   /* END fap20v_api_recycle_multicast.h interface }*/
  12820 
  12821   /* { fap20v_api_ingress_queue.h interface */
  12822   {
  12823     PARAM_FAP20V_INGRESS_QUEUE_API_ID,
  12824     "in_queue",
  12825     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  12826     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  12827     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12828     0,0,0,0,0,0,0,
  12829     "interface to fap20v driver ingress queue module services.",
  12830     "Examples:\r\n"
  12831     "  fap20v in_queue set_queue_labeling 0 target_fap 10 base_queue 1001 label_type destination_mapping \r\n"
  12832     "Results in setting on device 0 for packet destained to fap 10,\n\r"
  12833     "the base queue 1001, with destination_mapping labeling\r\n",
  12834     "",
  12835     {0,
  12836      BIT(13) | BIT(14) | BIT(15) | BIT(16),
  12837      BIT(25) | BIT(27) | BIT(28),
  12838      0 },
  12839     1,
  12840       /*
  12841        * Pointer to a function to call after symbolic parameter
  12842        * has been accepted.
  12843        */
  12844     (VAL_PROC_PTR)NULL
  12845   },
  12846   {
  12847     PARAM_FAP20V_GET_UNICAST_DATA_QUEUES_ID,
  12848     "get_unicast_data_queues",
  12849     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  12850     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  12851     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12852     0,0,0,0,0,0,0,
  12853     "Gets 8 consecutive queues. These ingress queues belong to Unicast-Data packets.\r\n",
  12854     "Examples:\r\n"
  12855     "  fap20v in_queue get_unicast_data_queues 0 destination_id 23\r\n"
  12856     "Results in getting on device 0 destination 11 8 queue-parameters.\r\n",
  12857     "",
  12858     {0,
  12859      0,
  12860      BIT(25),
  12861      0 },
  12862     2,
  12863       /*
  12864        * Pointer to a function to call after symbolic parameter
  12865        * has been accepted.
  12866        */
  12867     (VAL_PROC_PTR)NULL
  12868   },
  12869   {
  12870     PARAM_FAP20V_GET_QUEUE_PARAMS_ID,
  12871     "get_queue_params",
  12872     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  12873     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  12874     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12875     0,0,0,0,0,0,0,
  12876     "Get from the device the ingress FAP queue configured parameters\r\n",
  12877     "Examples:\r\n"
  12878     "  fap20v in_queue get_queue_params 0 queue_id 11\r\n"
  12879     "Results in getting on device 0 queue 11 parameters.\r\n",
  12880     "",
  12881     {0,
  12882      BIT(16) },
  12883     2,
  12884       /*
  12885        * Pointer to a function to call after symbolic parameter
  12886        * has been accepted.
  12887        */
  12888     (VAL_PROC_PTR)NULL
  12889   },
  12890   {
  12891     PARAM_FAP20V_GET_QUEUE_SIZE_ID,
  12892     "get_queue_size",
  12893     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  12894     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  12895     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12896     0,0,0,0,0,0,0,
  12897     "Get from the device the ingress FAP queue byte size\r\n",
  12898     "Examples:\r\n"
  12899     "  fap20v in_queue get_queue_size 0 queue_id 11\r\n"
  12900     "Results in getting on device 0 queue 11 byte size.\r\n",
  12901     "",
  12902     {0,
  12903      BIT(16) },
  12904     2,
  12905       /*
  12906        * Pointer to a function to call after symbolic parameter
  12907        * has been accepted.
  12908        */
  12909     (VAL_PROC_PTR)NULL
  12910   },
  12911   {
  12912     PARAM_FAP20V_GET_NON_EMPTY_QUEUES_ID,
  12913     "get_non_empty_queues",
  12914     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  12915     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  12916     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12917     0,0,0,0,0,0,0,
  12918     "Get from the device the ingress FAP non empty queues\r\n",
  12919     "Examples:\r\n"
  12920     "  fap20v in_queue get_non_empty_queues 0\r\n"
  12921     "Results in getting on device 0 non-empty queues. 8K queues are getting scanned\r\n",
  12922     "",
  12923     {0,
  12924      0,
  12925      BIT(27) },
  12926     2,
  12927       /*
  12928        * Pointer to a function to call after symbolic parameter
  12929        * has been accepted.
  12930        */
  12931     (VAL_PROC_PTR)NULL
  12932   },
  12933   {
  12934     PARAM_FAP20V_GET_FLOW_DATA_BASEQ_ID,
  12935     "get_flow_data_baseq",
  12936     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  12937     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  12938     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12939     0,0,0,0,0,0,0,
  12940     "Get from the device the ingress FAP Flow-Data Base Queue Id\r\n",
  12941     "Examples:\r\n"
  12942     "  fap20v in_queue get_flow_data_baseq 0\r\n"
  12943     "Results in getting on device 0 the ingress FAP Flow-Data Base Queue Id\r\n",
  12944     "",
  12945     {0,
  12946      0,
  12947      BIT(27) },
  12948     2,
  12949       /*
  12950        * Pointer to a function to call after symbolic parameter
  12951        * has been accepted.
  12952        */
  12953     (VAL_PROC_PTR)NULL
  12954   },
  12955   {
  12956     PARAM_FAP20V_SET_FLOW_DATA_BASEQ_ID,
  12957     "set_flow_data_baseq",
  12958     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  12959     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  12960     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12961     0,0,0,0,0,0,0,
  12962     "Set from the device the ingress FAP Flow-Data Base Queue Id\r\n",
  12963     "Examples:\r\n"
  12964     "  fap20v in_queue set_flow_data_baseq 0 base_q 1000 increment true\r\n"
  12965     "Results in setting on device 0 the ingress FAP to Flow-Data Base Queue Id 1000\r\n"
  12966     " and with increment indicator\n\r",
  12967     "",
  12968     {0,
  12969      0,
  12970      BIT(28) },
  12971     2,
  12972       /*
  12973        * Pointer to a function to call after symbolic parameter
  12974        * has been accepted.
  12975        */
  12976     (VAL_PROC_PTR)NULL
  12977   },
  12978   {
  12979     PARAM_FAP20V_BASE_QUEUE_ID_ID,
  12980     "base_q",
  12981     (PARAM_VAL_RULES *)&Fap20v_queue_id[0],
  12982     (sizeof(Fap20v_queue_id) / sizeof(Fap20v_queue_id[0])) - 1,
  12983     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  12984     0,0,0,0,0,0,0,
  12985     "Flow-Data Base Queue Id\r\n",
  12986     "Examples:\r\n"
  12987     "  fap20v in_queue set_flow_data_baseq 0 base_q 1000 increment true\r\n"
  12988     "Results in setting on device 0 the ingress FAP to Flow-Data Base Queue Id 1000\r\n"
  12989     " and with increment indicator\n\r",
  12990     "",
  12991     {0,
  12992      0,
  12993      BIT(28) },
  12994     LAST_ORDINAL,
  12995       /*
  12996        * Pointer to a function to call after symbolic parameter
  12997        * has been accepted.
  12998        */
  12999     (VAL_PROC_PTR)NULL
  13000   },
  13001   {
  13002     PARAM_FAP20V_INCREMENT_INDICATOR_ID,
  13003     "increment",
  13004     (PARAM_VAL_RULES *)&Fap20v_true_false_vals[0],
  13005     (sizeof(Fap20v_true_false_vals) / sizeof(Fap20v_true_false_vals[0])) - 1,
  13006     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13007     0,0,0,0,0,0,0,
  13008     "Flow-Data Base Queue Id\r\n",
  13009     "Examples:\r\n"
  13010     "  fap20v in_queue set_flow_data_baseq 0 base_q 1000 increment true\r\n"
  13011     "Results in setting on device 0 the ingress FAP to Flow-Data Base Queue Id 1000\r\n"
  13012     " and with increment indicator\n\r",
  13013     "",
  13014     {0,
  13015      0,
  13016      BIT(28) },
  13017     LAST_ORDINAL,
  13018       /*
  13019        * Pointer to a function to call after symbolic parameter
  13020        * has been accepted.
  13021        */
  13022     (VAL_PROC_PTR)NULL
  13023   },
  13024   {
  13025     PARAM_FAP20V_CLOSE_QUEUE_ID,
  13026     "close_queue",
  13027     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  13028     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  13029     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13030     0,0,0,0,0,0,0,
  13031     "Close an ingress FAP queue.\r\n"
  13032     "Note the device is set with some default parameters.\n\r"
  13033     "These parameters do NOT cause the device not to send packets.\n\r",
  13034     "Examples:\r\n"
  13035     "  fap20v in_queue close_queue 0 queue_id 11 \r\n"
  13036     "Results in closing on device 0 queue 11.\r\n",
  13037     "",
  13038     {0,
  13039      BIT(16) },
  13040     2,
  13041       /*
  13042        * Pointer to a function to call after symbolic parameter
  13043        * has been accepted.
  13044        */
  13045     (VAL_PROC_PTR)NULL
  13046   },
  13047   {
  13048     PARAM_FAP20V_UPDATE_QUEUE_ID,
  13049     "update_queue",
  13050     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  13051     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  13052     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13053     0,0,0,0,0,0,0,
  13054     "Update an ingress FAP queue parameters.\r\n",
  13055     "Examples:\r\n"
  13056     "  fap20v in_queue update_queue 0 queue_id 11 target_fap 90 target_flow 1255 queue_type 0\r\n"
  13057     "Results in updating on device 0 queue 11 to point:\n\r"
  13058     " Target fap - 11, Target data port - 2, Target fap flow id - 1255 and queue type of 0.\r\n",
  13059     "",
  13060     {0,
  13061      BIT(15) },
  13062     2,
  13063       /*
  13064        * Pointer to a function to call after symbolic parameter
  13065        * has been accepted.
  13066        */
  13067     (VAL_PROC_PTR)NULL
  13068   },
  13069   {
  13070     PARAM_FAP20V_OPEN_QUEUE_ID,
  13071     "open_queue",
  13072     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  13073     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  13074     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13075     0,0,0,0,0,0,0,
  13076     "Open at the device an ingress FAP queue to a target FAP scheduler flow.\r\n",
  13077     "Examples:\r\n"
  13078     "  fap20v in_queue open_queue 0 queue_id 11 target_fap 90 target_data_port 2 target_flow 1255 queue_type 0\r\n"
  13079     "Results in openning on device 0 queue 11 to point:\n\r"
  13080     " Target fap - 11, Target data port - 2, Target fap flow id - 1255 and queue type of 0.\r\n",
  13081     "",
  13082     {0,
  13083      BIT(15) },
  13084     2,
  13085       /*
  13086        * Pointer to a function to call after symbolic parameter
  13087        * has been accepted.
  13088        */
  13089     (VAL_PROC_PTR)NULL
  13090   },
  13091   {
  13092     PARAM_FAP20V_DESTINATION_ID_ID,
  13093     "destination_id",
  13094     (PARAM_VAL_RULES *)&Fap20v_destination_id[0],
  13095     (sizeof(Fap20v_destination_id) / sizeof(Fap20v_destination_id[0])) - 1,
  13096     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13097     0,0,0,0,0,0,0,
  13098     "Target identifier. Range from 0 to 4095 (4K).\r\n",
  13099     "Examples:\r\n"
  13100     "  fap20v in_queue get_queue_params 0 queue_id 11\r\n"
  13101     "Results in getting on device 0 queue 11 parameters.\r\n",
  13102     "",
  13103     {0,
  13104      0,
  13105      BIT(25),
  13106      0 },
  13107     3,
  13108       /*
  13109        * Pointer to a function to call after symbolic parameter
  13110        * has been accepted.
  13111        */
  13112     (VAL_PROC_PTR)NULL
  13113   },
  13114   {
  13115     PARAM_FAP20V_QUEUE_ID_ID,
  13116     "queue_id",
  13117     (PARAM_VAL_RULES *)&Fap20v_queue_id[0],
  13118     (sizeof(Fap20v_queue_id) / sizeof(Fap20v_queue_id[0])) - 1,
  13119     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13120     0,0,0,0,0,0,0,
  13121     "Queue identifier.\r\n",
  13122     "Examples:\r\n"
  13123     "  fap20v in_queue open_queue 0 queue_id 11 target_fap 90 target_data_port 2 target_flow 1255 queue_type 0\r\n"
  13124     "Results in openning on device 0 queue 11 to point:\n\r"
  13125     " Target fap - 11, Target data port - 2, Target fap flow id - 1255 and queue type of 0.\r\n",
  13126     "",
  13127     {0,
  13128      BIT(15) | BIT(16)},
  13129     3,
  13130       /*
  13131        * Pointer to a function to call after symbolic parameter
  13132        * has been accepted.
  13133        */
  13134     (VAL_PROC_PTR)NULL
  13135   },
  13136   {
  13137     PARAM_FAP20V_TARGET_FAP_ID_ID,
  13138     "target_fap",
  13139     (PARAM_VAL_RULES *)&Fap20v_fap_id[0],
  13140     (sizeof(Fap20v_fap_id) / sizeof(Fap20v_fap_id[0])) - 1,
  13141     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13142     0,0,0,0,0,0,0,
  13143     "The target FAP for the queue.\r\n",
  13144     "Examples:\r\n"
  13145     "  fap20v in_queue open_queue 0 queue_id 11 target_fap 90 target_data_port 2 target_flow 1255 queue_type 0\r\n"
  13146     "Results in openning on device 0 queue 11 to point:\n\r"
  13147     " Target fap - 11, Target data port - 2, Target fap flow id - 1255 and queue type of 0.\r\n",
  13148     "",
  13149     {0,
  13150      BIT(15) },
  13151     4,
  13152       /*
  13153        * Pointer to a function to call after symbolic parameter
  13154        * has been accepted.
  13155        */
  13156     (VAL_PROC_PTR)NULL
  13157   },
  13158   {
  13159     PARAM_FAP20V_TARGET_DATA_PORT_ID,
  13160     "target_data_port",
  13161     (PARAM_VAL_RULES *)&Fap20v_data_port_id[0],
  13162     (sizeof(Fap20v_data_port_id) / sizeof(Fap20v_data_port_id[0])) - 1,
  13163     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13164     0,0,0,0,0,0,0,
  13165     "The target Data-Port for the queue.\r\n",
  13166     "Examples:\r\n"
  13167     "  fap20v in_queue open_queue 0 queue_id 11 target_fap 90 target_data_port 2 target_flow 1255 queue_type 0\r\n"
  13168     "Results in openning on device 0 queue 11 to point:\n\r"
  13169     " Target fap - 11, Target data port - 2, Target fap flow id - 1255 and queue type of 0.\r\n",
  13170     "",
  13171     {0,
  13172      BIT(15) },
  13173     5,
  13174       /*
  13175        * Pointer to a function to call after symbolic parameter
  13176        * has been accepted.
  13177        */
  13178     (VAL_PROC_PTR)NULL
  13179   },
  13180   {
  13181     PARAM_FAP20V_TARGET_FLOW_ID_ID,
  13182     "target_flow",
  13183     (PARAM_VAL_RULES *)&Fap20v_flow_id[0],
  13184     (sizeof(Fap20v_flow_id) / sizeof(Fap20v_flow_id[0])) - 1,
  13185     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13186     0,0,0,0,0,0,0,
  13187     "Flow, in egress scheduler, assigned for that queue.\r\n",
  13188     "Examples:\r\n"
  13189     "  fap20v in_queue open_queue 0 queue_id 11 target_fap 90 target_data_port 2 target_flow 1255 queue_type 0\r\n"
  13190     "Results in openning on device 0 queue 11 to point:\n\r"
  13191     " Target fap - 11, Target data port - 2, Target fap flow id - 1255 and queue type of 0.\r\n",
  13192     "",
  13193     {0,
  13194      BIT(15) },
  13195     6,
  13196       /*
  13197        * Pointer to a function to call after symbolic parameter
  13198        * has been accepted.
  13199        */
  13200     (VAL_PROC_PTR)NULL
  13201   },
  13202   {
  13203     PARAM_FAP20V_QUEUE_TYPE_ID,
  13204     "queue_type",
  13205     (PARAM_VAL_RULES *)&Fap20v_queue_type[0],
  13206     (sizeof(Fap20v_queue_type) / sizeof(Fap20v_queue_type[0])) - 1,
  13207     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13208     0,0,0,0,0,0,0,
  13209     "The queue type.\r\n",
  13210     "Examples:\r\n"
  13211     "  fap20v in_queue open_queue 0 queue_id 11 target_fap 90 target_data_port 2 target_flow 1255 queue_type 0\r\n"
  13212     "Results in openning on device 0 queue 11 to point:\n\r"
  13213     " Target fap - 11, Target data port - 2, Target fap flow id - 1255 and queue type of 0.\r\n",
  13214     "",
  13215     {0,
  13216      BIT(15) },
  13217     7,
  13218       /*
  13219        * Pointer to a function to call after symbolic parameter
  13220        * has been accepted.
  13221        */
  13222     (VAL_PROC_PTR)NULL
  13223   },
  13224   {
  13225     PARAM_FAP20V_TARGET_FAP_ID_ID,
  13226     "target_fap",
  13227     (PARAM_VAL_RULES *)&Fap20v_fap_id[0],
  13228     (sizeof(Fap20v_fap_id) / sizeof(Fap20v_fap_id[0])) - 1,
  13229     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13230     0,0,0,0,0,0,0,
  13231     "Target FAP identifier.\r\n",
  13232     "Examples:\r\n"
  13233     "  fap20v in_queue set_queue_labeling 0 target_fap 10 base_queue 1001 label_type destination_mapping \r\n"
  13234     "Results in setting on device 0 for packet destained to fap 10,\n\r"
  13235     "the base queue 1001, with destination_mapping labeling\r\n",
  13236     "",
  13237     {0,
  13238      BIT(13) | BIT(14)},
  13239     3,
  13240       /*
  13241        * Pointer to a function to call after symbolic parameter
  13242        * has been accepted.
  13243        */
  13244     (VAL_PROC_PTR)NULL
  13245   },
  13246   {
  13247     PARAM_FAP20V_BASE_QUEUE_ID_ID,
  13248     "base_queue",
  13249     (PARAM_VAL_RULES *)&Fap20v_queue_id[0],
  13250     (sizeof(Fap20v_queue_id) / sizeof(Fap20v_queue_id[0])) - 1,
  13251     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13252     0,0,0,0,0,0,0,
  13253     "Base queue identifier to use with the target FAP.\r\n",
  13254     "Examples:\r\n"
  13255     "  fap20v in_queue set_queue_labeling 0 target_fap 10 base_queue 1001 label_type destination_mapping \r\n"
  13256     "Results in setting on device 0 for packet destained to fap 10,\n\r"
  13257     "the base queue 1001, with destination_mapping labeling\r\n",
  13258     "",
  13259     {0,
  13260      BIT(13)},
  13261     4,
  13262       /*
  13263        * Pointer to a function to call after symbolic parameter
  13264        * has been accepted.
  13265        */
  13266     (VAL_PROC_PTR)NULL
  13267   },
  13268   /* END fap20v_api_ingress_queue.h interface }*/
  13269   /* { fap20v_api_queue_id_allocator.h interface */
  13270   {
  13271     PARAM_FAP20V_ALLOCATOR_API_ID,
  13272     "allocator",
  13273     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  13274     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  13275     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13276     0,0,0,0,0,0,0,
  13277     "interface to fap20v driver ingress-queue-id/scheduler-flow-id allocator\r\n"
  13278     "  module services. This module is a management aid of queue identifiers.\r\n"
  13279     "  All of this services DO NOT read/write the device but rather\r\n"
  13280     "  effect driver private structure.",
  13281     "Examples:\r\n"
  13282     "  fap20v allocator queue set_range 1 min 12 max 1000\r\n"
  13283     "Results in setting on device 1 queue idetifier range to look from to [12 - 1000]\r\n",
  13284     "",
  13285     {0,
  13286      BIT(10) | BIT(11) | BIT(12)| BIT(27) | BIT(7) | BIT(8) | BIT(9) },
  13287     1,
  13288       /*
  13289        * Pointer to a function to call after symbolic parameter
  13290        * has been accepted.
  13291        */
  13292     (VAL_PROC_PTR)NULL
  13293   },
  13294   {
  13295     PARAM_FAP20V_QUEUE_ID_ALLOCATOR_API_ID,
  13296     "queue",
  13297     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  13298     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  13299     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13300     0,0,0,0,0,0,0,
  13301     "interface to fap20v driver ingress queue id allocator module services.\r\n"
  13302     "  This module is a management aid of queue identifiers. All of this\r\n"
  13303     "  services DO NOT read/write the device but rather effect driver\r\n"
  13304     "  private structure.",
  13305     "Examples:\r\n"
  13306     "  fap20v allocator queue set_range 1 min 12 max 1000\r\n"
  13307     "Results in setting on device 1 queue idetifier range to look from to [12 - 1000]\r\n",
  13308     "",
  13309     {0,
  13310      BIT(10) | BIT(11) | BIT(12)| BIT(27) },
  13311     2,
  13312       /*
  13313        * Pointer to a function to call after symbolic parameter
  13314        * has been accepted.
  13315        */
  13316     (VAL_PROC_PTR)NULL
  13317   },
  13318   {
  13319     PARAM_FAP20V_PRINT_ALLOC_QUEUE_ID,
  13320     "display_allocator",
  13321     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  13322     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  13323     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13324     0,0,0,0,0,0,0,
  13325     "Display the driver queue-id allocator.\r\n",
  13326     "Examples:\r\n"
  13327     "  fap20v allocator queue display_allocator 1\r\n"
  13328     "Results in displaying, on device 1, queue identifier allocator\r\n",
  13329     "",
  13330     {0,
  13331      BIT(27)},
  13332     3,
  13333       /*
  13334        * Pointer to a function to call after symbolic parameter
  13335        * has been accepted.
  13336        */
  13337     (VAL_PROC_PTR)NULL
  13338   },
  13339   {
  13340     PARAM_FAP20V_SET_QUEUE_ID_RANGE_ID,
  13341     "set_range",
  13342     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  13343     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  13344     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13345     0,0,0,0,0,0,0,
  13346     "Set the range, out of [0-8191], to search queue identifier from.\r\n",
  13347     "Examples:\r\n"
  13348     "  fap20v allocator queue set_range 1 min 12 max 1000\r\n"
  13349     "Results in setting on device 1 queue idetifier range to look from to [12 - 1000]\r\n",
  13350     "",
  13351     {0,
  13352      BIT(10)},
  13353     3,
  13354       /*
  13355        * Pointer to a function to call after symbolic parameter
  13356        * has been accepted.
  13357        */
  13358     (VAL_PROC_PTR)NULL
  13359   },
  13360   {
  13361     PARAM_FAP20V_MIN_QUEUE_ID_ID,
  13362     "min",
  13363     (PARAM_VAL_RULES *)&Fap20v_queue_id[0],
  13364     (sizeof(Fap20v_queue_id) / sizeof(Fap20v_queue_id[0])) - 1,
  13365     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13366     0,0,0,0,0,0,0,
  13367     "Minimum queue id to search from.\r\n",
  13368     "Examples:\r\n"
  13369     "  fap20v allocator queue set_range 1 min 12 max 1000\r\n"
  13370     "Results in setting on device 1 queue idetifier range to look from to [12 - 1000]\r\n",
  13371     "",
  13372     {0,
  13373      BIT(10)},
  13374     4,
  13375       /*
  13376        * Pointer to a function to call after symbolic parameter
  13377        * has been accepted.
  13378        */
  13379     (VAL_PROC_PTR)NULL
  13380   },
  13381   {
  13382     PARAM_FAP20V_MAX_QUEUE_ID_ID,
  13383     "max",
  13384     (PARAM_VAL_RULES *)&Fap20v_queue_id[0],
  13385     (sizeof(Fap20v_queue_id) / sizeof(Fap20v_queue_id[0])) - 1,
  13386     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13387     0,0,0,0,0,0,0,
  13388     "Maximal queue id to search from (this number id is included in the search).\r\n",
  13389     "Examples:\r\n"
  13390     "  fap20v allocator queue set_range 1 min 12 max 1000\r\n"
  13391     "Results in setting on device 1 queue idetifier range to look from to [12 - 1000]\r\n",
  13392     "",
  13393     {0,
  13394      BIT(10)},
  13395     5,
  13396       /*
  13397        * Pointer to a function to call after symbolic parameter
  13398        * has been accepted.
  13399        */
  13400     (VAL_PROC_PTR)NULL
  13401   },
  13402   {
  13403     PARAM_FAP20V_ALLOC_QUEUE_ID_BLOCK_ID,
  13404     "alloc",
  13405     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  13406     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  13407     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13408     0,0,0,0,0,0,0,
  13409     "Get free queue identifier within the specified range.\r\n"
  13410     "  Mark that queues identifiers as 'taken'.\r\n",
  13411     "Examples:\r\n"
  13412     "  fap20v allocator queue alloc 1\r\n"
  13413     "Results in allocating on device 1, block of consecutive queue idetifiers.\r\n"
  13414     "The base queue is given back. The block size is taken from the device class.\n\r"
  13415     "class_a: 1 queue block, class_b: 2, class_c: 4 and class_a: 8 queues block.\n\r",
  13416     "",
  13417     {0,
  13418      BIT(11)},
  13419     3,
  13420       /*
  13421        * Pointer to a function to call after symbolic parameter
  13422        * has been accepted.
  13423        */
  13424     (VAL_PROC_PTR)NULL
  13425   },
  13426   {
  13427     PARAM_FAP20V_FREE_QUEUE_ID_ID,
  13428     "free",
  13429     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  13430     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  13431     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13432     0,0,0,0,0,0,0,
  13433     "Free the queue identifiers block of identifiers.\r\n",
  13434     "Examples:\r\n"
  13435     "  fap20v allocator queue free 0 base_queue 11\r\n"
  13436     "Results in freeing on device 0, block of consecutive queue idetifiers,\r\n"
  13437     "starting from base queue 11. The block size is taken from the device class.\n\r"
  13438     "class_a: 1 queue block, class_b: 2, class_c: 4 and class_a: 8 queues block.\n\r",
  13439     "",
  13440     {0,
  13441      BIT(12)},
  13442     3,
  13443       /*
  13444        * Pointer to a function to call after symbolic parameter
  13445        * has been accepted.
  13446        */
  13447     (VAL_PROC_PTR)NULL
  13448   },
  13449   {
  13450     PARAM_FAP20V_QUEUE_BASE_ID_ID,
  13451     "base_queue",
  13452     (PARAM_VAL_RULES *)&Fap20v_flow_id[0],
  13453     (sizeof(Fap20v_flow_id) / sizeof(Fap20v_flow_id[0])) - 1,
  13454     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13455     0,0,0,0,0,0,0,
  13456     "queue base identifier to free.\r\n",
  13457     "Examples:\r\n"
  13458     "  fap20v allocator queue free 0 base_queue 11 nof_queues 8\r\n"
  13459     "Results in freeing on device 0, block of 8 consecutive queue idetifiers,\r\n"
  13460     "starting from base queue 11. \n\r",
  13461     "",
  13462     {0,
  13463      BIT(12)},
  13464     5,
  13465       /*
  13466        * Pointer to a function to call after symbolic parameter
  13467        * has been accepted.
  13468        */
  13469     (VAL_PROC_PTR)NULL
  13470   },
  13471   {
  13472     PARAM_FAP20V_NOF_QUEUES_ID,
  13473     "nof_queues",
  13474     (PARAM_VAL_RULES *)&Fap20v_nof_queues[0],
  13475     (sizeof(Fap20v_nof_queues) / sizeof(Fap20v_nof_queues[0])) - 1,
  13476     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13477     0,0,0,0,0,0,0,
  13478     "Number of queues.\r\n",
  13479     "Examples:\r\n"
  13480     "  fap20v allocator queue free 0 base_queue 11 nof_queues 8\r\n"
  13481     "Results in freeing on device 0, block of 8 consecutive queue idetifiers,\r\n"
  13482     "starting from base queue 11. \n\r",
  13483     "",
  13484     {0,
  13485      BIT(11) | BIT(12)
  13486     },
  13487     LAST_ORDINAL,
  13488       /*
  13489        * Pointer to a function to call after symbolic parameter
  13490        * has been accepted.
  13491        */
  13492     (VAL_PROC_PTR)NULL
  13493   },
  13494 
  13495   /* END fap20v_api_queue_id_allocator.h interface }*/
  13496   /* { fap20v_api_flow_id_allocator.h interface */
  13497   {
  13498     PARAM_FAP20V_FLOW_ID_ALLOCATOR_API_ID,
  13499     "flow",
  13500     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  13501     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  13502     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13503     0,0,0,0,0,0,0,
  13504     "interface to fap20v driver scheduler-flow/queue id allocator module services.\r\n"
  13505     "  This module is a management aid of flow identifiers. All of this\r\n"
  13506     "  services DO NOT read/write the device but rather effect driver\r\n"
  13507     "  private structure.",
  13508     "Examples:\r\n"
  13509     "  fap20v allocator flow set_range 0 min 12 max 1000\r\n"
  13510     "Results in setting on device 1 flow idetifier range to look from to: [12 - 1000]\r\n",
  13511     "",
  13512     {0,
  13513      BIT(7) | BIT(8) | BIT(9) },
  13514     2,
  13515       /*
  13516        * Pointer to a function to call after symbolic parameter
  13517        * has been accepted.
  13518        */
  13519     (VAL_PROC_PTR)NULL
  13520   },
  13521   {
  13522     PARAM_FAP20V_PRINT_ALLOC_FLOW_ID,
  13523     "display_allocator",
  13524     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  13525     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  13526     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13527     0,0,0,0,0,0,0,
  13528     "Display the driver flow-id allocator.\r\n",
  13529     "Examples:\r\n"
  13530     "  fap20v allocator flow display_allocator 1\r\n"
  13531     "Results in displaying, on device 1, flow identifier allocator\r\n",
  13532     "",
  13533     {0,
  13534      BIT(8)},
  13535     3,
  13536       /*
  13537        * Pointer to a function to call after symbolic parameter
  13538        * has been accepted.
  13539        */
  13540     (VAL_PROC_PTR)NULL
  13541   },
  13542   {
  13543     PARAM_FAP20V_SET_SCHEDULER_FLOW_ID_RANGE_ID,
  13544     "set_range",
  13545     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  13546     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  13547     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13548     0,0,0,0,0,0,0,
  13549     "Set the range, out of [0-8191], to search flow identifier from.\r\n",
  13550     "Examples:\r\n"
  13551     "  fap20v allocator flow set_range 0 min 12 max 1000\r\n"
  13552     "Results in setting on device 1 flow idetifier range to look from to: [12 - 1000]\r\n",
  13553     "",
  13554     {0,
  13555      BIT(7)},
  13556     3,
  13557       /*
  13558        * Pointer to a function to call after symbolic parameter
  13559        * has been accepted.
  13560        */
  13561     (VAL_PROC_PTR)NULL
  13562   },
  13563   {
  13564     PARAM_FAP20V_MIN_FLOW_ID_ID,
  13565     "min",
  13566     (PARAM_VAL_RULES *)&Fap20v_flow_id[0],
  13567     (sizeof(Fap20v_flow_id) / sizeof(Fap20v_flow_id[0])) - 1,
  13568     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13569     0,0,0,0,0,0,0,
  13570     "Minimum flow id to search from.\r\n",
  13571     "Examples:\r\n"
  13572     "  fap20v allocator flow set_range 0 min 12 max 1000\r\n"
  13573     "Results in setting on device 1 flow idetifier range to look from to: [12 - 1000]\r\n",
  13574     "",
  13575     {0,
  13576      BIT(7)},
  13577     4,
  13578       /*
  13579        * Pointer to a function to call after symbolic parameter
  13580        * has been accepted.
  13581        */
  13582     (VAL_PROC_PTR)NULL
  13583   },
  13584   {
  13585     PARAM_FAP20V_MAX_FLOW_ID_ID,
  13586     "max",
  13587     (PARAM_VAL_RULES *)&Fap20v_flow_id[0],
  13588     (sizeof(Fap20v_flow_id) / sizeof(Fap20v_flow_id[0])) - 1,
  13589     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13590     0,0,0,0,0,0,0,
  13591     "Maximal flow id to search from (this number id is.\r\n"
  13592     "  included in the search).\r\n",
  13593     "Examples:\r\n"
  13594     "  fap20v allocator flow set_range 0 min 12 max 1000\r\n"
  13595     "Results in setting on device 1 flow idetifier range to look from to: [12 - 1000]\r\n",
  13596     "",
  13597     {0,
  13598      BIT(7)},
  13599     5,
  13600       /*
  13601        * Pointer to a function to call after symbolic parameter
  13602        * has been accepted.
  13603        */
  13604     (VAL_PROC_PTR)NULL
  13605   },
  13606   {
  13607     PARAM_FAP20V_ALLOC_SCHEDULER_FLOW_ID_ID,
  13608     "alloc",
  13609     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  13610     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  13611     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13612     0,0,0,0,0,0,0,
  13613     "Get free flow identifier within the specified range.\r\n"
  13614     "  Mark that flows identifiers as 'taken'\r\n",
  13615     "Examples:\r\n"
  13616     "  fap20v allocator flow set_range 0 min 12 max 1000\r\n"
  13617     "Results in setting on device 1 flow idetifier range to look from to: [12 - 1000]\r\n",
  13618     "",
  13619     {0,
  13620      BIT(8)},
  13621     3,
  13622       /*
  13623        * Pointer to a function to call after symbolic parameter
  13624        * has been accepted.
  13625        */
  13626     (VAL_PROC_PTR)NULL
  13627   },
  13628   {
  13629     PARAM_FAP20V_FREE_SCHEDULER_FLOW_ID_ID,
  13630     "free",
  13631     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  13632     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  13633     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13634     0,0,0,0,0,0,0,
  13635     "Free the flow identifier id.\r\n",
  13636     "Examples:\r\n"
  13637     "  fap20v allocator flow free 0 flow_id 11\r\n"
  13638    "Results in setting on device 0, that flow id 11 is free for allocation again.\r\n",
  13639     "",
  13640     {0,
  13641      BIT(9)},
  13642     3,
  13643       /*
  13644        * Pointer to a function to call after symbolic parameter
  13645        * has been accepted.
  13646        */
  13647     (VAL_PROC_PTR)NULL
  13648   },
  13649   {
  13650     PARAM_FAP20V_FLOW_ID_ID,
  13651     "flow_id",
  13652     (PARAM_VAL_RULES *)&Fap20v_flow_id[0],
  13653     (sizeof(Fap20v_flow_id) / sizeof(Fap20v_flow_id[0])) - 1,
  13654     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13655     0,0,0,0,0,0,0,
  13656     "flow identifier to free.\r\n",
  13657     "Examples:\r\n"
  13658     "  fap20v allocator flow free 0 flow_id 11\r\n"
  13659     "Results in setting on device 0, that flow id 11 is free for allocation again.\r\n",
  13660     "",
  13661     {0,
  13662      BIT(9)},
  13663     4,
  13664       /*
  13665        * Pointer to a function to call after symbolic parameter
  13666        * has been accepted.
  13667        */
  13668     (VAL_PROC_PTR)NULL
  13669   },
  13670   /* END fap20v_api_flow_id_allocator.h interface }*/
  13671   /* { fap20v_api_scheduler_ports.h interface */
  13672   {
  13673     PARAM_FAP20V_SCHEDULER_API_ID,
  13674     "scheduler",
  13675     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  13676     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  13677     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13678     0,0,0,0,0,0,0,
  13679     "interface to fap20v driver scheduler ports/flows services.",
  13680     "Examples:\r\n"
  13681     "  fap20v scheduler port set_scheduler_port 0x1 port_id 10 credit_bandwidth 100 nominal_bandwidth 90 wfq0_weight 2\r\n"
  13682     "Results in setting on device 1 scheduler port 10 to:\r\n"
  13683     " 100 MegbitSec credit, 90 MegbitSec nominal bandwidth,\r\n"
  13684     " and with wfq0 weight of 2% for WFQ1 (98% for EDF1).\r\n",
  13685     "",
  13686     {0,
  13687      BIT(0) | BIT(1) | BIT(2) | BIT(24) | BIT(25) | BIT(26) | BIT(28) | BIT(29) | BIT(30) | BIT(31),
  13688      0,
  13689      BIT(0) | BIT(1) | BIT(19) | BIT(20)
  13690     },
  13691     1,
  13692       /*
  13693        * Pointer to a function to call after symbolic parameter
  13694        * has been accepted.
  13695        */
  13696     (VAL_PROC_PTR)NULL
  13697   },
  13698   {
  13699     PARAM_FAP20V_SCHEDULER_PORT_API_ID,
  13700     "port",
  13701     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  13702     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  13703     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13704     0,0,0,0,0,0,0,
  13705     "interface to fap20v driver scheduler ports services.",
  13706     "Examples:\r\n"
  13707     "  fap20v scheduler port set_scheduler_port 0x1 port_id 10 credit_bandwidth 100 nominal_bandwidth 90 wfq0_weight 2\r\n"
  13708     "Results in setting on device 1 scheduler port 10 to:\r\n"
  13709     " 100 MegbitSec credit, 90 MegbitSec nominal bandwidth,\r\n"
  13710     " and with wfq0 weight of 2% for WFQ1 (98% for EDF1).\r\n",
  13711     "",
  13712     {0,
  13713      BIT(0) | BIT(1) | BIT(2) | BIT(28)},
  13714     2,
  13715       /*
  13716        * Pointer to a function to call after symbolic parameter
  13717        * has been accepted.
  13718        */
  13719     (VAL_PROC_PTR)NULL
  13720   },
  13721   {
  13722     PARAM_FAP20V_CLOSE_SCHEDULER_PORT_ID,
  13723     "close_scheduler_port",
  13724     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  13725     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  13726     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13727     0,0,0,0,0,0,0,
  13728     "close the scheduler port on the device.\r\n",
  13729     "Examples:\r\n"
  13730     "  fap20v scheduler port close_scheduler_port 0x1 port_id 10\r\n"
  13731     "Results in closing on device 1 scheduler port 10.\r\n",
  13732     "",
  13733     {0,
  13734      BIT(2)},
  13735     3,
  13736       /*
  13737        * Pointer to a function to call after symbolic parameter
  13738        * has been accepted.
  13739        */
  13740     (VAL_PROC_PTR)NULL
  13741   },
  13742   {
  13743     PARAM_FAP20V_GET_SCHEDULER_PORT_ID,
  13744     "get_scheduler_port",
  13745     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  13746     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  13747     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13748     0,0,0,0,0,0,0,
  13749     "gets the scheduler port parameters.\r\n",
  13750     "Examples:\r\n"
  13751     "  fap20v scheduler port get_scheduler_port 0x1 port_id 10\r\n"
  13752     "Results in getting on device 1 scheduler port 10 parameters.\r\n",
  13753     "",
  13754     {0,
  13755      BIT(1)},
  13756     3,
  13757       /*
  13758        * Pointer to a function to call after symbolic parameter
  13759        * has been accepted.
  13760        */
  13761     (VAL_PROC_PTR)NULL
  13762   },
  13763   {
  13764     PARAM_FAP20V_SET_SCHEDULER_RECYCLE_PORT_ID,
  13765     "set_scheduler_recycle_port",
  13766     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  13767     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  13768     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13769     0,0,0,0,0,0,0,
  13770     "sets the scheduler port parameters.\r\n",
  13771     "Examples:\r\n"
  13772     "  fap20v scheduler port set_scheduler_recycle_port 0x1 credit_bandwidth 100\r\n"
  13773     "Results in setting on device 1 scheduler port 64 (recycle) to:\r\n"
  13774     " 100 MegbitSec credit.\r\n",
  13775     "",
  13776     {0,
  13777      BIT(28)},
  13778     3,
  13779       /*
  13780        * Pointer to a function to call after symbolic parameter
  13781        * has been accepted.
  13782        */
  13783     (VAL_PROC_PTR)NULL
  13784   },
  13785   {
  13786     PARAM_FAP20V_SET_SCHEDULER_PORT_ID,
  13787     "set_scheduler_port",
  13788     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  13789     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  13790     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13791     0,0,0,0,0,0,0,
  13792     "sets the scheduler port parameters.\r\n",
  13793     "Examples:\r\n"
  13794     "  fap20v scheduler port set_scheduler_port 0x1 port_id 10 credit_bandwidth 100 nominal_bandwidth 90 wfq0_weight 2\r\n"
  13795     "Results in setting on device 1 scheduler port 10 to:\r\n"
  13796     " 100 MegbitSec credit, 90 MegbitSec nominal bandwidth,\r\n"
  13797     " and with wfq0 weight of 2% for WFQ1 (98% for EDF1).\r\n",
  13798     "",
  13799     {0,
  13800      BIT(0)},
  13801     3,
  13802       /*
  13803        * Pointer to a function to call after symbolic parameter
  13804        * has been accepted.
  13805        */
  13806     (VAL_PROC_PTR)NULL
  13807   },
  13808   {
  13809     PARAM_FAP20V_SCHEDULER_PORT_ID_ID,
  13810     "port_id",
  13811     (PARAM_VAL_RULES *)&Fap20v_scheduler_port_id_vals[0],
  13812     (sizeof(Fap20v_scheduler_port_id_vals) / sizeof(Fap20v_scheduler_port_id_vals[0])) - 1,
  13813     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13814     0,0,0,0,0,0,0,
  13815     "Scheduler port to add. Range: 0-64.\r\n",
  13816     "Examples:\r\n"
  13817     "  fap20v scheduler port set_scheduler_port 0x1 port_id 10 credit_bandwidth 100 nominal_bandwidth 90 wfq0_weight 2\r\n"
  13818     "Results in setting on device 1 scheduler port 10 to:\r\n"
  13819     " 100 MegbitSec credit, 90 MegbitSec nominal bandwidth,\r\n"
  13820     " and with wfq0 weight of 2% for WFQ1 (98% for EDF1).\r\n",
  13821     "",
  13822     {0,
  13823      BIT(1) | BIT(2)},
  13824     4,
  13825       /*
  13826        * Pointer to a function to call after symbolic parameter
  13827        * has been accepted.
  13828        */
  13829     (VAL_PROC_PTR)NULL
  13830   },
  13831   {
  13832     PARAM_FAP20V_SCHEDULER_PORT_ID_ID,
  13833     "port_id",
  13834     (PARAM_VAL_RULES *)&Fap20v_scheduler_port_id_no_recyle_vals[0],
  13835     (sizeof(Fap20v_scheduler_port_id_no_recyle_vals) / sizeof(Fap20v_scheduler_port_id_no_recyle_vals[0])) - 1,
  13836     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13837     0,0,0,0,0,0,0,
  13838     "Scheduler port to add. Range: 0-64.\r\n",
  13839     "Examples:\r\n"
  13840     "  fap20v scheduler port set_scheduler_port 0x1 port_id 10 credit_bandwidth 100 nominal_bandwidth 90 wfq0_weight 2\r\n"
  13841     "Results in setting on device 1 scheduler port 10 to:\r\n"
  13842     " 100 MegbitSec credit, 90 MegbitSec nominal bandwidth,\r\n"
  13843     " and with wfq0 weight of 2% for WFQ1 (98% for EDF1).\r\n",
  13844     "",
  13845     {0,
  13846      BIT(0)},
  13847     4,
  13848       /*
  13849        * Pointer to a function to call after symbolic parameter
  13850        * has been accepted.
  13851        */
  13852     (VAL_PROC_PTR)NULL
  13853   },
  13854   {
  13855     PARAM_FAP20V_CREDIT_BANDWIDTH_ID,
  13856     "credit_bandwidth",
  13857     (PARAM_VAL_RULES *)&Fap20v_credit_bandwidth_vals[0],
  13858     (sizeof(Fap20v_credit_bandwidth_vals) / sizeof(Fap20v_credit_bandwidth_vals[0])) - 1,
  13859     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13860     0,0,0,0,0,0,0,
  13861     "Bandwidth which the port is to generate credit to (Megabits-Second).\r\n",
  13862     "Examples:\r\n"
  13863     "  fap20v scheduler port set_scheduler_port 0x1 port_id 10 credit_bandwidth 100 nominal_bandwidth 90 wfq0_weight 2\r\n"
  13864     "Results in setting on device 1 scheduler port 10 to:\r\n"
  13865     " 100 MegbitSec credit, 90 MegbitSec nominal bandwidth,\r\n"
  13866     " and with wfq0 weight of 2% for WFQ1 (98% for EDF1).\r\n",
  13867     "",
  13868     {0,
  13869      BIT(0) | BIT(28) },
  13870     5,
  13871       /*
  13872        * Pointer to a function to call after symbolic parameter
  13873        * has been accepted.
  13874        */
  13875     (VAL_PROC_PTR)NULL
  13876   },
  13877   {
  13878     PARAM_FAP20V_NOMINAL_BANDWIDTH_ID,
  13879     "nominal_bandwidth",
  13880     (PARAM_VAL_RULES *)&Fap20v_nominal_bandwidth_vals[0],
  13881     (sizeof(Fap20v_nominal_bandwidth_vals) / sizeof(Fap20v_nominal_bandwidth_vals[0])) - 1,
  13882     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13883     0,0,0,0,0,0,0,
  13884     "The physical bandwidth the port has (Megabits-Second).\r\n"
  13885     "   Not meaningful in recycling port.\r\n",
  13886     "Examples:\r\n"
  13887     "  fap20v scheduler port set_scheduler_port 0x1 port_id 10 credit_bandwidth 100 nominal_bandwidth 90 wfq0_weight 2\r\n"
  13888     "Results in setting on device 1 scheduler port 10 to:\r\n"
  13889     " 100 MegbitSec credit, 90 MegbitSec nominal bandwidth,\r\n"
  13890     " and with wfq0 weight of 2% for WFQ1 (98% for EDF1).\r\n",
  13891     "",
  13892     {0,
  13893      BIT(0)},
  13894     6,
  13895       /*
  13896        * Pointer to a function to call after symbolic parameter
  13897        * has been accepted.
  13898        */
  13899     (VAL_PROC_PTR)NULL
  13900   },
  13901   {
  13902     PARAM_FAP20V_WFQ0_WEIGHT_ID,
  13903     "wfq0_weight",
  13904     (PARAM_VAL_RULES *)&Fap20v_percent[0],
  13905     (sizeof(Fap20v_percent) / sizeof(Fap20v_percent[0])) - 1,
  13906     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Fap20v_wfq0_weight_default,
  13907     0,0,0,0,0,0,0,
  13908     "The weight of the WFQ0 wheel - EDF-WFQ Arbiter.\r\n"
  13909     "   1 : mean  1% for WFQ1 and 99% EDF1\r\n"
  13910     "   20: mean 20% for WFQ1 and 80% EDF1\r\n"
  13911     "   Not meaningful in recycling port.\r\n",
  13912     "Examples:\r\n"
  13913     "  fap20v scheduler port set_scheduler_port 0x1 port_id 10 credit_bandwidth 100 nominal_bandwidth 90 wfq0_weight 2\r\n"
  13914     "Results in setting on device 1 scheduler port 10 to:\r\n"
  13915     " 100 MegbitSec credit, 90 MegbitSec nominal bandwidth,\r\n"
  13916     " and with wfq0 weight of 2% for WFQ1 (98% for EDF1).\r\n",
  13917     "",
  13918     {0,
  13919      BIT(0)},
  13920     LAST_ORDINAL,
  13921       /*
  13922        * Pointer to a function to call after symbolic parameter
  13923        * has been accepted.
  13924        */
  13925     (VAL_PROC_PTR)NULL
  13926   },
  13927   {
  13928     PARAM_FAP20V_END_PORT_ID_ID,
  13929     "end_port_id",
  13930     (PARAM_VAL_RULES *)&Fap20v_scheduler_port_id_no_recyle_vals[0],
  13931     (sizeof(Fap20v_scheduler_port_id_no_recyle_vals) / sizeof(Fap20v_scheduler_port_id_no_recyle_vals[0])) - 1,
  13932     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
  13933     0,0,0,0,0,0,0,
  13934     "If appears, initiailze from 'port_id' to 'end_port_id' with the same parameters.\r\n"
  13935     "  This command is usefull when all ports have the same configuration.",
  13936     "Examples:\r\n"
  13937     "  fap20v scheduler port set_scheduler_port 0x1 port_id 0 credit_bandwidth 100 nominal_bandwidth 90 wfq0_weight 2 end_port_id 11\r\n"
  13938     "Results in setting on device 1 scheduler ports 0-11 to:\r\n"
  13939     " 100 MegbitSec credit, 90 MegbitSec nominal bandwidth,\r\n"
  13940     " and with wfq0 weight of 2% for WFQ1 (98% for EDF1).\r\n",
  13941     "",
  13942     {0,
  13943      BIT(0)},
  13944     LAST_ORDINAL,
  13945       /*
  13946        * Pointer to a function to call after symbolic parameter
  13947        * has been accepted.
  13948        */
  13949     (VAL_PROC_PTR)NULL
  13950   },
  13951 
  13952   /* END fap20v_api_scheduler_ports.h interface } */
  13953   /* { fap20v_api_spatial_multicast.h interface */
  13954   {
  13955     PARAM_FAP20V_MULTICAST_API_ID,
  13956     "multicast",
  13957     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  13958     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  13959     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13960     0,0,0,0,0,0,0,
  13961     "interface to fap20v driver spatial multicast services.",
  13962     "Examples:\r\n"
  13963     "  fap20v multicast spatial set_sms_conf 0x1 max_bandwidth 100 max_sm_percent 2\r\n"
  13964     "Results in setting on device 1 spatial multicast scheduler to:\r\n"
  13965     "100 MegbitSec credit - Maximal bandwidth to assign to spatial\r\n"
  13966     "multicast packets, and with 2% maximal Spatial multicast traffic percentage\r\n"
  13967     "from rate assigned to all ingress queues.\r\n",
  13968     "",
  13969     {0,
  13970      BIT(3) | BIT(4) | BIT(5) | BIT(6) | BIT(17) | BIT(18) | BIT(19) | BIT(20) | BIT(21),
  13971      BIT(20) | BIT(21) | BIT(22) | BIT(23) | BIT(24),
  13972      BIT(6) },
  13973     1,
  13974       /*
  13975        * Pointer to a function to call after symbolic parameter
  13976        * has been accepted.
  13977        */
  13978     (VAL_PROC_PTR)NULL
  13979   },
  13980   {
  13981     PARAM_FAP20V_SPATIAL_MULTICAST_API_ID,
  13982     "spatial",
  13983     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  13984     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  13985     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  13986     0,0,0,0,0,0,0,
  13987     "interface to fap20v driver spatial multicast services.",
  13988     "Examples:\r\n"
  13989     "  fap20v multicast spatial set_sms_conf 0x1 max_bandwidth 100 max_sm_percent 2\r\n"
  13990     "Results in setting on device 1 spatial multicast scheduler to:\r\n"
  13991     "100 MegbitSec credit - Maximal bandwidth to assign to spatial\r\n"
  13992     "multicast packets, and with 2% maximal Spatial multicast traffic percentage\r\n"
  13993     "from rate assigned to all ingress queues.\r\n",
  13994     "",
  13995     {0,
  13996      BIT(3) | BIT(4) | BIT(5) | BIT(6)},
  13997     2,
  13998       /*
  13999        * Pointer to a function to call after symbolic parameter
  14000        * has been accepted.
  14001        */
  14002     (VAL_PROC_PTR)NULL
  14003   },
  14004   {
  14005     PARAM_FAP20V_CLOSE_SPATIAL_MULTICAST_FLOW_ID,
  14006     "close_flow",
  14007     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  14008     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  14009     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14010     0,0,0,0,0,0,0,
  14011     "close spatial multicast flow at the ingress FAP.\r\n",
  14012     "Examples:\r\n"
  14013     "  fap20v multicast spatial close_flow 0x1 group_id 1500 \r\n"
  14014     "Results in closing on device 1 spatial multicast group 1500.",
  14015     "",
  14016     {0,
  14017      BIT(6)},
  14018     3,
  14019       /*
  14020        * Pointer to a function to call after symbolic parameter
  14021        * has been accepted.
  14022        */
  14023     (VAL_PROC_PTR)NULL
  14024   },
  14025   {
  14026     PARAM_FAP20V_GET_SPATIAL_MULTICAST_FLOW_PARAMS_ID,
  14027     "get_flow_params",
  14028     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  14029     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  14030     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14031     0,0,0,0,0,0,0,
  14032     "get spatial multicast flow parameters at the ingress FAP.\r\n",
  14033     "Examples:\r\n"
  14034     "  fap20v multicast spatial get_flow_params 0x1 group_id 1500 \r\n"
  14035     "Results in getting on device 1 spatial multicast group parameters.",
  14036     "",
  14037     {0,
  14038      BIT(6)},
  14039     3,
  14040       /*
  14041        * Pointer to a function to call after symbolic parameter
  14042        * has been accepted.
  14043        */
  14044     (VAL_PROC_PTR)NULL
  14045   },
  14046   {
  14047     PARAM_FAP20V_OPEN_SPATIAL_MULTICAST_FLOW_ID,
  14048     "open_flow",
  14049     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  14050     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  14051     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14052     0,0,0,0,0,0,0,
  14053     "open spatial multicast flow at the ingress FAP.\r\n",
  14054     "Examples:\r\n"
  14055     "  fap20v multicast spatial open_flow 0x1 group_id 1500 queue 2\r\n"
  14056     "Results in opening on device 1 spatial multicast flow with parameters:\r\n"
  14057     "spatial multicast identifier 1500 and queue 2.",
  14058     "",
  14059     {0,
  14060      BIT(5)},
  14061     3,
  14062       /*
  14063        * Pointer to a function to call after symbolic parameter
  14064        * has been accepted.
  14065        */
  14066     (VAL_PROC_PTR)NULL
  14067   },
  14068   {
  14069     PARAM_FAP20V_UPDATE_SPATIAL_MULTICAST_FLOW_ID,
  14070     "update_flow",
  14071     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  14072     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  14073     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14074     0,0,0,0,0,0,0,
  14075     "update spatial multicast flow at the ingress FAP.\r\n",
  14076     "Examples:\r\n"
  14077     "  fap20v multicast spatial update_flow 0x1 group_id 1500 queue 2\r\n"
  14078     "Results in updating on device 1 spatial multicast flow to parameters:\r\n"
  14079     "spatial multicast identifier 1500 and queue 2.",
  14080     "",
  14081     {0,
  14082      BIT(5)},
  14083     3,
  14084       /*
  14085        * Pointer to a function to call after symbolic parameter
  14086        * has been accepted.
  14087        */
  14088     (VAL_PROC_PTR)NULL
  14089   },
  14090   {
  14091     PARAM_FAP20V_SPATIAL_MULTICAST_NUM_ID,
  14092     "group_id",
  14093     (PARAM_VAL_RULES *)&Fap20v_spatial_multicast_id[0],
  14094     (sizeof(Fap20v_spatial_multicast_id) / sizeof(Fap20v_spatial_multicast_id[0])) - 1,
  14095     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14096     0,0,0,0,0,0,0,
  14097     "spatial multicast group identifier.\r\n",
  14098     "Examples:\r\n"
  14099     "  fap20v multicast spatial open_flow 0x1 group_id 1500 queue 2\r\n"
  14100      "Results in opening on device 1 spatial multicast flow with parameters:\r\n"
  14101      "spatial multicast identifier 1500 and queue 2.",
  14102     "",
  14103     {0,
  14104      BIT(5) | BIT(6)},
  14105     4,
  14106       /*
  14107        * Pointer to a function to call after symbolic parameter
  14108        * has been accepted.
  14109        */
  14110     (VAL_PROC_PTR)NULL
  14111   },
  14112   {
  14113     PARAM_FAP20V_SPATIAL_TYPE_ID,
  14114     "queue",
  14115     (PARAM_VAL_RULES *)&Fap20v_spatial_multicast_queue[0],
  14116     (sizeof(Fap20v_spatial_multicast_queue) / sizeof(Fap20v_spatial_multicast_queue[0])) - 1,
  14117     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14118     0,0,0,0,0,0,0,
  14119     "Spatial multicast queue. One of 4 spatial queues, to store flow packets.\n\r"
  14120     "  Packet destinate to queue number 3 have absolute priority for credit.\r\n",
  14121     "Examples:\r\n"
  14122     "  fap20v multicast spatial open_sm_flow 0x1 group_id 1500 queue 2\r\n"
  14123     "Results in opening on device 1 spatial multicast flow with parameters:\r\n"
  14124     "spatial multicast identifier 1500 and queue 2.",
  14125     "",
  14126     {0,
  14127      BIT(5)},
  14128     5,
  14129       /*
  14130        * Pointer to a function to call after symbolic parameter
  14131        * has been accepted.
  14132        */
  14133     (VAL_PROC_PTR)NULL
  14134   },
  14135   {
  14136     PARAM_FAP20V_GET_SMS_CONFIGURATION_ID,
  14137     "get_sms_conf",
  14138     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  14139     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  14140     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14141     0,0,0,0,0,0,0,
  14142     "gets Spatial Multicast Scheduler parameters from the device.\r\n",
  14143     "Examples:\r\n"
  14144     "  fap20v multicast spatial get_sms_conf 0x1 \r\n"
  14145     "Results in getting on device 1 spatial multicast scheduler parameters.\r\n",
  14146     "",
  14147     {0,
  14148      BIT(4)},
  14149     3,
  14150       /*
  14151        * Pointer to a function to call after symbolic parameter
  14152        * has been accepted.
  14153        */
  14154     (VAL_PROC_PTR)NULL
  14155   },
  14156   {
  14157     PARAM_FAP20V_SET_SMS_CONFIGURATION_ID,
  14158     "set_sms_conf",
  14159     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  14160     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  14161     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14162     0,0,0,0,0,0,0,
  14163     "sets Spatial Multicast Scheduler parameters at the device.\r\n",
  14164     "Examples:\r\n"
  14165     "  fap20v multicast spatial set_sms_conf 0x1 max_bandwidth 100 max_sm_percent 2\r\n"
  14166     "Results in setting on device 1 spatial multicast scheduler to:\r\n"
  14167     "100 MegbitSec credit - Maximal bandwidth to assign to spatial\r\n"
  14168     "multicast packets, and with 2% maximal Spatial multicast traffic percentage\r\n"
  14169     "from rate assigned to all ingress queues.\r\n",
  14170     "",
  14171     {0,
  14172      BIT(3)},
  14173     3,
  14174       /*
  14175        * Pointer to a function to call after symbolic parameter
  14176        * has been accepted.
  14177        */
  14178     (VAL_PROC_PTR)NULL
  14179   },
  14180   {
  14181     PARAM_FAP20V_MAX_BANDWIDTH_ID,
  14182     "max_bandwidth",
  14183     (PARAM_VAL_RULES *)&Fap20v_sms_max_bandwidth[0],
  14184     (sizeof(Fap20v_sms_max_bandwidth) / sizeof(Fap20v_sms_max_bandwidth[0])) - 1,
  14185     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14186     0,0,0,0,0,0,0,
  14187     "Max bandwidth parameter in the SMS parameters.\r\n"
  14188     "  Resolution of MegbitSec.\n\r",
  14189     "  fap20v scheduler port set_sms_conf 0x1 max_bandwidth 100 max_sm_percent 2\r\n"
  14190     "Results in setting on device 1 spatial multicast scheduler to:\r\n"
  14191     "100 MegbitSec credit - Maximal bandwidth to assign to spatial\r\n"
  14192     "multicast packets, and with 2% maximal Spatial multicast traffic percentage\r\n"
  14193     "from rate assigned to all ingress queues.\r\n",
  14194     "",
  14195     {0,
  14196      BIT(3)},
  14197     4,
  14198       /*
  14199        * Pointer to a function to call after symbolic parameter
  14200        * has been accepted.
  14201        */
  14202     (VAL_PROC_PTR)NULL
  14203   },
  14204   {
  14205     PARAM_FAP20V_SM_PERCENT_ID,
  14206     "max_sm_percent",
  14207     (PARAM_VAL_RULES *)&Fap20v_percent[0],
  14208     (sizeof(Fap20v_percent) / sizeof(Fap20v_percent[0])) - 1,
  14209     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14210     0,0,0,0,0,0,0,
  14211     "Max bandwidth parameter in the SMS parameters.\r\n",
  14212     "Examples:\r\n"
  14213     "  fap20v scheduler port set_sms_conf 0x1 max_bandwidth 100 max_sm_percent 2\r\n"
  14214     "Results in setting on device 1 spatial multicast scheduler to:\r\n"
  14215     "100 MegbitSec credit - Maximal bandwidth to assign to spatial\r\n"
  14216     "multicast packets, and with 2% maximal Spatial multicast traffic percentage\r\n"
  14217     "from rate assigned to all ingress queues.\r\n",
  14218     "",
  14219     {0,
  14220      BIT(3)},
  14221     5,
  14222       /*
  14223        * Pointer to a function to call after symbolic parameter
  14224        * has been accepted.
  14225        */
  14226     (VAL_PROC_PTR)NULL
  14227   },
  14228   /* END fap20v_api_spatial_multicast.h interface } */
  14229   /* { fap20v_api_egress_multicast.h interface */
  14230   {
  14231     PARAM_FAP20V_EGRESS_MULTICAST_API_ID,
  14232     "egress",
  14233     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  14234     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  14235     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14236     0,0,0,0,0,0,0,
  14237     "interface to fap20v driver egress multicast services.",
  14238     "Examples:\r\n"
  14239     "  fap20v multicast egress open_group 0 multicast_id 100 port_copy_list_a 0 1 2 3\r\n"
  14240     "Results in opening egress multicast group 100 with:\n\r"
  14241     "  + port 0, 1 copy\n\r"
  14242     "  + port 2, 3 copies\r\n",
  14243     "",
  14244     {0,
  14245      0,
  14246      BIT(20) /*open*/| BIT(21) /*get*/| BIT(22) /*close*/| BIT(23) /*add-port*/| BIT(24) /*delete-port*/,
  14247      BIT(6) /*denug EG-FM*/},
  14248     2,
  14249       /*
  14250        * Pointer to a function to call after symbolic parameter
  14251        * has been accepted.
  14252        */
  14253     (VAL_PROC_PTR)NULL
  14254   },
  14255   {
  14256     PARAM_FAP20V_DEBUG_API_ID,
  14257     "debug",
  14258     (PARAM_VAL_RULES *)&Fap20v_empty_vals[0],
  14259     (sizeof(Fap20v_empty_vals) / sizeof(Fap20v_empty_vals[0])) - 1,
  14260     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14261     0,0,0,0,0,0,0,
  14262     "Egress Multicast debug functions.\r\n",
  14263     "Examples:\r\n"
  14264     "  fap20v multicast egress debug print_fm_table 0\r\n"
  14265     "Results in printing for debug the FOP-Multicast-LUT0/1/2 table of the EGQ\n\r",
  14266     "",
  14267     {0,
  14268      0,
  14269      0,
  14270      BIT(6) },
  14271     3,
  14272       /*
  14273        * Pointer to a function to call after symbolic parameter
  14274        * has been accepted.
  14275        */
  14276     (VAL_PROC_PTR)NULL
  14277   },
  14278   {
  14279     PARAM_FAP20V_EG_PRINT_EGQ_FM_ID,
  14280     "print_fm_table",
  14281     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  14282     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  14283     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14284     0,0,0,0,0,0,0,
  14285     "Egress Multicast debug functions.\r\n",
  14286     "Examples:\r\n"
  14287     "  fap20v multicast egress debug print_fm_table 0\r\n"
  14288     "Results in printing for debug the FOP-Multicast-LUT0/1/2 table of the EGQ\n\r"
  14289     "This is not API function only for debug\n\r",
  14290     "",
  14291     {0,
  14292      0,
  14293      0,
  14294      BIT(6) },
  14295     4,
  14296       /*
  14297        * Pointer to a function to call after symbolic parameter
  14298        * has been accepted.
  14299        */
  14300     (VAL_PROC_PTR)NULL
  14301   },
  14302   {
  14303     PARAM_FAP20V_EG_PRINT_EGQ_FM_USAGE_ID,
  14304     "get_fm_usage",
  14305     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  14306     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  14307     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14308     0,0,0,0,0,0,0,
  14309     "Egress Multicast debug functions.\r\n",
  14310     "Examples:\r\n"
  14311     "  fap20v multicast egress denug get_fm_usage 0\r\n"
  14312     "Results in geting the EGQ table FOP-Multicast-LUT0/1/2 usage.\n\r"
  14313     "  That is, how many LinkList entries and how may BitMap entries."
  14314     "This is not API function only for debug\n\r",
  14315     "",
  14316     {0,
  14317      0,
  14318      0,
  14319      BIT(6)},
  14320      4,
  14321       /*
  14322        * Pointer to a function to call after symbolic parameter
  14323        * has been accepted.
  14324        */
  14325     (VAL_PROC_PTR)NULL
  14326   },
  14327   {
  14328     PARAM_FAP20V_EG_VALIDATE_EGQ_FM_ID,
  14329     "validate_fm",
  14330     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  14331     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  14332     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14333     0,0,0,0,0,0,0,
  14334     "Egress Multicast debug functions.\r\n",
  14335     "Examples:\r\n"
  14336     "  fap20v multicast egress denug validate_fm 0\r\n"
  14337     "Results in validating the EGQ table FOP-Multicast-LUT0/1/2.\n\r"
  14338     "  That is, do some validation function on the FOP-Multicast-LUT0/1/2."
  14339     "This is not API function only for debug\n\r",
  14340     "",
  14341     {0,
  14342      0,
  14343      0,
  14344      BIT(6)},
  14345     4,
  14346       /*
  14347        * Pointer to a function to call after symbolic parameter
  14348        * has been accepted.
  14349        */
  14350     (VAL_PROC_PTR)NULL
  14351   },
  14352   {
  14353     PARAM_FAP20V_EG_TEST_DIRECT_ID,
  14354     "directed_test_ll",
  14355     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  14356     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  14357     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14358     0,0,0,0,0,0,0,
  14359     "Egress Multicast debug functions.\r\n",
  14360     "Examples:\r\n"
  14361     "  fap20v multicast egress denug directed_test_ll\r\n"
  14362     "Results in do some directed test on the egress multicast module.\n\r"
  14363     "  That is, directed test for egress multicast of the link-list.\n\r"
  14364     "This is not API function only for debug\n\r",
  14365     "",
  14366     {0,
  14367      0,
  14368      0,
  14369      BIT(6)},
  14370     4,
  14371       /*
  14372        * Pointer to a function to call after symbolic parameter
  14373        * has been accepted.
  14374        */
  14375     (VAL_PROC_PTR)NULL
  14376   },
  14377   {
  14378     PARAM_FAP20V_EG_MULTICAST_OPEN_GROUP_ID,
  14379     "open_group",
  14380     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  14381     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  14382     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14383     0,0,0,0,0,0,0,
  14384     "Per multicast_id group, set of Data-Ports and number of copies per Data-Ports.\r\n",
  14385     "Examples:\r\n"
  14386     "  fap20v multicast egress open_group 0 multicast_id 100 port_copy_list_a 0 1 2 3\r\n"
  14387     "Results in opening egress multicast group 100 with:\n\r"
  14388     "  + port 0, 1 copy\n\r"
  14389     "  + port 2, 3 copies\r\n",
  14390     "",
  14391     {0,
  14392      0,
  14393      BIT(20),
  14394      0 },
  14395     3,
  14396       /*
  14397        * Pointer to a function to call after symbolic parameter
  14398        * has been accepted.
  14399        */
  14400     (VAL_PROC_PTR)NULL
  14401   },
  14402   {
  14403     PARAM_FAP20V_MULTICAST_ID_ID,
  14404     "multicast_id",
  14405     (PARAM_VAL_RULES *)&Fap20v_recycle_multicast_tree_id[0],
  14406     (sizeof(Fap20v_recycle_multicast_tree_id) / sizeof(Fap20v_recycle_multicast_tree_id[0])) - 1,
  14407     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14408     0,0,0,0,0,0,0,
  14409     "Multicast Group Id to manipulate.\r\n",
  14410     "Examples:\r\n"
  14411     "  fap20v multicast egress open_group 0 multicast_id 100 port_copy_list_a 0 1 2 3\r\n"
  14412     "Results in opening egress multicast group 100 with:\n\r"
  14413     "  + port 0, 1 copy\n\r"
  14414     "  + port 2, 3 copies\r\n",
  14415     "",
  14416     {0,
  14417      0,
  14418      BIT(20) /*open*/| BIT(21) /*get*/| BIT(22) /*close*/| BIT(23) /*add-port*/| BIT(24) /*delete-port*/,
  14419      0 },
  14420     4,
  14421       /*
  14422        * Pointer to a function to call after symbolic parameter
  14423        * has been accepted.
  14424        */
  14425     (VAL_PROC_PTR)NULL
  14426   },
  14427   {
  14428     PARAM_FAP20V_EG_MULTICAST_COPY_PORT_LIST_A_ID,
  14429     "port_copy_list_a",
  14430     (PARAM_VAL_RULES *)&Fap20v_port_and_copy_list[0],
  14431     (sizeof(Fap20v_port_and_copy_list) / sizeof(Fap20v_port_and_copy_list[0])) - 1,
  14432     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14433     0,0,0,0,0,0,0,
  14434     "List of ports and copies (per port). Up to 32 ports.\r\n",
  14435     "  fap20v multicast egress open_group 0 multicast_id 100 port_copy_list_a 0 1 2 3\r\n"
  14436     "Results in opening egress multicast group 100 with:\n\r"
  14437     "  + port 0, 1 copy\n\r"
  14438     "  + port 2, 3 copies\r\n",
  14439     "",
  14440     {0,
  14441      0,
  14442      BIT(20) /*open*/ | BIT(23) /*add-port*/,
  14443      0 },
  14444     5,
  14445       /*
  14446        * Pointer to a function to call after symbolic parameter
  14447        * has been accepted.
  14448        */
  14449     (VAL_PROC_PTR)NULL
  14450   },
  14451   {
  14452     PARAM_FAP20V_EG_MULTICAST_COPY_PORT_LIST_B_ID,
  14453     "port_copy_list_b",
  14454     (PARAM_VAL_RULES *)&Fap20v_port_and_copy_list[0],
  14455     (sizeof(Fap20v_port_and_copy_list) / sizeof(Fap20v_port_and_copy_list[0])) - 1,
  14456     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
  14457     0,0,0,0,0,0,0,
  14458     "List of ports and copies (per port). Up to 32 ports.\r\n",
  14459     "  fap20v multicast egress open_group 0 multicast_id 100 port_copy_list_a 0 1 2 3 port_copy_list_b 45 127\r\n"
  14460     "Results in opening egress multicast group 100 with:\n\r"
  14461     "  + port 0, 1 copy\n\r"
  14462     "  + port 2, 3 copies\r\n"
  14463     "  + port 45, 127 copies\r\n",
  14464     "",
  14465     {0,
  14466      0,
  14467      BIT(20) /*open*/ | BIT(23) /*add-port*/,
  14468      0 },
  14469     6,
  14470       /*
  14471        * Pointer to a function to call after symbolic parameter
  14472        * has been accepted.
  14473        */
  14474     (VAL_PROC_PTR)NULL
  14475   },
  14476 
  14477   {
  14478     PARAM_FAP20V_EG_MULTICAST_GET_GROUP_ID,
  14479     "get_group",
  14480     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  14481     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  14482     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14483     0,0,0,0,0,0,0,
  14484     "Per multicast_id group, get of Data-Ports and number of copies per Data-Ports.\r\n",
  14485     "Examples:\r\n"
  14486     "  fap20v multicast egress get_group 0 multicast_id 100\r\n"
  14487     "Results in getting and printing egress multicast group 100.",
  14488     "",
  14489     {0,
  14490      0,
  14491      BIT(21),
  14492      0 },
  14493     3,
  14494       /*
  14495        * Pointer to a function to call after symbolic parameter
  14496        * has been accepted.
  14497        */
  14498     (VAL_PROC_PTR)NULL
  14499   },
  14500   {
  14501     PARAM_FAP20V_EG_MULTICAST_CLOSE_GROUP_ID,
  14502     "close_group",
  14503     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  14504     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  14505     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14506     0,0,0,0,0,0,0,
  14507     "Close, per 'multicast_id', the logical multicast group at the egress.\r\n",
  14508     "Examples:\r\n"
  14509     "  fap20v multicast egress close_group 0 multicast_id 100\r\n"
  14510     "Results in closing egress multicast group 100.",
  14511     "",
  14512     {0,
  14513      0,
  14514      BIT(22),
  14515      0 },
  14516     3,
  14517       /*
  14518        * Pointer to a function to call after symbolic parameter
  14519        * has been accepted.
  14520        */
  14521     (VAL_PROC_PTR)NULL
  14522   },
  14523   {
  14524     PARAM_FAP20V_EG_MULTICAST_ADD_PORT_ID,
  14525     "add_ports",
  14526     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  14527     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  14528     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14529     0,0,0,0,0,0,0,
  14530     "Add/modify port member of the Egress-Multicast.\r\n",
  14531     "Examples:\r\n"
  14532     "  fap20v multicast egress add_ports 0 multicast_id 100 port_copy_list_a 5 6 7 8 9 10\r\n"
  14533     "Results in adding to egress multicast group 100\n\r"
  14534     "  port 5, 6 copies\n\r"
  14535     "  port 7, 8 copies\n\r"
  14536     "  port 9, 10 copies\n\r",
  14537     "",
  14538     {0,
  14539      0,
  14540      BIT(23),
  14541      0 },
  14542     3,
  14543       /*
  14544        * Pointer to a function to call after symbolic parameter
  14545        * has been accepted.
  14546        */
  14547     (VAL_PROC_PTR)NULL
  14548   },
  14549   {
  14550     PARAM_FAP20V_EG_MULTICAST_DELETE_PORT_ID,
  14551     "delete_port",
  14552     (PARAM_VAL_RULES *)&Fap20v_indefinite_num_vals[0],
  14553     (sizeof(Fap20v_indefinite_num_vals) / sizeof(Fap20v_indefinite_num_vals[0])) - 1,
  14554     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14555     0,0,0,0,0,0,0,
  14556     "Delete port member of the Egress-Multicast.\r\n",
  14557     "Examples:\r\n"
  14558     "  fap20v multicast egress delete_ports 0 multicast_id 100 port_id 0\r\n"
  14559     "Results in deleting from egress multicast group 100 port 0\n\r",
  14560     "",
  14561     {0,
  14562      0,
  14563      BIT(24),
  14564      0 },
  14565     3,
  14566       /*
  14567        * Pointer to a function to call after symbolic parameter
  14568        * has been accepted.
  14569        */
  14570     (VAL_PROC_PTR)NULL
  14571   },
  14572   {
  14573     PARAM_FAP20V_PORT_ID_ID,
  14574     "port_id",
  14575     (PARAM_VAL_RULES *)&Fap20v_max_nof_ports[0],
  14576     (sizeof(Fap20v_max_nof_ports) / sizeof(Fap20v_max_nof_ports[0])) - 1,
  14577     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
  14578     0,0,0,0,0,0,0,
  14579     "Port id to delete from the Egress-Multicast.\r\n",
  14580     "Examples:\r\n"
  14581     "  fap20v multicast egress delete_ports 0 multicast_id 100 port_id 0\r\n"
  14582      "Results in deleting from egress multicast group 100 port 0\n\r",
  14583     "",
  14584     {0,
  14585      0,
  14586      BIT(24),
  14587      0 },
  14588     5,
  14589       /*
  14590        * Pointer to a function to call after symbolic parameter
  14591        * has been accepted.
  14592        */
  14593     (VAL_PROC_PTR)NULL
  14594   },
  14595   /* END fap20v_api_egress_multicast.h interface } */
  14596 
  14597 /*
  14598  * Last element. Do not remove.
  14599  */
  14600   {
  14601     PARAM_END_OF_LIST
  14602   }
  14603 }
  14604 #endif
  14605 ;
  14606 
  14607 /*
  14608  * }
  14609  */
  14610 
  14611 /*
  14612  * { Definitions for ChipSim
  14613  */
  14614 /********************************************************
  14615 *NAME
  14616 *  Fap20v_all_regs_group_str
  14617 *TYPE: BUFFER
  14618 *DATE: 07/MAY/2002
  14619 *FUNCTION:
  14620 *  ARRAY CONTAINING INFORMATION REGARDING STRUCTURE OF
  14621 *  all SOC_SAND_FAP20V registers.
  14622 *ORGANIZATION:
  14623 *  ARRAY OF STRUCTURES OF TYPE 'ELEMENT_OF_GROUP':
  14624 *  See definition in dune_chips.h
  14625 *USAGE:
  14626 *  SEE dune_chips.h.
  14627 *REMARKS:
  14628 *  NONE.
  14629 *SEE ALSO:
  14630  */
  14631 EXTERN CONST
  14632   ELEMENT_OF_GROUP
  14633     Fap20v_all_regs_group_str[]
  14634 #ifdef INIT
  14635    =
  14636 {
  14637   {
  14638     sizeof(FAP20V_REGS)/4,0,
  14639     0x0
  14640 
  14641   },
  14642   /*
  14643    * End of array indicator. Do not remove.
  14644    */
  14645   {0}
  14646 }
  14647 #endif
  14648 ;
  14649 #ifndef __DUNE_HRP_LINUX__ 
  14650 /* { */
  14651 /********************************************************
  14652 *NAME
  14653 *  Desc_fap20v_reg
  14654 *TYPE: BUFFER
  14655 *DATE: 24/APR/2002
  14656 *FUNCTION:
  14657 *  ARRAY CONTAINING INFORMATION REGARDING MEMORY MAP OF
  14658 *  REGISTERS WITHIN THE SOC_SAND_FAP20V CHIP.
  14659 *ORGANIZATION:
  14660 *  ARRAY OF STRUCTURES OF TYPE 'DESC_FE_REG':
  14661 *  See definition in dune_chips.h
  14662 *USAGE:
  14663 *  SEE dune_chips.h.
  14664 *REMARKS:
  14665 *  NONE.
  14666 *SEE ALSO:
  14667  */
  14668 EXTERN CONST
  14669   DESC_FE_REG
  14670     Desc_fap20v_reg[]
  14671 #ifdef INIT
  14672    =
  14673 {
  14674 
  14675 /*
  14676  * Last element. Do not remove.
  14677  */
  14678   {
  14679     FE_LAST_FIELD
  14680   }
  14681 }
  14682 #endif
  14683 /* } __DUNE_HRP_LINUX__ */
  14684 #endif
  14685 ;
  14686 /*
  14687  * }
  14688  */
  14689 /*
  14690 #undef CONST
  14691 */
  14692 /* } */
  14693 #endif