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

esanity.soc (45143B)


      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-2019 Broadcom Inc. All rights reserved.
      5 #
      6 # Script to run all available tests as quickly as possible.
      7 # For testing basic sanity of new drivers, simulators, chips, etc.
      8 #
      9 # Run "esanity full" to perform full esanity version which checks EVERY
     10 # entry in the L2 and DEFIP external tables in tr 50, 51, and 52
     11 #
     12 
     13 echo "testsuite: started: sanity"
     14 
     15 # We need to print out port status since any cabling effects results.
     16 *:ps
     17 
     18 if $?1 'local full_test 1'
     19 
     20 if $?BCM56601_A0 || $?BCM56601_B0 || $?BCM56601_C0 'local ge_mode 1'
     21 if $?BCM56601_C0 || $?BCM56602_C0 'local vlan_range_tbl 1'
     22 
     23 # Avoid link messages while testing
     24 linkscan off
     25 
     26 # Use expected COS configuration for test
     27 #config add bcm_num_cos=4
     28 
     29 init
     30 init misc
     31 init mmu
     32 
     33 local done 'echo "   Done"'
     34 
     35 # Set run command script not to fail on errors reported by commands
     36 # this allows the script to continue if a test fails
     37 set rcerror=false
     38 
     39 # Set up test mode: don't stop on errors, show progress on each test
     40 tm -stoponerror +progress
     41 # Unselect all
     42 ts -*
     43 
     44 #Display some useful information
     45 date
     46 ver
     47 soc
     48 
     49 #Start Test
     50 echo "Running PCI Compliance ..."
     51 tr 2
     52 $done
     53 
     54 echo "Running PCI S-Channel Buf ..."
     55 tr 4
     56 $done
     57 
     58 echo "Running Register reset defaults ..."
     59 tr 1
     60 $done
     61 
     62 echo "Running Register read/write ..."
     63 tr 3 mask64
     64 $done
     65 
     66 init soc; init misc; init mmu;
     67 #Clean up after register read/write test.
     68 
     69 rcload rc.soc
     70 l2mode off
     71 echo "Running CPU Benchmarks ..."
     72 tr 21
     73 $done
     74 linkscan off
     75 
     76 # Sort out which memories exist in this configuration
     77 
     78 if !$?seer_ext_table_cfg "local seer_ext_table_cfg 0"
     79 if !$?seer_host_hash_table_cfg "local seer_host_hash_table_cfg 2"
     80 if !$?seer_mvl_hash_table_cfg "local seer_mvl_hash_table_cfg 1"
     81 
     82 
     83 local fp_test_count 0; 
     84 
     85 local defip_test_count 0;
     86 local defip_test_start0 0; local defip_test_start1 0; local defip_test_start2 0;
     87 local defip_test_start3 0; local defip_test_start4 0; local defip_test_start5 0;
     88 local defip_test_start6 0; local defip_test_start7 0;
     89 
     90 local l2ext_test_count 0;
     91 local l2ext_test_start0 0; local l2ext_test_start1 0; local l2ext_test_start2 0;
     92 local l2ext_test_start3 0; local l2ext_test_start4 0; local l2ext_test_start5 0;
     93 local l2ext_test_start6 0; local l2ext_test_start7 0;
     94 
     95 case $seer_ext_table_cfg \
     96         0 "local l3_defip_alg 1; local next_hop_int 1" \
     97         1 "local l3_defip_alg 1; local next_hop_int 1; \
     98                 local l2_entry_external 1; \
     99                 local l2ext_test_count 65536; \
    100                 local l2ext_test_start0 0x00000; local l2ext_test_start1 0x10000; \
    101                 local l2ext_test_start2 0x20000; local l2ext_test_start3 0x30000; \
    102                 local l2ext_test_start4 0x40000; local l2ext_test_start5 0x50000; \
    103                 local l2ext_test_start6 0x60000; local l2ext_test_start7 0x70000" \
    104         2 "local l3_defip_alg 1; local next_hop_ext 1; \
    105                 local defip_test_count 65536; \
    106                 local defip_test_start0 0x00000; local defip_test_start1 0x10000; \
    107                 local defip_test_start2 0x20000; local defip_test_start3 0x30000; \
    108                 local defip_test_start4 0x40000; local defip_test_start5 0x50000; \
    109                 local defip_test_start6 0x60000; local defip_test_start7 0x70000" \
    110         3 "local l3_defip_alg 1; local next_hop_int 1; local fp_external 1; \
    111                 local fp_tcam_external 1; local fp_policy_table_external 1; \
    112                 local fp_meter_table_ext 1; local fp_counter_ext 1" \
    113         4 "local l3_defip_alg 1; local next_hop_int 1; local fp_external 1; \
    114                 local fp_tcam_external 1; local fp_policy_table_external 1; \
    115                 local fp_meter_table_ext 1; local fp_counter_ext 1" \
    116         5 "local l3_defip_cam 1; local l3_defip_tcam 1; \
    117                 local l3_defip_data 1; local next_hop_ext 1; \
    118                 local fp_external 1;  local fp_tcam_external 1; \
    119                 local fp_policy_table_external 1; \
    120                 local fp_meter_table_ext 1; local fp_counter_ext 1" \
    121         6 "local l3_defip_cam 1; local l3_defip_tcam 1; \
    122                 local l3_defip_data 1; local next_hop_ext 1; \
    123                 local fp_external 1; local fp_tcam_external 1; \
    124                 local fp_policy_table_external 1; \
    125                 local fp_meter_table_ext 1; local fp_counter_ext 1" \
    126         7 "local l3_defip_cam 1; local l3_defip_tcam 1; \
    127                 local l3_defip_data 1; local next_hop_ext 1; \
    128                 local fp_external 1; local fp_tcam_external 1; \
    129                 local fp_policy_table_external 1; \
    130                 local fp_meter_table_ext 1; local fp_counter_ext 1; \
    131                 local fp_test_count 32768; local defip_test_count 32768; \
    132                 local defip_test_start0 0x00000; local defip_test_start1 0x08000; \
    133                 local defip_test_start2 0x10000; local defip_test_start3 0x18000" \
    134         8 "local l3_defip_cam 1; local l3_defip_tcam 1; \
    135                 local l3_defip_data 1; local next_hop_ext 1; \
    136                 local fp_external 1; local fp_tcam_external 1; \
    137                 local fp_policy_table_external 1; \
    138                 local fp_meter_table_ext 1; local fp_counter_ext 1; \
    139                 local fp_test_count 16384; local defip_test_count 49152; \
    140                 local defip_test_start0 0x00000; local defip_test_start1 0x0c000; \
    141                 local defip_test_start2 0x18000; local defip_test_start3 0x24000" \
    142         9 "local l3_defip_cam 1; local l3_defip_tcam 1; \
    143                 local l3_defip_data 1; local next_hop_ext 1;" \
    144         10 "local l3_defip_cam 1; local l3_defip_tcam 1; \
    145                 local l3_defip_data 1; local next_hop_ext 1;" \
    146         * "local l3_defip_alg 1; local next_hop_int 1"
    147 
    148 case $seer_host_hash_table_cfg \
    149         0 "local l2_entry_internal 1" \
    150         1 "local l2_entry_internal 1; local l3_entry_v4 1" \
    151         3 "local l2_entry_internal 1; local l3_entry_v6 1" \
    152         6 "local l3_entry_v4 1" \
    153         7 "local l3_entry_v4 1; local l3_entry_v6 1" \
    154         8 "local l3_entry_v6 1" \
    155         * "local l2_entry_internal 1; local l3_entry_v4 1; local l3_entry_v6 1"
    156 
    157 case $seer_mvl_hash_table_cfg \
    158         0 "local vlan_mac 1" \
    159         2 "local my_station 1" \
    160         * "local vlan_mac 1; local my_station 1"
    161 
    162 init; init misc; init mmu;
    163 if !"expr $tcam_reset_toggle + 0" "muxsel 0; muxsel 0x80"
    164 if !"expr $seer_ext_tcam_select + 0" "init tcam"
    165 
    166 echo "Running Switching Memory tests ..."
    167 #echo "  BSAFE_CMD_DATA_IN";
    168 #tr 50 M=BSAFE_CMD_DATA_IN;
    169 #tr 51 M=BSAFE_CMD_DATA_IN;
    170 #tr 52 M=BSAFE_CMD_DATA_IN;
    171 #echo "  BSAFE_CMD_DATA_OUT";
    172 #tr 50 M=BSAFE_CMD_DATA_OUT;
    173 #tr 51 M=BSAFE_CMD_DATA_OUT;
    174 #tr 52 M=BSAFE_CMD_DATA_OUT;
    175 echo "  C0_CPU_RQ_DATA";
    176 tr 50 M=C0_CPU_RQ_DATA;
    177 tr 51 M=C0_CPU_RQ_DATA;
    178 tr 52 M=C0_CPU_RQ_DATA;
    179 echo "  C0_CPU_WQ_DATA";
    180 tr 50 M=C0_CPU_WQ_DATA;
    181 tr 51 M=C0_CPU_WQ_DATA;
    182 tr 52 M=C0_CPU_WQ_DATA;
    183 echo "  C0_RQ_DATA";
    184 tr 50 M=C0_RQ_DATA;
    185 tr 51 M=C0_RQ_DATA;
    186 tr 52 M=C0_RQ_DATA;
    187 
    188 #echo "  C0_WQ_DATA";
    189 #tr 50 M=C0_WQ_DATA;
    190 #tr 51 M=C0_WQ_DATA;
    191 #tr 52 M=C0_WQ_DATA;
    192 echo "  C1_CPU_RQ_DATA";
    193 tr 50 M=C1_CPU_RQ_DATA;
    194 tr 51 M=C1_CPU_RQ_DATA;
    195 tr 52 M=C1_CPU_RQ_DATA;
    196 echo "  C1_CPU_WQ_DATA";
    197 tr 50 M=C1_CPU_WQ_DATA;
    198 tr 51 M=C1_CPU_WQ_DATA;
    199 tr 52 M=C1_CPU_WQ_DATA;
    200 echo "  C1_RQ_DATA";
    201 tr 50 M=C1_RQ_DATA;
    202 tr 51 M=C1_RQ_DATA;
    203 tr 52 M=C1_RQ_DATA;
    204 
    205 #echo "  C1_WQ_DATA";
    206 #tr 50 M=C1_WQ_DATA;
    207 #tr 51 M=C1_WQ_DATA;
    208 #tr 52 M=C1_WQ_DATA;
    209 echo "  DSCP_TABLE";
    210 tr 50 M=DSCP_TABLE;
    211 tr 51 M=DSCP_TABLE;
    212 tr 52 M=DSCP_TABLE;
    213 echo "  EGRESS_ADJACENT_MAC";
    214 tr 50 M=EGRESS_ADJACENT_MAC;
    215 tr 51 M=EGRESS_ADJACENT_MAC;
    216 tr 52 M=EGRESS_ADJACENT_MAC;
    217 echo "  EGRESS_DSCP_EXP";
    218 tr 50 M=EGRESS_DSCP_EXP;
    219 tr 51 M=EGRESS_DSCP_EXP;
    220 tr 52 M=EGRESS_DSCP_EXP;
    221 echo "  EGRESS_IP_TUNNEL";
    222 tr 50 M=EGRESS_IP_TUNNEL;
    223 tr 51 M=EGRESS_IP_TUNNEL;
    224 tr 52 M=EGRESS_IP_TUNNEL;
    225 echo "  EGRESS_MASK";
    226 tr 50 M=EGRESS_MASK;
    227 tr 51 M=EGRESS_MASK;
    228 tr 52 M=EGRESS_MASK;
    229 echo "  EGR_VLAN_XLATE";
    230 tr 50 M=EGR_VLAN_XLATE;
    231 tr 51 M=EGR_VLAN_XLATE;
    232 tr 52 M=EGR_VLAN_XLATE;
    233 if $?fp_counter_ext 'echo "  FP_COUNTER_EXT"; \
    234         tr 50 M=FP_COUNTER_EXT; \
    235         tr 51 M=FP_COUNTER_EXT; \
    236         tr 52 M=FP_COUNTER_EXT;'
    237 echo "  FP_COUNTER_INT";
    238 tr 50 M=FP_COUNTER_INT;
    239 tr 51 M=FP_COUNTER_INT;
    240 tr 52 M=FP_COUNTER_INT;
    241 if $?fp_external 'echo "  FP_EXTERNAL"; \
    242         tr 50 M=FP_EXTERNAL; \
    243         tr 51 M=FP_EXTERNAL; \
    244         tr 52 M=FP_EXTERNAL;'
    245 echo "  FP_INTERNAL";
    246 tr 50 M=FP_INTERNAL;
    247 tr 51 M=FP_INTERNAL;
    248 tr 52 M=FP_INTERNAL;
    249 if $?fp_meter_table_ext 'echo "  FP_METER_TABLE_EXT"; \
    250         tr 50 M=FP_METER_TABLE_EXT; \
    251         tr 51 M=FP_METER_TABLE_EXT; \
    252         tr 52 M=FP_METER_TABLE_EXT;'
    253 echo "  FP_METER_TABLE_INT";
    254 tr 50 M=FP_METER_TABLE_INT;
    255 tr 51 M=FP_METER_TABLE_INT;
    256 tr 52 M=FP_METER_TABLE_INT;
    257 if $?fp_policy_table_external 'echo "  FP_POLICY_TABLE_EXTERNAL"; \
    258         tr 50 M=FP_POLICY_TABLE_EXTERNAL; \
    259         tr 51 M=FP_POLICY_TABLE_EXTERNAL; \
    260         tr 52 M=FP_POLICY_TABLE_EXTERNAL;'
    261 echo "  FP_POLICY_TABLE_INTERNAL";
    262 tr 50 M=FP_POLICY_TABLE_INTERNAL;
    263 tr 51 M=FP_POLICY_TABLE_INTERNAL;
    264 tr 52 M=FP_POLICY_TABLE_INTERNAL;
    265 echo "  FP_PORT_FIELD_SEL";
    266 tr 50 M=FP_PORT_FIELD_SEL;
    267 tr 51 M=FP_PORT_FIELD_SEL;
    268 tr 52 M=FP_PORT_FIELD_SEL;
    269 echo "  FP_RANGE_CHECK";
    270 tr 50 M=FP_RANGE_CHECK;
    271 tr 51 M=FP_RANGE_CHECK;
    272 tr 52 M=FP_RANGE_CHECK;
    273 if $?fp_tcam_external 'echo "  FP_TCAM_EXTERNAL"; \
    274         tr 50 M=FP_TCAM_EXTERNAL; \
    275         tr 51 M=FP_TCAM_EXTERNAL; \
    276         tr 52 M=FP_TCAM_EXTERNAL;'
    277 echo "  FP_TCAM_INTERNAL";
    278 tr 50 M=FP_TCAM_INTERNAL;
    279 tr 51 M=FP_TCAM_INTERNAL;
    280 tr 52 M=FP_TCAM_INTERNAL;
    281 echo "  FP_TCP_UDP_PORT_RANGE";
    282 tr 50 M=FP_TCP_UDP_PORT_RANGE;
    283 tr 51 M=FP_TCP_UDP_PORT_RANGE;
    284 tr 52 M=FP_TCP_UDP_PORT_RANGE;
    285 echo "  HG_PORT_TABLE";
    286 tr 50 M=HG_PORT_TABLE;
    287 echo "  IGR_VLAN_XLATE";
    288 tr 50 M=IGR_VLAN_XLATE;
    289 tr 51 M=IGR_VLAN_XLATE;
    290 tr 52 M=IGR_VLAN_XLATE;
    291 echo "  IPMC_GROUP_V4_SM";
    292 tr 50 M=IPMC_GROUP_V4_SM;
    293 tr 51 M=IPMC_GROUP_V4_SM;
    294 tr 52 M=IPMC_GROUP_V4_SM;
    295 echo "  IPMC_GROUP_V6_SM";
    296 tr 50 M=IPMC_GROUP_V6_SM;
    297 tr 51 M=IPMC_GROUP_V6_SM;
    298 tr 52 M=IPMC_GROUP_V6_SM;
    299 echo "  IPORT_TABLE";
    300 tr 50 M=IPORT_TABLE;
    301 tr 51 M=IPORT_TABLE;
    302 tr 52 M=IPORT_TABLE;
    303 echo "  L2MC_TABLE";
    304 tr 50 M=L2MC_TABLE;
    305 tr 51 M=L2MC_TABLE;
    306 tr 52 M=L2MC_TABLE;
    307 if !$?full_test \
    308     "local entry_cmd 'IE=16383'; \
    309      local iter_cmd 'ITER=4' "
    310 if $?l2_entry_external 'echo "  L2_ENTRY_EXTERNAL"; \
    311         tr 50 M=L2_ENTRY_EXTERNAL $entry_cmd; \
    312         tr 51 M=L2_ENTRY_EXTERNAL $iter_cmd; \
    313         tr 52 M=L2_ENTRY_EXTERNAL $iter_cmd;'
    314 if $?l2_entry_internal 'echo "  L2_ENTRY_INTERNAL"; \
    315         tr 50 M=L2_ENTRY_INTERNAL; \
    316         tr 51 M=L2_ENTRY_INTERNAL; \
    317         tr 52 M=L2_ENTRY_INTERNAL;'
    318 echo "  L2_ENTRY_OVERFLOW";
    319 tr 50 M=L2_ENTRY_OVERFLOW;
    320 tr 51 M=L2_ENTRY_OVERFLOW;
    321 tr 52 M=L2_ENTRY_OVERFLOW;
    322 echo FIXME: L2_MOD_FIFO mem tests not working
    323 #echo "  L2_MOD_FIFO";
    324 #tr 50 M=L2_MOD_FIFO;
    325 #tr 51 M=L2_MOD_FIFO;
    326 #tr 52 M=L2_MOD_FIFO;
    327 echo "  L2_USER_ENTRY";
    328 tr 50 M=L2_USER_ENTRY;
    329 tr 51 M=L2_USER_ENTRY;
    330 tr 52 M=L2_USER_ENTRY;
    331 echo "  L2_USER_ENTRY_DATA";
    332 tr 50 M=L2_USER_ENTRY_DATA;
    333 tr 51 M=L2_USER_ENTRY_DATA;
    334 tr 52 M=L2_USER_ENTRY_DATA;
    335 echo "  L2_USER_ENTRY_TCAM";
    336 tr 50 M=L2_USER_ENTRY_TCAM;
    337 tr 51 M=L2_USER_ENTRY_TCAM;
    338 tr 52 M=L2_USER_ENTRY_TCAM;
    339 echo "  L3_INTF_TABLE";
    340 tr 50 M=L3_INTF_TABLE;
    341 tr 51 M=L3_INTF_TABLE;
    342 tr 52 M=L3_INTF_TABLE;
    343 echo "  L3_INTF_EGR_FILTER_LIST";
    344 tr 50 M=L3_INTF_EGR_FILTER_LIST;
    345 tr 51 M=L3_INTF_EGR_FILTER_LIST;
    346 tr 52 M=L3_INTF_EGR_FILTER_LIST;
    347 echo "  L3_INTF_IGR_FILTER_LIST";
    348 tr 50 M=L3_INTF_IGR_FILTER_LIST;
    349 tr 51 M=L3_INTF_IGR_FILTER_LIST;
    350 tr 52 M=L3_INTF_IGR_FILTER_LIST;
    351 echo "  L3_INTF_QOS";
    352 tr 50 M=L3_INTF_QOS;
    353 tr 51 M=L3_INTF_QOS;
    354 tr 52 M=L3_INTF_QOS;
    355 if !$?full_test \
    356     "local entry_cmd 'IE=16383'; \
    357      local iter_cmd 'ITER=4' "
    358 if $?l3_defip_alg 'echo "  L3_DEFIP_ALG"; \
    359         tr 50 M=L3_DEFIP_ALG $entry_cmd; \
    360         tr 51 M=L3_DEFIP_ALG $iter_cmd; \
    361         tr 52 M=L3_DEFIP_ALG $iter_cmd;'
    362 if $?l3_defip_cam 'echo "  L3_DEFIP_CAM"; \
    363         tr 50 M=L3_DEFIP_CAM $entry_cmd; \
    364         tr 51 M=L3_DEFIP_CAM $iter_cmd; \
    365         tr 52 M=L3_DEFIP_CAM $iter_cmd;'
    366 if $?l3_defip_data 'echo "  L3_DEFIP_DATA"; \
    367         tr 50 M=L3_DEFIP_DATA $entry_cmd; \
    368         tr 51 M=L3_DEFIP_DATA $iter_cmd; \
    369         tr 52 M=L3_DEFIP_DATA $iter_cmd;'
    370 if $?l3_defip_tcam 'echo "  L3_DEFIP_TCAM"; \
    371         tr 50 M=L3_DEFIP_TCAM $entry_cmd; \
    372         tr 51 M=L3_DEFIP_TCAM $iter_cmd; \
    373         tr 52 M=L3_DEFIP_TCAM $iter_cmd;'
    374 echo "  L3_ECMP";
    375 tr 50 M=L3_ECMP;
    376 tr 51 M=L3_ECMP;
    377 tr 52 M=L3_ECMP;
    378 echo "  L3_ENTRY_V4";
    379 tr 50 M=L3_ENTRY_V4;
    380 tr 51 M=L3_ENTRY_V4;
    381 tr 52 M=L3_ENTRY_V4;
    382 echo "  L3_ENTRY_V6";
    383 tr 50 M=L3_ENTRY_V6;
    384 tr 51 M=L3_ENTRY_V6;
    385 tr 52 M=L3_ENTRY_V6;
    386 echo "  L3_IPMC";
    387 tr 50 M=L3_IPMC;
    388 tr 51 M=L3_IPMC;
    389 tr 52 M=L3_IPMC;
    390 echo "  L3_DEFIP_HITBIT";
    391 tr 50 M=L3_DEFIP_HITBIT;
    392 tr 51 M=L3_DEFIP_HITBIT;
    393 tr 52 M=L3_DEFIP_HITBIT;
    394 echo "  L3_TUNNEL";
    395 tr 50 M=L3_TUNNEL;
    396 tr 51 M=L3_TUNNEL;
    397 tr 52 M=L3_TUNNEL;
    398 echo "  L3_TUNNEL_DATA";
    399 tr 50 M=L3_TUNNEL_DATA;
    400 tr 51 M=L3_TUNNEL_DATA;
    401 tr 52 M=L3_TUNNEL_DATA;
    402 echo "  L3_TUNNEL_TCAM";
    403 tr 50 M=L3_TUNNEL_TCAM;
    404 tr 51 M=L3_TUNNEL_TCAM;
    405 tr 52 M=L3_TUNNEL_TCAM;
    406 echo "  CCP";
    407 tr 50 M=CCP;
    408 tr 51 M=CCP;
    409 tr 52 M=CCP;
    410 echo "  CCPTR";
    411 tr 50 M=CCPTR;
    412 tr 51 M=CCPTR;
    413 tr 52 M=CCPTR;
    414 echo "  CELLPTRSWAP_00_HI";
    415 tr 50 M=CELLPTRSWAP_00_HI;
    416 tr 51 M=CELLPTRSWAP_00_HI;
    417 tr 52 M=CELLPTRSWAP_00_HI;
    418 echo "  CELLPTRSWAP_00_LO";
    419 tr 50 M=CELLPTRSWAP_00_LO;
    420 tr 51 M=CELLPTRSWAP_00_LO;
    421 tr 52 M=CELLPTRSWAP_00_LO;
    422 echo "  CELLPTRSWAP_01_HI";
    423 tr 50 M=CELLPTRSWAP_01_HI;
    424 tr 51 M=CELLPTRSWAP_01_HI;
    425 tr 52 M=CELLPTRSWAP_01_HI;
    426 echo "  CELLPTRSWAP_01_LO";
    427 tr 50 M=CELLPTRSWAP_01_LO;
    428 tr 51 M=CELLPTRSWAP_01_LO;
    429 tr 52 M=CELLPTRSWAP_01_LO;
    430 echo "  MMU_IBS";
    431 tr 50 M=MMU_IBS;
    432 tr 51 M=MMU_IBS;
    433 tr 52 M=MMU_IBS;
    434 echo "  MMU_INGPKTCELLLIMITIBP";
    435 tr 50 M=MMU_INGPKTCELLLIMITIBP;
    436 tr 51 M=MMU_INGPKTCELLLIMITIBP;
    437 tr 52 M=MMU_INGPKTCELLLIMITIBP;
    438 echo "  MMU_INGPKTCELLUSE";
    439 tr 50 M=MMU_INGPKTCELLUSE;
    440 tr 51 M=MMU_INGPKTCELLUSE;
    441 tr 52 M=MMU_INGPKTCELLUSE;
    442 echo "  MMU_IPMC_INDEX";
    443 tr 50 M=MMU_IPMC_INDEX;
    444 tr 51 M=MMU_IPMC_INDEX;
    445 tr 52 M=MMU_IPMC_INDEX;
    446 echo "  MMU_IPMC_PTR";
    447 tr 50 M=MMU_IPMC_PTR;
    448 tr 51 M=MMU_IPMC_PTR;
    449 tr 52 M=MMU_IPMC_PTR;
    450 echo "  MMU_IPMC_REP_10G";
    451 tr 50 M=MMU_IPMC_REP_10G;
    452 tr 51 M=MMU_IPMC_REP_10G;
    453 tr 52 M=MMU_IPMC_REP_10G;
    454 echo "  CFAP_CH0";
    455 tr 50 M=CFAP_CH0;
    456 tr 51 M=CFAP_CH0;
    457 tr 52 M=CFAP_CH0;
    458 echo "  CFAP_CH1";
    459 tr 50 M=CFAP_CH1;
    460 tr 51 M=CFAP_CH1;
    461 tr 52 M=CFAP_CH1;
    462 echo "  WQ_00_HI";
    463 tr 50 M=WQ_00_HI;
    464 tr 51 M=WQ_00_HI;
    465 tr 52 M=WQ_00_HI;
    466 echo "  MMU_WQ_00_LO";
    467 tr 50 M=MMU_WQ_00_LO;
    468 tr 51 M=MMU_WQ_00_LO;
    469 tr 52 M=MMU_WQ_00_LO;
    470 echo "  WQ_01_HI";
    471 tr 50 M=WQ_01_HI;
    472 tr 51 M=WQ_01_HI;
    473 tr 52 M=WQ_01_HI;
    474 echo "  WQ_01_LO";
    475 tr 50 M=WQ_01_LO;
    476 tr 51 M=WQ_01_LO;
    477 tr 52 M=WQ_01_LO;
    478 local xqrange 7
    479 if $?ge_mode "local xqrange 11"
    480 for xq=0,$xqrange  'echo "  XQ$xq"; tr 50 m=XQ$xq; tr 51 m=XQ$xq; tr 52 m=XQ$xq'
    481 for xq=12,13       'echo "  XQ$xq"; tr 50 m=XQ$xq; tr 51 m=XQ$xq; tr 52 m=XQ$xq'
    482 echo "  MPLS_EXP";
    483 tr 50 M=MPLS_EXP;
    484 tr 51 M=MPLS_EXP;
    485 tr 52 M=MPLS_EXP;
    486 if $?my_station 'echo "  MY_STATION"; \
    487         tr 50 M=MY_STATION; \
    488         tr 51 M=MY_STATION; \
    489         tr 52 M=MY_STATION;'
    490 if $?next_hop_ext 'echo "  NEXT_HOP_EXT"; \
    491         tr 50 M=NEXT_HOP_EXT; \
    492         tr 51 M=NEXT_HOP_EXT; \
    493         tr 52 M=NEXT_HOP_EXT;'
    494 if $?next_hop_int 'echo "  NEXT_HOP_INT"; \
    495         tr 50 M=NEXT_HOP_INT; \
    496         tr 51 M=NEXT_HOP_INT; \
    497         tr 52 M=NEXT_HOP_INT;'
    498 echo "  PORT";
    499 tr 50 M=PORT;
    500 tr 51 M=PORT;
    501 tr 52 M=PORT;
    502 echo "  SOURCE_TRUNK_MAP";
    503 tr 50 M=SOURCE_TRUNK_MAP;
    504 tr 51 M=SOURCE_TRUNK_MAP;
    505 tr 52 M=SOURCE_TRUNK_MAP;
    506 echo "  VLAN_STG";
    507 tr 50 M=VLAN_STG;
    508 tr 51 M=VLAN_STG;
    509 tr 52 M=VLAN_STG;
    510 echo "  TRUNK_BITMAP";
    511 tr 50 M=TRUNK_BITMAP;
    512 tr 51 M=TRUNK_BITMAP;
    513 tr 52 M=TRUNK_BITMAP;
    514 echo "  PORT_TRUNK_EGRESS";
    515 tr 50 M=PORT_TRUNK_EGRESS;
    516 tr 51 M=PORT_TRUNK_EGRESS;
    517 tr 52 M=PORT_TRUNK_EGRESS;
    518 echo "  TRUNK_GROUP";
    519 tr 50 M=TRUNK_GROUP;
    520 tr 51 M=TRUNK_GROUP;
    521 tr 52 M=TRUNK_GROUP;
    522 echo "  UDF_OFFSET";
    523 tr 50 M=UDF_OFFSET;
    524 tr 51 M=UDF_OFFSET;
    525 tr 52 M=UDF_OFFSET;
    526 echo "  VFI_BITMAP";
    527 tr 50 M=VFI_BITMAP;
    528 tr 51 M=VFI_BITMAP;
    529 tr 52 M=VFI_BITMAP;
    530 if $?vlan_mac 'echo "  VLAN_MAC"; \
    531         tr 50 M=VLAN_MAC; \
    532         tr 51 M=VLAN_MAC; \
    533         tr 52 M=VLAN_MAC;'
    534 echo "  VLAN_SUBNET";
    535 tr 50 M=VLAN_SUBNET;
    536 tr 51 M=VLAN_SUBNET;
    537 tr 52 M=VLAN_SUBNET;
    538 echo "  VLAN_SUBNET_DATA";
    539 tr 50 M=VLAN_SUBNET_DATA;
    540 tr 51 M=VLAN_SUBNET_DATA;
    541 tr 52 M=VLAN_SUBNET_DATA;
    542 echo "  VLAN_SUBNET_TCAM";
    543 tr 50 M=VLAN_SUBNET_TCAM;
    544 tr 51 M=VLAN_SUBNET_TCAM;
    545 tr 52 M=VLAN_SUBNET_TCAM;
    546 echo "  VLAN";
    547 tr 50 M=VLAN;
    548 tr 51 M=VLAN;
    549 tr 52 M=VLAN;
    550 echo "  VPLS_VC_LABEL";
    551 tr 50 M=VPLS_VC_LABEL;
    552 tr 51 M=VPLS_VC_LABEL;
    553 tr 52 M=VPLS_VC_LABEL;
    554 echo "  VRF_VFI_INTF";
    555 tr 50 M=VRF_VFI_INTF;
    556 tr 51 M=VRF_VFI_INTF;
    557 tr 52 M=VRF_VFI_INTF;
    558 if $?vlan_range_tbl 'echo "  IGR_VLAN_RANGE_TBL"; \
    559         tr 50 M=IGR_VLAN_RANGE_TBL; \
    560         tr 51 M=IGR_VLAN_RANGE_TBL; \
    561         tr 52 M=IGR_VLAN_RANGE_TBL; \
    562         echo "  TRUNK_VLAN_RANGE_IDX"; \
    563         tr 50 M=TRUNK_VLAN_RANGE_IDX; \
    564         tr 51 M=TRUNK_VLAN_RANGE_IDX; \
    565         tr 52 M=TRUNK_VLAN_RANGE_IDX; \
    566         echo "  VLAN_RANGE_IDX"; \
    567         tr 50 M=VLAN_RANGE_IDX; \
    568         tr 51 M=VLAN_RANGE_IDX; \
    569         tr 52 M=VLAN_RANGE_IDX;'
    570 $done
    571 
    572 #Table DMA/Table SLAM
    573 echo "Running Table DMA Tests ..."
    574 #echo "  BSAFE_CMD_DATA_IN"
    575 #tr 71 M=BSAFE_CMD_DATA_IN S=0 C=0 TSE=F SLTH=T
    576 #tr 71 M=BSAFE_CMD_DATA_IN S=0 C=0 TSE=T SLTH=T
    577 #tr 71 M=BSAFE_CMD_DATA_IN S=0 C=0 TSE=T SLTH=F
    578 #echo "  BSAFE_CMD_DATA_OUT"
    579 #tr 71 M=BSAFE_CMD_DATA_OUT S=0 C=0 TSE=F SLTH=T
    580 #tr 71 M=BSAFE_CMD_DATA_OUT S=0 C=0 TSE=T SLTH=T
    581 #tr 71 M=BSAFE_CMD_DATA_OUT S=0 C=0 TSE=T SLTH=F
    582 echo "  C0_CPU_RQ_DATA"
    583 tr 71 M=C0_CPU_RQ_DATA S=0 C=0 TSE=F SLTH=T
    584 tr 71 M=C0_CPU_RQ_DATA S=0 C=0 TSE=T SLTH=T
    585 tr 71 M=C0_CPU_RQ_DATA S=0 C=0 TSE=T SLTH=F
    586 echo "  C0_CPU_WQ_DATA"
    587 tr 71 M=C0_CPU_WQ_DATA S=0 C=0 TSE=F SLTH=T
    588 tr 71 M=C0_CPU_WQ_DATA S=0 C=0 TSE=T SLTH=T
    589 tr 71 M=C0_CPU_WQ_DATA S=0 C=0 TSE=T SLTH=F
    590 echo "  C0_RQ_DATA"
    591 tr 71 M=C0_RQ_DATA S=0 C=0 TSE=F SLTH=T
    592 tr 71 M=C0_RQ_DATA S=0 C=0 TSE=T SLTH=T
    593 tr 71 M=C0_RQ_DATA S=0 C=0 TSE=T SLTH=F
    594 
    595 #echo "  C0_WQ_DATA"
    596 #tr 71 M=C0_WQ_DATA S=0 C=0 TSE=F SLTH=T
    597 #tr 71 M=C0_WQ_DATA S=0 C=0 TSE=T SLTH=T
    598 #tr 71 M=C0_WQ_DATA S=0 C=0 TSE=T SLTH=F
    599 echo "  C1_CPU_RQ_DATA"
    600 tr 71 M=C1_CPU_RQ_DATA S=0 C=0 TSE=F SLTH=T
    601 tr 71 M=C1_CPU_RQ_DATA S=0 C=0 TSE=T SLTH=T
    602 tr 71 M=C1_CPU_RQ_DATA S=0 C=0 TSE=T SLTH=F
    603 echo "  C1_CPU_WQ_DATA"
    604 tr 71 M=C1_CPU_WQ_DATA S=0 C=0 TSE=F SLTH=T
    605 tr 71 M=C1_CPU_WQ_DATA S=0 C=0 TSE=T SLTH=T
    606 tr 71 M=C1_CPU_WQ_DATA S=0 C=0 TSE=T SLTH=F
    607 echo "  C1_RQ_DATA"
    608 tr 71 M=C1_RQ_DATA S=0 C=0 TSE=F SLTH=T
    609 tr 71 M=C1_RQ_DATA S=0 C=0 TSE=T SLTH=T
    610 tr 71 M=C1_RQ_DATA S=0 C=0 TSE=T SLTH=F
    611 
    612 #echo "  C1_WQ_DATA"
    613 #tr 71 M=C1_WQ_DATA S=0 C=0 TSE=F SLTH=T
    614 #tr 71 M=C1_WQ_DATA S=0 C=0 TSE=T SLTH=T
    615 #tr 71 M=C1_WQ_DATA S=0 C=0 TSE=T SLTH=F
    616 echo "  DSCP_TABLE"
    617 tr 71 M=DSCP_TABLE S=0 C=0 TSE=F SLTH=T
    618 tr 71 M=DSCP_TABLE S=0 C=0 TSE=T SLTH=T
    619 tr 71 M=DSCP_TABLE S=0 C=0 TSE=T SLTH=F
    620 echo "  E2E_HOL_STATUS"
    621 tr 71 M=E2E_HOL_STATUS S=0 C=0 TSE=F SLTH=T
    622 tr 71 M=E2E_HOL_STATUS S=0 C=0 TSE=T SLTH=T
    623 tr 71 M=E2E_HOL_STATUS S=0 C=0 TSE=T SLTH=F
    624 echo "  EGRESS_ADJACENT_MAC"
    625 tr 71 M=EGRESS_ADJACENT_MAC S=0 C=0 TSE=F SLTH=T
    626 tr 71 M=EGRESS_ADJACENT_MAC S=0 C=0 TSE=T SLTH=T
    627 tr 71 M=EGRESS_ADJACENT_MAC S=0 C=0 TSE=T SLTH=F
    628 echo "  EGRESS_DSCP_EXP"
    629 tr 71 M=EGRESS_DSCP_EXP S=0 C=0 TSE=F SLTH=T
    630 tr 71 M=EGRESS_DSCP_EXP S=0 C=0 TSE=T SLTH=T
    631 tr 71 M=EGRESS_DSCP_EXP S=0 C=0 TSE=T SLTH=F
    632 echo "  EGRESS_IP_TUNNEL"
    633 tr 71 M=EGRESS_IP_TUNNEL S=0 C=0 TSE=F SLTH=T
    634 tr 71 M=EGRESS_IP_TUNNEL S=0 C=0 TSE=T SLTH=T
    635 tr 71 M=EGRESS_IP_TUNNEL S=0 C=0 TSE=T SLTH=F
    636 echo "  EGRESS_MASK"
    637 tr 71 M=EGRESS_MASK S=0 C=0 TSE=F SLTH=T
    638 tr 71 M=EGRESS_MASK S=0 C=0 TSE=T SLTH=T
    639 tr 71 M=EGRESS_MASK S=0 C=0 TSE=T SLTH=F
    640 echo "  EGR_VLAN_XLATE"
    641 tr 71 M=EGR_VLAN_XLATE S=0 C=0 TSE=F SLTH=T
    642 tr 71 M=EGR_VLAN_XLATE S=0 C=0 TSE=T SLTH=T
    643 tr 71 M=EGR_VLAN_XLATE S=0 C=0 TSE=T SLTH=F
    644 if $?fp_counter_ext 'echo "  FP_COUNTER_EXT"; \
    645         tr 71 M=FP_COUNTER_EXT S=0 C=0 TSE=F SLTH=T; \
    646         tr 71 M=FP_COUNTER_EXT S=0 C=0 TSE=T SLTH=T; \
    647         tr 71 M=FP_COUNTER_EXT S=0 C=0 TSE=T SLTH=F;'
    648 echo "  FP_COUNTER_INT"
    649 tr 71 M=FP_COUNTER_INT S=0 C=0 TSE=F SLTH=T
    650 tr 71 M=FP_COUNTER_INT S=0 C=0 TSE=T SLTH=T
    651 tr 71 M=FP_COUNTER_INT S=0 C=0 TSE=T SLTH=F
    652 if $?fp_external 'echo "  FP_EXTERNAL"; \
    653         tr 71 M=FP_EXTERNAL S=0 C=$fp_test_count TSE=F SLTH=T; \
    654         tr 71 M=FP_EXTERNAL S=0 C=$fp_test_count TSE=T SLTH=T; \
    655         tr 71 M=FP_EXTERNAL S=0 C=$fp_test_count TSE=T SLTH=F; \
    656         tr 71 M=FP_EXTERNAL S=$fp_test_count C=$fp_test_count TSE=F SLTH=T; \
    657         tr 71 M=FP_EXTERNAL S=$fp_test_count C=$fp_test_count TSE=T SLTH=T; \
    658         tr 71 M=FP_EXTERNAL S=$fp_test_count C=$fp_test_count TSE=T SLTH=F;'
    659 echo "  FP_INTERNAL"
    660 tr 71 M=FP_INTERNAL S=0 C=0 TSE=F SLTH=T
    661 tr 71 M=FP_INTERNAL S=0 C=0 TSE=T SLTH=T
    662 tr 71 M=FP_INTERNAL S=0 C=0 TSE=T SLTH=F
    663 if $?fp_meter_table_ext 'echo "  FP_METER_TABLE_EXT"; \
    664         tr 71 M=FP_METER_TABLE_EXT S=0 C=0 TSE=F SLTH=T; \
    665         tr 71 M=FP_METER_TABLE_EXT S=0 C=0 TSE=T SLTH=T; \
    666         tr 71 M=FP_METER_TABLE_EXT S=0 C=0 TSE=T SLTH=F;'
    667 echo "  FP_METER_TABLE_INT"
    668 tr 71 M=FP_METER_TABLE_INT S=0 C=0 TSE=F SLTH=T
    669 tr 71 M=FP_METER_TABLE_INT S=0 C=0 TSE=T SLTH=T
    670 tr 71 M=FP_METER_TABLE_INT S=0 C=0 TSE=T SLTH=F
    671 if $?fp_policy_table_external 'echo "  FP_POLICY_TABLE_EXTERNAL"; \
    672         tr 71 M=FP_POLICY_TABLE_EXTERNAL S=0 C=0 TSE=F SLTH=T; \
    673         tr 71 M=FP_POLICY_TABLE_EXTERNAL S=0 C=0 TSE=T SLTH=T; \
    674         tr 71 M=FP_POLICY_TABLE_EXTERNAL S=0 C=0 TSE=T SLTH=F;'
    675 echo "  FP_POLICY_TABLE_INTERNAL"
    676 tr 71 M=FP_POLICY_TABLE_INTERNAL S=0 C=0 TSE=F SLTH=T
    677 tr 71 M=FP_POLICY_TABLE_INTERNAL S=0 C=0 TSE=T SLTH=T
    678 tr 71 M=FP_POLICY_TABLE_INTERNAL S=0 C=0 TSE=T SLTH=F
    679 echo "  FP_PORT_FIELD_SEL"
    680 tr 71 M=FP_PORT_FIELD_SEL S=0 C=0 TSE=F SLTH=T
    681 tr 71 M=FP_PORT_FIELD_SEL S=0 C=0 TSE=T SLTH=T
    682 tr 71 M=FP_PORT_FIELD_SEL S=0 C=0 TSE=T SLTH=F
    683 echo "  FP_RANGE_CHECK"
    684 tr 71 M=FP_RANGE_CHECK S=0 C=0 TSE=F SLTH=T
    685 tr 71 M=FP_RANGE_CHECK S=0 C=0 TSE=T SLTH=T
    686 tr 71 M=FP_RANGE_CHECK S=0 C=0 TSE=T SLTH=F
    687 if $?fp_tcam_external 'echo "  FP_TCAM_EXTERNAL"; \
    688         tr 71 M=FP_TCAM_EXTERNAL S=0 C=0 TSE=F SLTH=T; \
    689         tr 71 M=FP_TCAM_EXTERNAL S=0 C=0 TSE=T SLTH=T; \
    690         tr 71 M=FP_TCAM_EXTERNAL S=0 C=0 TSE=T SLTH=F;'
    691 echo "  FP_TCAM_INTERNAL"
    692 tr 71 M=FP_TCAM_INTERNAL S=0 C=0 TSE=F SLTH=T
    693 tr 71 M=FP_TCAM_INTERNAL S=0 C=0 TSE=T SLTH=T
    694 tr 71 M=FP_TCAM_INTERNAL S=0 C=0 TSE=T SLTH=F
    695 echo "  FP_TCP_UDP_PORT_RANGE"
    696 tr 71 M=FP_TCP_UDP_PORT_RANGE S=0 C=0 TSE=F SLTH=T
    697 tr 71 M=FP_TCP_UDP_PORT_RANGE S=0 C=0 TSE=T SLTH=T
    698 tr 71 M=FP_TCP_UDP_PORT_RANGE S=0 C=0 TSE=T SLTH=F
    699 echo "  HG_PORT_TABLE"
    700 tr 71 M=HG_PORT_TABLE S=0 C=0 TSE=F SLTH=T
    701 tr 71 M=HG_PORT_TABLE S=0 C=0 TSE=T SLTH=T
    702 tr 71 M=HG_PORT_TABLE S=0 C=0 TSE=T SLTH=F
    703 echo "  IGR_VLAN_XLATE"
    704 tr 71 M=IGR_VLAN_XLATE S=0 C=0 TSE=F SLTH=T
    705 tr 71 M=IGR_VLAN_XLATE S=0 C=0 TSE=T SLTH=T
    706 tr 71 M=IGR_VLAN_XLATE S=0 C=0 TSE=T SLTH=F
    707 echo "  IPMC_GROUP_V4_SM"
    708 tr 71 M=IPMC_GROUP_V4_SM S=0 C=0 TSE=F SLTH=T
    709 tr 71 M=IPMC_GROUP_V4_SM S=0 C=0 TSE=T SLTH=T
    710 tr 71 M=IPMC_GROUP_V4_SM S=0 C=0 TSE=T SLTH=F
    711 echo "  IPMC_GROUP_V6_SM"
    712 tr 71 M=IPMC_GROUP_V6_SM S=0 C=0 TSE=F SLTH=T
    713 tr 71 M=IPMC_GROUP_V6_SM S=0 C=0 TSE=T SLTH=T
    714 tr 71 M=IPMC_GROUP_V6_SM S=0 C=0 TSE=T SLTH=F
    715 echo "  IPORT_TABLE"
    716 tr 71 M=IPORT_TABLE S=0 C=0 TSE=F SLTH=T
    717 tr 71 M=IPORT_TABLE S=0 C=0 TSE=T SLTH=T
    718 tr 71 M=IPORT_TABLE S=0 C=0 TSE=T SLTH=F
    719 echo "  L2MC_TABLE"
    720 tr 71 M=L2MC_TABLE S=0 C=0 TSE=F SLTH=T
    721 tr 71 M=L2MC_TABLE S=0 C=0 TSE=T SLTH=T
    722 tr 71 M=L2MC_TABLE S=0 C=0 TSE=T SLTH=F
    723 if $?l2_entry_external 'echo "  L2_ENTRY_EXTERNAL"; \
    724         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start0 C=$l2ext_test_count TSE=F SLTH=T; \
    725         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start0 C=$l2ext_test_count TSE=T SLTH=T; \
    726         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start0 C=$l2ext_test_count TSE=T SLTH=F; \
    727         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start1 C=$l2ext_test_count TSE=F SLTH=T; \
    728         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start1 C=$l2ext_test_count TSE=T SLTH=T; \
    729         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start1 C=$l2ext_test_count TSE=T SLTH=F; \
    730         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start2 C=$l2ext_test_count TSE=F SLTH=T; \
    731         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start2 C=$l2ext_test_count TSE=T SLTH=T; \
    732         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start2 C=$l2ext_test_count TSE=T SLTH=F; \
    733         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start3 C=$l2ext_test_count TSE=F SLTH=T; \
    734         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start3 C=$l2ext_test_count TSE=T SLTH=T; \
    735         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start3 C=$l2ext_test_count TSE=T SLTH=F; \
    736         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start4 C=$l2ext_test_count TSE=F SLTH=T; \
    737         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start4 C=$l2ext_test_count TSE=T SLTH=T; \
    738         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start4 C=$l2ext_test_count TSE=T SLTH=F; \
    739         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start5 C=$l2ext_test_count TSE=F SLTH=T; \
    740         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start5 C=$l2ext_test_count TSE=T SLTH=T; \
    741         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start5 C=$l2ext_test_count TSE=T SLTH=F; \
    742         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start6 C=$l2ext_test_count TSE=F SLTH=T; \
    743         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start6 C=$l2ext_test_count TSE=T SLTH=T; \
    744         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start6 C=$l2ext_test_count TSE=T SLTH=F; \
    745         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start7 C=$l2ext_test_count TSE=F SLTH=T; \
    746         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start7 C=$l2ext_test_count TSE=T SLTH=T; \
    747         tr 71 M=L2_ENTRY_EXTERNAL S=$l2ext_test_start7 C=$l2ext_test_count TSE=T SLTH=F;'
    748 if $?l2_entry_internal 'echo "  L2_ENTRY_INTERNAL"; \
    749         tr 71 M=L2_ENTRY_INTERNAL S=0 C=0 TSE=F SLTH=T; \
    750         tr 71 M=L2_ENTRY_INTERNAL S=0 C=0 TSE=T SLTH=T; \
    751         tr 71 M=L2_ENTRY_INTERNAL S=0 C=0 TSE=T SLTH=F;'
    752 echo "  L2_ENTRY_OVERFLOW"
    753 tr 71 M=L2_ENTRY_OVERFLOW S=0 C=0 TSE=F SLTH=T
    754 tr 71 M=L2_ENTRY_OVERFLOW S=0 C=0 TSE=T SLTH=T
    755 tr 71 M=L2_ENTRY_OVERFLOW S=0 C=0 TSE=T SLTH=F
    756 
    757 #echo "  L2_MOD_FIFO"
    758 #tr 71 M=L2_MOD_FIFO S=0 C=0 TSE=F SLTH=T
    759 #tr 71 M=L2_MOD_FIFO S=0 C=0 TSE=T SLTH=T
    760 #tr 71 M=L2_MOD_FIFO S=0 C=0 TSE=T SLTH=F
    761 echo "  L2_USER_ENTRY"
    762 tr 71 M=L2_USER_ENTRY S=0 C=0 TSE=F SLTH=T
    763 tr 71 M=L2_USER_ENTRY S=0 C=0 TSE=T SLTH=T
    764 tr 71 M=L2_USER_ENTRY S=0 C=0 TSE=T SLTH=F
    765 echo "  L2_USER_ENTRY_DATA"
    766 tr 71 M=L2_USER_ENTRY_DATA S=0 C=0 TSE=F SLTH=T
    767 tr 71 M=L2_USER_ENTRY_DATA S=0 C=0 TSE=T SLTH=T
    768 tr 71 M=L2_USER_ENTRY_DATA S=0 C=0 TSE=T SLTH=F
    769 echo "  L2_USER_ENTRY_TCAM"
    770 tr 71 M=L2_USER_ENTRY_TCAM S=0 C=0 TSE=F SLTH=T
    771 tr 71 M=L2_USER_ENTRY_TCAM S=0 C=0 TSE=T SLTH=T
    772 tr 71 M=L2_USER_ENTRY_TCAM S=0 C=0 TSE=T SLTH=F
    773 echo "  L3_INTF_TABLE"
    774 tr 71 M=L3_INTF_TABLE S=0 C=0 TSE=F SLTH=T
    775 tr 71 M=L3_INTF_TABLE S=0 C=0 TSE=T SLTH=T
    776 tr 71 M=L3_INTF_TABLE S=0 C=0 TSE=T SLTH=F
    777 echo "  L3_INTF_EGR_FILTER_LIST"
    778 tr 71 M=L3_INTF_EGR_FILTER_LIST S=0 C=0 TSE=F SLTH=T
    779 tr 71 M=L3_INTF_EGR_FILTER_LIST S=0 C=0 TSE=T SLTH=T
    780 tr 71 M=L3_INTF_EGR_FILTER_LIST S=0 C=0 TSE=T SLTH=F
    781 echo "  L3_INTF_IGR_FILTER_LIST"
    782 tr 71 M=L3_INTF_IGR_FILTER_LIST S=0 C=0 TSE=F SLTH=T
    783 tr 71 M=L3_INTF_IGR_FILTER_LIST S=0 C=0 TSE=T SLTH=T
    784 tr 71 M=L3_INTF_IGR_FILTER_LIST S=0 C=0 TSE=T SLTH=F
    785 echo "  L3_INTF_QOS"
    786 tr 71 M=L3_INTF_QOS S=0 C=0 TSE=F SLTH=T
    787 tr 71 M=L3_INTF_QOS S=0 C=0 TSE=T SLTH=T
    788 tr 71 M=L3_INTF_QOS S=0 C=0 TSE=T SLTH=F
    789 if $?l3_defip_alg 'echo "  L3_DEFIP_ALG"; \
    790         tr 71 M=L3_DEFIP_ALG S=$defip_test_start0 C=$defip_test_count TSE=F SLTH=T; \
    791         tr 71 M=L3_DEFIP_ALG S=$defip_test_start0 C=$defip_test_count TSE=T SLTH=T; \
    792         tr 71 M=L3_DEFIP_ALG S=$defip_test_start0 C=$defip_test_count TSE=T SLTH=F; \
    793         tr 71 M=L3_DEFIP_ALG S=$defip_test_start1 C=$defip_test_count TSE=F SLTH=T; \
    794         tr 71 M=L3_DEFIP_ALG S=$defip_test_start1 C=$defip_test_count TSE=T SLTH=T; \
    795         tr 71 M=L3_DEFIP_ALG S=$defip_test_start1 C=$defip_test_count TSE=T SLTH=F; \
    796         tr 71 M=L3_DEFIP_ALG S=$defip_test_start2 C=$defip_test_count TSE=F SLTH=T; \
    797         tr 71 M=L3_DEFIP_ALG S=$defip_test_start2 C=$defip_test_count TSE=T SLTH=T; \
    798         tr 71 M=L3_DEFIP_ALG S=$defip_test_start2 C=$defip_test_count TSE=T SLTH=F; \
    799         tr 71 M=L3_DEFIP_ALG S=$defip_test_start3 C=$defip_test_count TSE=F SLTH=T; \
    800         tr 71 M=L3_DEFIP_ALG S=$defip_test_start3 C=$defip_test_count TSE=T SLTH=T; \
    801         tr 71 M=L3_DEFIP_ALG S=$defip_test_start3 C=$defip_test_count TSE=T SLTH=F; \
    802         tr 71 M=L3_DEFIP_ALG S=$defip_test_start4 C=$defip_test_count TSE=F SLTH=T; \
    803         tr 71 M=L3_DEFIP_ALG S=$defip_test_start4 C=$defip_test_count TSE=T SLTH=T; \
    804         tr 71 M=L3_DEFIP_ALG S=$defip_test_start4 C=$defip_test_count TSE=T SLTH=F; \
    805         tr 71 M=L3_DEFIP_ALG S=$defip_test_start5 C=$defip_test_count TSE=F SLTH=T; \
    806         tr 71 M=L3_DEFIP_ALG S=$defip_test_start5 C=$defip_test_count TSE=T SLTH=T; \
    807         tr 71 M=L3_DEFIP_ALG S=$defip_test_start5 C=$defip_test_count TSE=T SLTH=F; \
    808         tr 71 M=L3_DEFIP_ALG S=$defip_test_start6 C=$defip_test_count TSE=F SLTH=T; \
    809         tr 71 M=L3_DEFIP_ALG S=$defip_test_start6 C=$defip_test_count TSE=T SLTH=T; \
    810         tr 71 M=L3_DEFIP_ALG S=$defip_test_start6 C=$defip_test_count TSE=T SLTH=F; \
    811         tr 71 M=L3_DEFIP_ALG S=$defip_test_start7 C=$defip_test_count TSE=F SLTH=T; \
    812         tr 71 M=L3_DEFIP_ALG S=$defip_test_start7 C=$defip_test_count TSE=T SLTH=T; \
    813         tr 71 M=L3_DEFIP_ALG S=$defip_test_start7 C=$defip_test_count TSE=T SLTH=F;'
    814 if $?l3_defip_cam 'echo "  L3_DEFIP_CAM"; \
    815         tr 71 M=L3_DEFIP_CAM S=$defip_test_start0 C=$defip_test_count TSE=F SLTH=T; \
    816         tr 71 M=L3_DEFIP_CAM S=$defip_test_start0 C=$defip_test_count TSE=T SLTH=T; \
    817         tr 71 M=L3_DEFIP_CAM S=$defip_test_start0 C=$defip_test_count TSE=T SLTH=F; \
    818         tr 71 M=L3_DEFIP_CAM S=$defip_test_start1 C=$defip_test_count TSE=F SLTH=T; \
    819         tr 71 M=L3_DEFIP_CAM S=$defip_test_start1 C=$defip_test_count TSE=T SLTH=T; \
    820         tr 71 M=L3_DEFIP_CAM S=$defip_test_start1 C=$defip_test_count TSE=T SLTH=F; \
    821         tr 71 M=L3_DEFIP_CAM S=$defip_test_start2 C=$defip_test_count TSE=F SLTH=T; \
    822         tr 71 M=L3_DEFIP_CAM S=$defip_test_start2 C=$defip_test_count TSE=T SLTH=T; \
    823         tr 71 M=L3_DEFIP_CAM S=$defip_test_start2 C=$defip_test_count TSE=T SLTH=F; \
    824         tr 71 M=L3_DEFIP_CAM S=$defip_test_start3 C=$defip_test_count TSE=F SLTH=T; \
    825         tr 71 M=L3_DEFIP_CAM S=$defip_test_start3 C=$defip_test_count TSE=T SLTH=T; \
    826         tr 71 M=L3_DEFIP_CAM S=$defip_test_start3 C=$defip_test_count TSE=T SLTH=F;'
    827 if $?l3_defip_data 'echo "  L3_DEFIP_DATA"; \
    828         tr 71 M=L3_DEFIP_DATA S=0 C=0 TSE=F SLTH=T; \
    829         tr 71 M=L3_DEFIP_DATA S=0 C=0 TSE=T SLTH=T; \
    830         tr 71 M=L3_DEFIP_DATA S=0 C=0 TSE=T SLTH=F;'
    831 if $?l3_defip_tcam 'echo "  L3_DEFIP_TCAM"; \
    832         tr 71 M=L3_DEFIP_TCAM S=$defip_test_start0 C=$defip_test_count TSE=F SLTH=T; \
    833         tr 71 M=L3_DEFIP_TCAM S=$defip_test_start0 C=$defip_test_count TSE=T SLTH=T; \
    834         tr 71 M=L3_DEFIP_TCAM S=$defip_test_start0 C=$defip_test_count TSE=T SLTH=F; \
    835         tr 71 M=L3_DEFIP_TCAM S=$defip_test_start1 C=$defip_test_count TSE=F SLTH=T; \
    836         tr 71 M=L3_DEFIP_TCAM S=$defip_test_start1 C=$defip_test_count TSE=T SLTH=T; \
    837         tr 71 M=L3_DEFIP_TCAM S=$defip_test_start1 C=$defip_test_count TSE=T SLTH=F; \
    838         tr 71 M=L3_DEFIP_TCAM S=$defip_test_start2 C=$defip_test_count TSE=F SLTH=T; \
    839         tr 71 M=L3_DEFIP_TCAM S=$defip_test_start2 C=$defip_test_count TSE=T SLTH=T; \
    840         tr 71 M=L3_DEFIP_TCAM S=$defip_test_start2 C=$defip_test_count TSE=T SLTH=F; \
    841         tr 71 M=L3_DEFIP_TCAM S=$defip_test_start3 C=$defip_test_count TSE=F SLTH=T; \
    842         tr 71 M=L3_DEFIP_TCAM S=$defip_test_start3 C=$defip_test_count TSE=T SLTH=T; \
    843         tr 71 M=L3_DEFIP_TCAM S=$defip_test_start3 C=$defip_test_count TSE=T SLTH=F;'
    844 echo "  L3_ECMP"
    845 tr 71 M=L3_ECMP S=0 C=0 TSE=F SLTH=T
    846 tr 71 M=L3_ECMP S=0 C=0 TSE=T SLTH=T
    847 tr 71 M=L3_ECMP S=0 C=0 TSE=T SLTH=F
    848 if $?l3_entry_v4 'echo "  L3_ENTRY_V4"; \
    849         tr 71 M=L3_ENTRY_V4 S=0 C=0 TSE=F SLTH=T; \
    850         tr 71 M=L3_ENTRY_V4 S=0 C=0 TSE=T SLTH=T; \
    851         tr 71 M=L3_ENTRY_V4 S=0 C=0 TSE=T SLTH=F;'
    852 if $?l3_entry_v6 'echo "  L3_ENTRY_V6"; \
    853         tr 71 M=L3_ENTRY_V6 S=0 C=0 TSE=F SLTH=T; \
    854         tr 71 M=L3_ENTRY_V6 S=0 C=0 TSE=T SLTH=T; \
    855         tr 71 M=L3_ENTRY_V6 S=0 C=0 TSE=T SLTH=F;'
    856 echo "  L3_IPMC"
    857 tr 71 M=L3_IPMC S=0 C=0 TSE=F SLTH=T
    858 tr 71 M=L3_IPMC S=0 C=0 TSE=T SLTH=T
    859 tr 71 M=L3_IPMC S=0 C=0 TSE=T SLTH=F
    860 echo "  L3_DEFIP_HITBIT"
    861 tr 71 M=L3_DEFIP_HITBIT S=0 C=0 TSE=F SLTH=T
    862 tr 71 M=L3_DEFIP_HITBIT S=0 C=0 TSE=T SLTH=T
    863 tr 71 M=L3_DEFIP_HITBIT S=0 C=0 TSE=T SLTH=F
    864 echo "  L3_TUNNEL"
    865 tr 71 M=L3_TUNNEL S=0 C=0 TSE=F SLTH=T
    866 tr 71 M=L3_TUNNEL S=0 C=0 TSE=T SLTH=T
    867 tr 71 M=L3_TUNNEL S=0 C=0 TSE=T SLTH=F
    868 echo "  L3_TUNNEL_DATA"
    869 tr 71 M=L3_TUNNEL_DATA S=0 C=0 TSE=F SLTH=T
    870 tr 71 M=L3_TUNNEL_DATA S=0 C=0 TSE=T SLTH=T
    871 tr 71 M=L3_TUNNEL_DATA S=0 C=0 TSE=T SLTH=F
    872 echo "  L3_TUNNEL_TCAM"
    873 tr 71 M=L3_TUNNEL_TCAM S=0 C=0 TSE=F SLTH=T
    874 tr 71 M=L3_TUNNEL_TCAM S=0 C=0 TSE=T SLTH=T
    875 tr 71 M=L3_TUNNEL_TCAM S=0 C=0 TSE=T SLTH=F
    876 echo "  CCP"
    877 tr 71 M=CCP S=0 C=0 TSE=F SLTH=T
    878 tr 71 M=CCP S=0 C=0 TSE=T SLTH=T
    879 tr 71 M=CCP S=0 C=0 TSE=T SLTH=F
    880 echo "  CCPTR"
    881 tr 71 M=CCPTR S=0 C=0 TSE=F SLTH=T
    882 tr 71 M=CCPTR S=0 C=0 TSE=T SLTH=T
    883 tr 71 M=CCPTR S=0 C=0 TSE=T SLTH=F
    884 echo "  CELLPTRSWAP_00_HI"
    885 tr 71 M=CELLPTRSWAP_00_HI S=0 C=0 TSE=F SLTH=T
    886 tr 71 M=CELLPTRSWAP_00_HI S=0 C=0 TSE=T SLTH=T
    887 tr 71 M=CELLPTRSWAP_00_HI S=0 C=0 TSE=T SLTH=F
    888 echo "  CELLPTRSWAP_00_LO"
    889 tr 71 M=CELLPTRSWAP_00_LO S=0 C=0 TSE=F SLTH=T
    890 tr 71 M=CELLPTRSWAP_00_LO S=0 C=0 TSE=T SLTH=T
    891 tr 71 M=CELLPTRSWAP_00_LO S=0 C=0 TSE=T SLTH=F
    892 echo "  CELLPTRSWAP_01_HI"
    893 tr 71 M=CELLPTRSWAP_01_HI S=0 C=0 TSE=F SLTH=T
    894 tr 71 M=CELLPTRSWAP_01_HI S=0 C=0 TSE=T SLTH=T
    895 tr 71 M=CELLPTRSWAP_01_HI S=0 C=0 TSE=T SLTH=F
    896 echo "  CELLPTRSWAP_01_LO"
    897 tr 71 M=CELLPTRSWAP_01_LO S=0 C=0 TSE=F SLTH=T
    898 tr 71 M=CELLPTRSWAP_01_LO S=0 C=0 TSE=T SLTH=T
    899 tr 71 M=CELLPTRSWAP_01_LO S=0 C=0 TSE=T SLTH=F
    900 echo "  MMU_IBS"
    901 tr 71 M=MMU_IBS S=0 C=0 TSE=F SLTH=T
    902 tr 71 M=MMU_IBS S=0 C=0 TSE=T SLTH=T
    903 tr 71 M=MMU_IBS S=0 C=0 TSE=T SLTH=F
    904 echo "  MMU_INGPKTCELLLIMITIBP"
    905 tr 71 M=MMU_INGPKTCELLLIMITIBP S=0 C=0 TSE=F SLTH=T
    906 tr 71 M=MMU_INGPKTCELLLIMITIBP S=0 C=0 TSE=T SLTH=T
    907 tr 71 M=MMU_INGPKTCELLLIMITIBP S=0 C=0 TSE=T SLTH=F
    908 echo "  MMU_INGPKTCELLUSE"
    909 tr 71 M=MMU_INGPKTCELLUSE S=0 C=0 TSE=F SLTH=T
    910 tr 71 M=MMU_INGPKTCELLUSE S=0 C=0 TSE=T SLTH=T
    911 tr 71 M=MMU_INGPKTCELLUSE S=0 C=0 TSE=T SLTH=F
    912 echo "  MMU_IPMC_INDEX"
    913 tr 71 M=MMU_IPMC_INDEX S=0 C=0 TSE=F SLTH=T
    914 tr 71 M=MMU_IPMC_INDEX S=0 C=0 TSE=T SLTH=T
    915 tr 71 M=MMU_IPMC_INDEX S=0 C=0 TSE=T SLTH=F
    916 echo "  MMU_IPMC_PTR"
    917 tr 71 M=MMU_IPMC_PTR S=0 C=0 TSE=F SLTH=T
    918 tr 71 M=MMU_IPMC_PTR S=0 C=0 TSE=T SLTH=T
    919 tr 71 M=MMU_IPMC_PTR S=0 C=0 TSE=T SLTH=F
    920 echo "  MMU_IPMC_REP_10G"
    921 tr 71 M=MMU_IPMC_REP_10G S=0 C=0 TSE=F SLTH=T
    922 tr 71 M=MMU_IPMC_REP_10G S=0 C=0 TSE=T SLTH=T
    923 tr 71 M=MMU_IPMC_REP_10G S=0 C=0 TSE=T SLTH=F
    924 echo "  CFAP_CH0"
    925 tr 71 M=CFAP_CH0 S=0 C=0 TSE=F SLTH=T
    926 tr 71 M=CFAP_CH0 S=0 C=0 TSE=T SLTH=T
    927 tr 71 M=CFAP_CH0 S=0 C=0 TSE=T SLTH=F
    928 echo "  CFAP_CH1"
    929 tr 71 M=CFAP_CH1 S=0 C=0 TSE=F SLTH=T
    930 tr 71 M=CFAP_CH1 S=0 C=0 TSE=T SLTH=T
    931 tr 71 M=CFAP_CH1 S=0 C=0 TSE=T SLTH=F
    932 echo "  WQ_00_HI"
    933 tr 71 M=WQ_00_HI S=0 C=0 TSE=F SLTH=T
    934 tr 71 M=WQ_00_HI S=0 C=0 TSE=T SLTH=T
    935 tr 71 M=WQ_00_HI S=0 C=0 TSE=T SLTH=F
    936 echo "  MMU_WQ_00_LO"
    937 tr 71 M=MMU_WQ_00_LO S=0 C=0 TSE=F SLTH=T
    938 tr 71 M=MMU_WQ_00_LO S=0 C=0 TSE=T SLTH=T
    939 tr 71 M=MMU_WQ_00_LO S=0 C=0 TSE=T SLTH=F
    940 echo "  WQ_01_HI"
    941 tr 71 M=WQ_01_HI S=0 C=0 TSE=F SLTH=T
    942 tr 71 M=WQ_01_HI S=0 C=0 TSE=T SLTH=T
    943 tr 71 M=WQ_01_HI S=0 C=0 TSE=T SLTH=F
    944 echo "  WQ_01_LO"
    945 tr 71 M=WQ_01_LO S=0 C=0 TSE=F SLTH=T
    946 tr 71 M=WQ_01_LO S=0 C=0 TSE=T SLTH=T
    947 tr 71 M=WQ_01_LO S=0 C=0 TSE=T SLTH=F
    948 local xqrange 7
    949 if $?ge_mode "local xqrange 11"
    950 for xq=0,$xqrange  'echo "  XQ$xq"; \
    951 tr 71 M=XQ$xq S=0 C=0 TSE=F SLTH=T; \
    952 tr 71 M=XQ$xq S=0 C=0 TSE=T SLTH=T; \
    953 tr 71 M=XQ$xq S=0 C=0 TSE=T SLTH=F;'
    954 for xq=12,13  'echo "  XQ$xq";      \
    955 tr 71 M=XQ$xq S=0 C=0 TSE=F SLTH=T; \
    956 tr 71 M=XQ$xq S=0 C=0 TSE=T SLTH=T; \
    957 tr 71 M=XQ$xq S=0 C=0 TSE=T SLTH=F;'
    958 echo "  MPLS_EXP"
    959 tr 71 M=MPLS_EXP S=0 C=0 TSE=F SLTH=T
    960 tr 71 M=MPLS_EXP S=0 C=0 TSE=T SLTH=T
    961 tr 71 M=MPLS_EXP S=0 C=0 TSE=T SLTH=F
    962 if $?my_station 'echo "  MY_STATION"; \
    963         tr 71 M=MY_STATION S=0 C=0 TSE=F SLTH=T; \
    964         tr 71 M=MY_STATION S=0 C=0 TSE=T SLTH=T; \
    965         tr 71 M=MY_STATION S=0 C=0 TSE=T SLTH=F;'
    966 if $?next_hop_ext 'echo "  NEXT_HOP_EXT"; \
    967         tr 71 M=NEXT_HOP_EXT S=0 C=0 TSE=F SLTH=T; \
    968         tr 71 M=NEXT_HOP_EXT S=0 C=0 TSE=T SLTH=T; \
    969         tr 71 M=NEXT_HOP_EXT S=0 C=0 TSE=T SLTH=F;'
    970 if $?next_hop_int 'echo "  NEXT_HOP_INT"; \
    971         tr 71 M=NEXT_HOP_INT S=0 C=0 TSE=F SLTH=T; \
    972         tr 71 M=NEXT_HOP_INT S=0 C=0 TSE=T SLTH=T; \
    973         tr 71 M=NEXT_HOP_INT S=0 C=0 TSE=T SLTH=F;'
    974 echo "  PORT"
    975 tr 71 M=PORT S=0 C=0 TSE=F SLTH=T
    976 tr 71 M=PORT S=0 C=0 TSE=T SLTH=T
    977 tr 71 M=PORT S=0 C=0 TSE=T SLTH=F
    978 echo "  SOURCE_TRUNK_MAP"
    979 tr 71 M=SOURCE_TRUNK_MAP S=0 C=0 TSE=F SLTH=T
    980 tr 71 M=SOURCE_TRUNK_MAP S=0 C=0 TSE=T SLTH=T
    981 tr 71 M=SOURCE_TRUNK_MAP S=0 C=0 TSE=T SLTH=F
    982 echo "  VLAN_STG"
    983 tr 71 M=VLAN_STG S=0 C=0 TSE=F SLTH=T
    984 tr 71 M=VLAN_STG S=0 C=0 TSE=T SLTH=T
    985 tr 71 M=VLAN_STG S=0 C=0 TSE=T SLTH=F
    986 echo "  TRUNK_BITMAP"
    987 tr 71 M=TRUNK_BITMAP S=0 C=0 TSE=F SLTH=T
    988 tr 71 M=TRUNK_BITMAP S=0 C=0 TSE=T SLTH=T
    989 tr 71 M=TRUNK_BITMAP S=0 C=0 TSE=T SLTH=F
    990 echo "  PORT_TRUNK_EGRESS"
    991 tr 71 M=PORT_TRUNK_EGRESS S=0 C=0 TSE=F SLTH=T
    992 tr 71 M=PORT_TRUNK_EGRESS S=0 C=0 TSE=T SLTH=T
    993 tr 71 M=PORT_TRUNK_EGRESS S=0 C=0 TSE=T SLTH=F
    994 echo "  TRUNK_GROUP"
    995 tr 71 M=TRUNK_GROUP S=0 C=0 TSE=F SLTH=T
    996 tr 71 M=TRUNK_GROUP S=0 C=0 TSE=T SLTH=T
    997 tr 71 M=TRUNK_GROUP S=0 C=0 TSE=T SLTH=F
    998 echo "  UDF_OFFSET"
    999 tr 71 M=UDF_OFFSET S=0 C=0 TSE=F SLTH=T
   1000 tr 71 M=UDF_OFFSET S=0 C=0 TSE=T SLTH=T
   1001 tr 71 M=UDF_OFFSET S=0 C=0 TSE=T SLTH=F
   1002 echo "  VFI_BITMAP"
   1003 tr 71 M=VFI_BITMAP S=0 C=0 TSE=F SLTH=T
   1004 tr 71 M=VFI_BITMAP S=0 C=0 TSE=T SLTH=T
   1005 tr 71 M=VFI_BITMAP S=0 C=0 TSE=T SLTH=F
   1006 if $?vlan_mac 'echo "  VLAN_MAC"; \
   1007         tr 71 M=VLAN_MAC S=0 C=0 TSE=F SLTH=T; \
   1008         tr 71 M=VLAN_MAC S=0 C=0 TSE=T SLTH=T; \
   1009         tr 71 M=VLAN_MAC S=0 C=0 TSE=T SLTH=F;'
   1010 echo "  VLAN_SUBNET"
   1011 tr 71 M=VLAN_SUBNET S=0 C=0 TSE=F SLTH=T
   1012 tr 71 M=VLAN_SUBNET S=0 C=0 TSE=T SLTH=T
   1013 tr 71 M=VLAN_SUBNET S=0 C=0 TSE=T SLTH=F
   1014 echo "  VLAN_SUBNET_DATA"
   1015 tr 71 M=VLAN_SUBNET_DATA S=0 C=0 TSE=F SLTH=T
   1016 tr 71 M=VLAN_SUBNET_DATA S=0 C=0 TSE=T SLTH=T
   1017 tr 71 M=VLAN_SUBNET_DATA S=0 C=0 TSE=T SLTH=F
   1018 echo "  VLAN_SUBNET_TCAM"
   1019 tr 71 M=VLAN_SUBNET_TCAM S=0 C=0 TSE=F SLTH=T
   1020 tr 71 M=VLAN_SUBNET_TCAM S=0 C=0 TSE=T SLTH=T
   1021 tr 71 M=VLAN_SUBNET_TCAM S=0 C=0 TSE=T SLTH=F
   1022 echo "  VLAN"
   1023 tr 71 M=VLAN S=0 C=0 TSE=F SLTH=T
   1024 tr 71 M=VLAN S=0 C=0 TSE=T SLTH=T
   1025 tr 71 M=VLAN S=0 C=0 TSE=T SLTH=F
   1026 echo "  VPLS_VC_LABEL"
   1027 tr 71 M=VPLS_VC_LABEL S=0 C=0 TSE=F SLTH=T
   1028 tr 71 M=VPLS_VC_LABEL S=0 C=0 TSE=T SLTH=T
   1029 tr 71 M=VPLS_VC_LABEL S=0 C=0 TSE=T SLTH=F
   1030 echo "  VRF_VFI_INTF"
   1031 tr 71 M=VRF_VFI_INTF S=0 C=0 TSE=F SLTH=T
   1032 tr 71 M=VRF_VFI_INTF S=0 C=0 TSE=T SLTH=T
   1033 tr 71 M=VRF_VFI_INTF S=0 C=0 TSE=T SLTH=F
   1034 if $?vlan_range_tbl 'echo "  IGR_VLAN_RANGE_TBL"; \
   1035         tr 71 M=IGR_VLAN_RANGE_TBL S=0 C=0 TSE=F SLTH=T; \
   1036         tr 71 M=IGR_VLAN_RANGE_TBL S=0 C=0 TSE=T SLTH=T; \
   1037         tr 71 M=IGR_VLAN_RANGE_TBL S=0 C=0 TSE=T SLTH=F; \
   1038         echo "  TRUNK_VLAN_RANGE_IDX"; \
   1039         tr 71 M=TRUNK_VLAN_RANGE_IDX S=0 C=0 TSE=F SLTH=T; \
   1040         tr 71 M=TRUNK_VLAN_RANGE_IDX S=0 C=0 TSE=T SLTH=T; \
   1041         tr 71 M=TRUNK_VLAN_RANGE_IDX S=0 C=0 TSE=T SLTH=F; \
   1042         echo "  VLAN_RANGE_IDX"; \
   1043         tr 71 M=VLAN_RANGE_IDX S=0 C=0 TSE=F SLTH=T; \
   1044         tr 71 M=VLAN_RANGE_IDX S=0 C=0 TSE=T SLTH=T; \
   1045         tr 71 M=VLAN_RANGE_IDX S=0 C=0 TSE=T SLTH=F;'
   1046 
   1047 #echo "Running BSAFE Self test"
   1048 #tr 65
   1049 #$done
   1050 
   1051 # Re-initialize to clean up of various read/wrires to MMU memories
   1052 rcload rc.soc
   1053 linkscan off
   1054 
   1055 echo "Running counter width verification test ..."
   1056 tr 30
   1057 $done
   1058 
   1059 echo "Running counter read/write test ..."
   1060 tr 31
   1061 $done
   1062 
   1063 #L2/L3 hashing tests
   1064 echo "Running L2 insert/delete/lookup test ..."
   1065 tr 32
   1066 $done
   1067 
   1068 echo "Running L2 overflow insert test ..."
   1069 tr 33
   1070 $done
   1071 
   1072 echo "Running L2 hash test ..."
   1073 tr 34
   1074 $done
   1075 
   1076 echo "Running L2 delete by port test ..."
   1077 tr 35
   1078 $done
   1079 
   1080 echo "Running L2 delete by vlan test ..."
   1081 tr 36
   1082 $done
   1083 
   1084 echo "Running IPV4 overflow insert test ..."
   1085 tr 87 IPMCEnable=False
   1086 tr 87 IPMCEnable=True
   1087 $done
   1088 
   1089 echo "Running IPV6 hash test ..."
   1090 tr 88 IPMCEnable=False
   1091 tr 88 IPMCEnable=True
   1092 $done
   1093 
   1094 echo "Running IPV6 overflow insert test ..."
   1095 tr 85 IPMCEnable=False
   1096 tr 85 IPMCEnable=True
   1097 $done
   1098 
   1099 echo "Running IPV6 hash test ..."
   1100 tr 86 IPMCEnable=False
   1101 tr 86 IPMCEnable=True
   1102 $done
   1103 
   1104 echo "Running MDIO Linkscan test"
   1105 tr 60 readcount=10000
   1106 $done
   1107 
   1108 # Loopback Tests
   1109 # Each test loads rc.soc in case a previous test failed
   1110 
   1111 if !$?bypass_mcu 'local bypass_mcu 0'
   1112 if !$bypass_mcu 'local packet_limits ""; local sgs_limits ""; \
   1113                 local snake_limits ""; local traffic_limits ""'
   1114 if $bypass_mcu 'local packet_limits "le=512 li=64"; \
   1115                 local sgs_limits "le=350 li=64"; \
   1116                 local snake_limits "le=300 li=116"; \
   1117                 local traffic_limits "l=500"'
   1118 
   1119 
   1120 echo "Testing CPU DMA loopback ..."
   1121 tr 17 c=5
   1122 $done
   1123 
   1124 echo "Testing CPU DMA, Scatter/Gather Reload ..."
   1125 tr 22
   1126 $done
   1127 
   1128 echo "Testing CPU DMA, Scatter/Gather Simple ..."
   1129 tr 23 $sgs_limits
   1130 $done
   1131 
   1132 echo "Testing CPU DMA, Scatter/Gather Random ..."
   1133 tr 24 $packet_limits
   1134 $done
   1135 
   1136 #MAC Loopback
   1137 echo "Testing MAC Loopback - 10 Mb/s all GE ports"
   1138 tr 18 pbm=ge speed=10 $packet_limits
   1139 
   1140 echo "Testing MAC Loopback - 100 Mb/s all GE ports"
   1141 tr 18 pbm=ge speed=100 $packet_limits
   1142 
   1143 echo "Testing MAC Loopback - 1000 Mb/s all GE ports"
   1144 tr 18 pbm=ge speed=1000 $packet_limits
   1145 
   1146 echo "Testing MAC Loopback - 10000 Mb/s all XE ports"
   1147 tr 18 pbm=xe speed=10G $packet_limits
   1148 
   1149 echo "Testing MAC Loopback - 10000/12000 Mb/s all HG ports"
   1150 tr 18 pbm=hg speed=10G $packet_limits
   1151 $done
   1152 
   1153 #PHY Loopback
   1154 echo "Testing PHY Loopback - 10 Mb/s all GE ports"
   1155 tr 19 pbm=ge speed=10 $packet_limits
   1156 
   1157 echo "Testing PHY Loopback - 100 Mb/s all GE ports"
   1158 tr 19 pbm=ge speed=100 $packet_limits
   1159 
   1160 echo "Testing PHY Loopback - 1000 Mb/s all GE ports"
   1161 tr 19 pbm=ge speed=1000 $packet_limits
   1162 
   1163 echo "Testing PHY Loopback - 10000 Mb/s all XE ports"
   1164 tr 19 pbm=xe speed=10G $packet_limits
   1165 
   1166 echo "Testing PHY Loopback - 10000/12000 Mb/s all HG ports"
   1167 tr 19 pbm=hg speed=10G $packet_limits
   1168 $done
   1169 
   1170 echo "Running MAC loopback V2 on all ports ..."
   1171 tr 48 smi=103 dmi=42 vlan=5 pi=0x11335577 sendm=single $packet_limits
   1172 $done
   1173 
   1174 echo "Running PHY loopback V2 on all ports ..."
   1175 if !$bypass_mcu \
   1176    'tr 49 smi=52 dmi=83 vlan=23 pi=0x01204007 sendm=array $packet_limits'
   1177 if $bypass_mcu \
   1178    'tr 49 smi=52 dmi=83 vlan=23 pi=0x01204007 sendm=single $packet_limits'
   1179 
   1180 #Internal snake Loopback 
   1181 echo "Running internal snake on all ports, MAC loopback ..."
   1182 tr 39 loopbackmode=mac snakepath=two PBM=e $snake_limits
   1183 $done
   1184 
   1185 echo "Running internal snake on all ports, PHY loopback ..."
   1186 tr 39 loopbackmode=phy snakepath=two PBM=e $snake_limits
   1187 $done
   1188 
   1189 #Traffic Test
   1190 echo "Running Traffic Test in MAC mode ..."
   1191 rc
   1192 tr 72 RM=MAC PBM=e $traffic_limits
   1193 $done
   1194 
   1195 echo "Running Traffic Test in PHY mode ..."
   1196 rc
   1197 tr 72 RM=PHY PBM=e $traffic_limits
   1198 $done
   1199 
   1200 #External Loopback
   1201 # If you have external loopback cables connected as follows
   1202 #       1-2,   3-4,   5-6,   7-8,   9-10, 11-12
   1203 #       13-14, 15-16, 17-18, 19-20, 21-22 23-24
   1204 #       25-26, 27-28
   1205 # then you can enable this script to perform external loopback at
   1206 # different speeds.  Before running this script, use:
   1207 #       setenv ext10   1
   1208 #       setenv ext100  1
   1209 #       setenv ext1000 1
   1210 #       setenv ext10G  1
   1211 # or
   1212 #       setenv extall  1
   1213 #External Loopback on GE port
   1214 local fwd 0x555
   1215 local bwd 0xaaa
   1216 
   1217 if $?extall \
   1218         "local ext10 1; local ext100 1; local ext1000 1; local ext10G 1"
   1219 
   1220 if $?ext10 \
   1221         "echo Testing External Loopback - 10 MB/s forward; \
   1222                 tr 20 tpbm=$fwd di=1 speed=10 count=10; \
   1223          echo Testing External Loopback - 10 MB/s reverse; \
   1224                 tr 20 tpbm=$bwd di=-1 speed=10 count=10"
   1225 
   1226 if $?ext100 \
   1227         "echo Testing External Loopback - 100 MB/s forward; \
   1228                 tr 20 tpbm=$fwd di=1 speed=100 count=10; \
   1229          echo Testing External Loopback - 100 MB/s reverse; \
   1230                 tr 20 tpbm=$bwd di=-1 speed=100 count=10"
   1231 
   1232 if $?ext1000 \
   1233         "echo Testing External Loopback - 1000 MB/s forward; \
   1234                 tr 20 tpbm=$fwd di=1 speed=1000 count=10; \
   1235          echo Testing External Loopback - 1000 MB/s reverse; \
   1236                 tr 20 tpbm=$bwd di=-1 speed=1000 count=10"
   1237 
   1238 #External Loopback on HG port
   1239 
   1240 # Show status
   1241 date
   1242 tl 
   1243 local returnCode $?
   1244 
   1245 echo Tests Complete.  Reinitializing ...
   1246 config refresh
   1247 rcload rc.soc
   1248 
   1249 # We want to show the return code from the tl command which
   1250 # lists the results. The automated test infrastructure keys off of this 
   1251 # value
   1252 echo "testsuite: finished: sanity: $returnCode"