-
released this
2026-09-08 09:35:42 +08:00 | 2 commits to main since this release✨ New features
Script A now takes a SerDes BER sweep before the first traffic run
blanton_ber.sh init → start → sleep 30 → report → stop → clear, branched onSWB_UNIT0/SWB_UNIT1exactly like the traffic block beside it.- Script C already ran the closing sweep after its traffic report. With this one at the front, the pair brackets the soak — the same shape as the DSC scans added in v1.2.0, and the same reason: a BER figure on its own says very little, a change in it says a lot.
- The
sleep 30matchesblanton_ber.sh'sBER_INTERVAL. Reporting before one full interval has accumulated reads a window that has not finished, and nothing warns you about it.
🐛 Bug fixes
The new block's comment described the wrong position
- It was copied out of Script C, which runs BER after the traffic report, and the comment came with it and still said "after". In Script A the block runs before traffic. The comment now says what the code does and why the ordering is what it is.
⚠️ Before you run
- Watch Script A's first traffic report on the first run. PRBS holds the lanes out of normal operation and
blanton_ber.sh clearis what releases them — and in Script A nothing settles between thatclearand theblanton_traffic_linespeed ps/initthat follows. Script C does not have this ordering, so the two reports are a built-in comparison: if Script A shows NA or FAIL pairs that Script C does not, the lanes had not come back yet, and asleepafterclearis the fix. This has not been run on hardware yet. sleep 30andBER_INTERVALnow live in three places — Script A, Script C, andblanton_ber.shitself. Changing one without the others silently reports a partial interval.- BER,
blanton_traffic_linespeedandblanton_tr518.shcannot overlap. They all take over the same ports. Script A now touches those ports twice before the soak even starts. EN_TX_FIRis still 0 by default, so the DSC scans do not run unless you turn them on; a full scan is ~10 min in each of Script A and Script C.- Replace
config.ttlalong with the macros. Tera Term aborts the macro on an undefined variable rather than treating it as 0. bcm_dsc_scan.shneeds the execute bit:chmod +x ~/Blanton_Script/*.shafter copying.--runtimeis the job's overall limit, not a per-pass one.--passesdoes not extend it.- Script 4 has no teardown: finish it with
blanton_tr518.sh stopandsystemctl stop mlucas-amm. - Script 5 (reboot cycle) has no exit condition. A 199-cycle / 60-hour run has now been analysed: PCIe AER stayed at 0, all 218 traffic pairs and all 864 lanes passed every cycle, and the BMC never reset. Two things it did surface —
bmc-first-enrolldoes not exist on that BMC build, and NFC returned FAIL on every cycle. blanton_multiphase_margin.sh saveis permanent, and must not be mixed withmargin.sh.READ_VINandREAD_IINare still not in the ADPM12200 coefficient table.- The BMC USB service log only exists on the USB stick.
FAN_SPEEDis 100.- Still unverified from v1.1.0: the
ce0ingress mirror, the 120 s settle inblanton_tr518.sh, andtest mode nr=noon stop.
📦 Downloads
File Contents Script_ABC_Blanton_V1.2.1.zipThe full Tera Term working directory, including Blanton_Script/to copy onto the DUTchmod +x ~/Blanton_Script/*.sh grep -rlU $'\r' ~/Blanton_Script # expect no output ls ~/hammer/tools/amd/mlucas-avx2 # must already be there🔗 Links
- ARCHITECTURE.md — test flow, data models, constraints
- CLAUDE.md — commands and the bench gotchas
Full changelog: V1.2.0...V1.2.1
Downloads