diff --git a/src/Script_ABC_Blanton/1_Blanton_Script_A.ttl b/src/Script_ABC_Blanton/1_Blanton_Script_A.ttl index 9710ac4..084fac7 100644 --- a/src/Script_ABC_Blanton/1_Blanton_Script_A.ttl +++ b/src/Script_ABC_Blanton/1_Blanton_Script_A.ttl @@ -1,7 +1,7 @@ ; ============================================================================= ; Script A for Blanton -; Version : V1.2.0 -; Date : 2026-09-07 +; Version : V1.2.1 +; Date : 2026-09-08 ; Author : ETWen ; ============================================================================= ; Version History: @@ -535,6 +535,33 @@ ; out. Both files are still copied to /host/hw-eval/jobs ; and out to the USB stick with everything else, so no data ; is lost - the master log is just shorter +; V1.2.1 2026-09-08 +; ScriptA Add a BER baseline sweep before the traffic run +; blanton_ber.sh init / start / sleep 30 / report / stop / +; clear, branched on SWB_UNIT0 and SWB_UNIT1 the same way +; the traffic block is. ScriptC already took the closing +; sweep after its traffic report, so the two now bracket +; the soak the way the DSC scans do +; sleep 30 is not arbitrary: it is blanton_ber.sh's +; BER_INTERVAL. 'report' before one full interval has +; accumulated reads a window that has not finished +; The block was copied from ScriptC, which runs it AFTER +; traffic, and its comment said so. In ScriptA it runs +; BEFORE traffic, so the comment was rewritten to match +; where the code actually is +; !! nothing settles between 'blanton_ber.sh clear' and +; 'blanton_traffic_linespeed ps' that follows it. PRBS +; holds the lanes out of normal operation and 'clear' is +; what releases them, so the first traffic run of +; ScriptA now starts on lanes that have just been +; released. ScriptC does not have this ordering. Watch +; ScriptA's first traffic report for NA or FAIL pairs +; that ScriptC's does not show - if they appear, a sleep +; after 'clear' is the fix +; !! ScriptA now runs BER twice as far as the switch is +; concerned: once here and once inside ScriptC. Neither +; can overlap blanton_traffic_linespeed or +; blanton_tr518.sh - they all take over the same ports ; ============================================================================= include "config.ttl" @@ -744,6 +771,56 @@ sendln "config feature state lldp disabled" wait prompt_sonic_root sendln "config save -y" +; ========== BER ========== +; Baseline sweep, taken BEFORE the traffic run - ScriptC takes the closing +; one after its traffic report, so the pair brackets the soak. +; PRBS takes the SerDes out of normal operation; 'clear' is what puts the +; lanes back, so it has to run before the traffic block below. +; sleep 30 matches blanton_ber.sh BER_INTERVAL - reporting earlier reads an +; interval that has not finished accumulating. +if SWB_UNIT0 = 1 && SWB_UNIT1 = 1 then + wait prompt_sonic_root + sendln "./Blanton_Script/blanton_ber.sh init" + wait prompt_sonic_root + sendln "./Blanton_Script/blanton_ber.sh start" + wait prompt_sonic_root + sendln "sleep 30" + wait prompt_sonic_root + sendln "./Blanton_Script/blanton_ber.sh report" + wait prompt_sonic_root + sendln "./Blanton_Script/blanton_ber.sh stop" + wait prompt_sonic_root + sendln "./Blanton_Script/blanton_ber.sh clear" +elseif SWB_UNIT0 = 1 && SWB_UNIT1 = 0 then + wait prompt_sonic_root + sendln "./Blanton_Script/blanton_ber.sh init -u 0" + wait prompt_sonic_root + sendln "./Blanton_Script/blanton_ber.sh start -u 0" + wait prompt_sonic_root + sendln "sleep 30" + wait prompt_sonic_root + sendln "./Blanton_Script/blanton_ber.sh report -u 0" + wait prompt_sonic_root + sendln "./Blanton_Script/blanton_ber.sh stop -u 0" + wait prompt_sonic_root + sendln "./Blanton_Script/blanton_ber.sh clear -u 0" +elseif SWB_UNIT0 = 0 && SWB_UNIT1 = 1 then + wait prompt_sonic_root + sendln "./Blanton_Script/blanton_ber.sh init -u 1" + wait prompt_sonic_root + sendln "./Blanton_Script/blanton_ber.sh start -u 1" + wait prompt_sonic_root + sendln "sleep 30" + wait prompt_sonic_root + sendln "./Blanton_Script/blanton_ber.sh report -u 1" + wait prompt_sonic_root + sendln "./Blanton_Script/blanton_ber.sh stop -u 1" + wait prompt_sonic_root + sendln "./Blanton_Script/blanton_ber.sh clear -u 1" +else + +endif + if SWB_UNIT0 = 1 && SWB_UNIT1 = 1 then wait prompt_sonic_root sendln "blanton_traffic_linespeed ps"