diff --git a/src/Script_ABC_Blanton/1_Blanton_Script_A.ttl b/src/Script_ABC_Blanton/1_Blanton_Script_A.ttl index 996cada..2bc121a 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.1.8 -; Date : 2026-09-06 +; Version : V1.1.9 +; Date : 2026-09-07 ; Author : ETWen ; ============================================================================= ; Version History: @@ -419,6 +419,71 @@ ; happened to have the binaries locally would have shipped ; a 100 MB zip while a clone shipped 200 KB. The bundle is ; now the same either way +; V1.1.9 2026-09-07 +; Blanton_Script/bcm_dsc_scan.sh Created V1.2.0 - batch SerDes DSC dump +; Runs bcmcmd -n -c "dsh -c 'phydiag dsc'" +; over the whole port list (1 x 100G + 445 x 200G ranges), +; both units, and leaves the raw log in /log +; before copying it to /host/hw-eval/jobs +; -f names the log (%u -> u0/u1, %t -> timestamp), -F +; overwrites, -u picks one unit, -n dry runs, -C skips the +; copy. -f takes a filename only; the directory comes from +; -o +; bcmcmd exits 0 even when the diag shell rejects a +; command, so success is judged by counting 'SERDES DISPLAY +; DIAG DATA END' markers, not by the exit code - the same +; trap blanton_traffic_linespeed.sh hit +; Paths come from $0, not $HOME, because Script A runs it +; after sudo -i and a literal ~ would depend on the +; environment. Ends with '### DSC_SCAN_DONE rc=' for a +; TTL wait to key on +; Non-tty output is one line per port instead of a progress +; bar, so it does not flood the Tera Term log +; !! phydiag dsc is read-only and does not change any +; SerDes setting, but a full scan is ~10 min per run. +; ScriptA and ScriptC each do one, so the test is ~20 +; min longer than before. Do not set DELAY to 0 +; Blanton_Script/bcm_dsc_parse.sh Created V1.0.0 - offline DSC log to CSV +; Host side. -i -o produces +; _lane.csv (one row per lane: TXEQ / RXFFE / DFE / +; EYE / SNR) and _pm.csv (one row per pm_id: +; temperature / PLL / lane count / SNR-EYE stats) +; POSIX sh + awk, mawk compatible, no Python. Lane rows are +; read by the order of their bracket groups rather than +; fixed columns, so re-spacing by the SDK does not break +; it; a row whose group count is not 9 is marked UNPARSED +; on stderr instead of being parsed wrongly +; SD / LCK sticky '*' flags are kept as separate columns +; and not interpreted; a BER field of '!chk_en' means the +; checker was off and is passed through unchanged +; ScriptA Collect the SerDes DSC baseline before 'show uptime' +; ./Blanton_Script/bcm_dsc_scan.sh -f +; blanton_dsc_ScriptA.log -F +; The name has no %u, so the script inserts _u0 / _u1 +; itself and unit 1 cannot overwrite unit 0 - that is where +; the file names ScriptC copies come from +; ScriptA / ScriptB / ScriptC Remove the commented-out 100G PRBS blocks +; The port_prbs_monitor.sh calls had been commented out in +; all three since bring-up, together with a second copy of +; the 100G port status block in ScriptA and the stale +; bmc_monitor_ddr.sh block in ScriptC +; port_prbs_monitor.sh still ships and still runs by hand; +; only the dead call sites are gone +; ScriptC Collect the closing DSC dump and carry the four logs out +; ./Blanton_Script/bcm_dsc_scan.sh -f +; blanton_dsc_ScriptC.log -F, then cp of +; blanton_dsc_Script{A,C}_u{0,1}.log into +; /host/hw-eval/jobs/ +; The scan already copies its own output there; these four +; are a second pass so a failed copy inside the scan still +; leaves the data on the USB stick +; Blanton_Script Both new scripts need the execute bit on the DUT +; !! git records them 100644 like every other .sh here, and +; ScriptA / ScriptC invoke them as +; ./Blanton_Script/bcm_dsc_scan.sh, so they join +; bmc_monitor.sh and friends in the chmod +x line after +; deployment. Without it both scans fail with Permission +; denied and the macro walks straight past it ; ============================================================================= include "config.ttl" @@ -619,36 +684,6 @@ sendln "config save -y" wait prompt_sonic_root sendln "show interfaces status Ethernet513,Ethernet514" -;============================================================================================================= -; ========== 100G PRBS ========== -;wait prompt_sonic_root -;sendln "~/Blanton_Script/port_prbs_monitor.sh start" -;wait prompt_sonic_root -;sendln "sleep 10" -;wait prompt_sonic_root -;sendln "~/Blanton_Script/port_prbs_monitor.sh status" -;wait prompt_sonic_root -;sendln "~/Blanton_Script/port_prbs_monitor.sh stop" -;wait prompt_sonic_root -;sendln "~/Blanton_Script/port_prbs_monitor.sh report" -;wait prompt_sonic_root -;sendln "~/Blanton_Script/port_prbs_monitor.sh clear" - -; ========== 100G Port Status ========== -;wait prompt_sonic_root -;sendln "sudo sfputil lpmode off Ethernet513" -;wait prompt_sonic_root -;sendln "sudo sfputil lpmode off Ethernet514" -;wait prompt_sonic_root -;sendln "config interface -n asic0 startup Ethernet513" -;wait prompt_sonic_root -;sendln "config interface -n asic1 startup Ethernet514" -;wait prompt_sonic_root -;sendln "config save -y" - -;wait prompt_sonic_root -;sendln "show interfaces status Ethernet513,Ethernet514" -;============================================================================================================= ; ========== First Traffic Test ========== ; Silent MAC @@ -712,6 +747,10 @@ else endif +; ========== Collect bcm dsc data ========== +wait prompt_sonic_root +sendln "./Blanton_Script/bcm_dsc_scan.sh -f blanton_dsc_ScriptA.log -F" + ; ========== Show Power on uptime ========== wait prompt_sonic_root sendln "show uptime" diff --git a/src/Script_ABC_Blanton/2_Blanton_Script_B.ttl b/src/Script_ABC_Blanton/2_Blanton_Script_B.ttl index 6fb2535..38897af 100644 --- a/src/Script_ABC_Blanton/2_Blanton_Script_B.ttl +++ b/src/Script_ABC_Blanton/2_Blanton_Script_B.ttl @@ -123,12 +123,6 @@ sendln "~/Blanton_Script/nfc_polling.sh status" wait prompt_sonic_root sendln "show interfaces status Ethernet513,Ethernet514" -;============================================================================================================= -; ========== 100G PRBS ========== -;wait prompt_sonic_root -;sendln "~/Blanton_Script/port_prbs_monitor.sh start" -;============================================================================================================= - ; ========== Traffic START ========== ; Silent MAC diff --git a/src/Script_ABC_Blanton/3_Blanton_Script_C.ttl b/src/Script_ABC_Blanton/3_Blanton_Script_C.ttl index 3483e6f..4fa3cd6 100644 --- a/src/Script_ABC_Blanton/3_Blanton_Script_C.ttl +++ b/src/Script_ABC_Blanton/3_Blanton_Script_C.ttl @@ -33,23 +33,6 @@ sendln "~/Blanton_Script/mgmt_ping_monitor.sh stop" wait prompt_sonic_root sendln "~/Blanton_Script/nfc_polling.sh stop" -;============================================================================================================= -; 100G PRBS STOP -;wait prompt_sonic_root -;sendln "~/Blanton_Script/port_prbs_monitor.sh stop" -;wait prompt_sonic_root -;sendln "sudo sfputil lpmode off Ethernet513" -;wait prompt_sonic_root -;sendln "sudo sfputil lpmode off Ethernet514" -;wait prompt_sonic_root -;sendln "config interface -n asic0 startup Ethernet513" -;wait prompt_sonic_root -;sendln "config interface -n asic1 startup Ethernet514" -;============================================================================================================= - - - - ; ========== TAKE DATA ========== include "utils/setup_pmon.ttl" include "utils/show_dmesg.ttl" @@ -66,15 +49,6 @@ include "utils/show_pcie_error_reg_SSD.ttl" wait prompt_sonic_root sendln "/usr/sbin/ras-mc-ctl --summary" -; ========== BMC DDR TAKE DATA ========== -;wait prompt_sonic_root -;sendln "./Blanton_Script/bmc_monitor_ddr.sh stop" -;wait prompt_sonic_root -;sendln "./Blanton_Script/bmc_monitor.sh stop" -;wait prompt_sonic_root -;sendln "cat ./Blanton_Script/log/bmc_poll.log" -;wait prompt_sonic_root -;sendln "cat ./Blanton_Script/log/bmc_ddr.log" ; ========== BMC Monitor TAKE DATA ========== wait prompt_sonic_root @@ -108,10 +82,6 @@ sendln "~/Blanton_Script/nfc_polling.sh report" ; ========== 100G Port ========== wait prompt_sonic_root sendln "show interfaces status Ethernet513,Ethernet514" -;============================================================================================================= -;wait prompt_sonic_root -;sendln "cat ~/Blanton_Script/log/port_prbs.log " -;============================================================================================================= ; ========== CHECK Traffic counters ========== if SWB_UNIT0 = 1 && SWB_UNIT1 = 1 then @@ -180,6 +150,10 @@ else endif +; ========== Collect bcm dsc data ========== +wait prompt_sonic_root +sendln "./Blanton_Script/bcm_dsc_scan.sh -f blanton_dsc_ScriptC.log -F" + ; ========== NVME Err Info ========== wait prompt_sonic_root @@ -225,7 +199,14 @@ wait prompt_sonic_root sendln "cp ./Blanton_Script/log/mgmt_ping.log /host/hw-eval/jobs/" wait prompt_sonic_root sendln "cp ./Blanton_Script/log/nfc_poll.log /host/hw-eval/jobs/" - +wait prompt_sonic_root +sendln "cp ./Blanton_Script/log/blanton_dsc_ScriptA_u0.log /host/hw-eval/jobs/" +wait prompt_sonic_root +sendln "cp ./Blanton_Script/log/blanton_dsc_ScriptA_u1.log /host/hw-eval/jobs/" +wait prompt_sonic_root +sendln "cp ./Blanton_Script/log/blanton_dsc_ScriptC_u0.log /host/hw-eval/jobs/" +wait prompt_sonic_root +sendln "cp ./Blanton_Script/log/blanton_dsc_ScriptC_u1.log /host/hw-eval/jobs/" wait prompt_sonic_root getdate ts_date "%Y%m%d"