Script A: header to V1.2.5 / 2026-10-21; entries for blanton_ber_debug.sh, retimer_lanes.sh, unused_lanes.sh, the PMON power readback, the --force on the USB stress, the boot cycle title and the fast boot cycle, with notes on p=p31 vs blanton_ber.sh's p=3, the missing port 268, the double read in Script 4, the exec bits and the EN_Cold_Warm_boot = 0 hang. CLAUDE.md / ARCHITECTURE.md: status and release to V1.2.5, the new scripts in the overview, the tree and the commands. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0131orciRKrejchsuDk6UpXk
57 lines
4.2 KiB
Markdown
57 lines
4.2 KiB
Markdown
# v1.2.5 — Switch-board rail power in every snapshot, a raw BER run, and tools to turn off unused lanes
|
||
|
||
## ✨ New features
|
||
|
||
**PMON snapshots now carry the switch-board rail power**
|
||
* `utils/setup_pmon.ttl` calls `TH6_SWB0_power_readback.sh` and `TH6_SWB1_power_readback.sh` right after `show platform current` — the 19 rails of each switch board with V × I and a `TOTAL POWER` line.
|
||
* `setup_pmon` is shared, so this lands in Script A, B, C, 4 and 5 alike.
|
||
|
||
**`blanton_ber_debug.sh` — the hand-run BER flow as one command**
|
||
* Runs exactly what `tools/BER_Test.txt` does: `prbs set p=p31` → `prbs get` twice → `prbsstat STArt Interval=30` → `sleep 40` → `prbsstat Ber` → `STOp` → `prbs clear`.
|
||
* Every `bcmcmd` output is printed **as is**, under a `### [time] unit N: ...` header — no parsing, no PASS/FAIL, no summary. For looking at the raw output on the bench; `blanton_ber.sh` remains the judged version.
|
||
* `-u 0` / `-u 1` for one switch unit; both by default. `BER_POLY`, `BER_INTERVAL`, `BER_WAIT` and `BER_PORTS` can be overridden from the environment.
|
||
|
||
**`retimer_lanes.sh` / `unused_lanes.sh` — turn off TX on lanes nothing is cabled to**
|
||
* `retimer_lanes.sh <asic> <addr> <lane_map> <off|on|status>` acts on one Agera3 retimer, sys **and** line side. `--method squelch` (default, TX squelch, lanes stay powered) or `--method power` (TX+RX power-down, needs an `agera3` that has the `power` command). It reads the state back afterwards and prints `PASS` / `FAIL`.
|
||
* `unused_lanes.sh <off|on|status>` applies that to a built-in table — 14 retimer rows and one direct-TH6 row (TSC31, `cd112-cd115`) — on both switch boards. `--asic 0|1|all`, `--th6` to also disable the TH6 ports behind the retimer rows, `--only <target>` for a single row. Ends with `ok / refused / failed` counts.
|
||
* **`off` is refused on a lane that receives a signal** (RX PMD lock, or link up on a TH6 port) unless `--force` is given.
|
||
|
||
**`5_1_Blanton_Script_Boot_Cycle_Fast.ttl` — the boot cycle without the traffic run (standalone)**
|
||
* Identical to Script 5, except Check Pt8 only runs `blanton_traffic_linespeed ps` — no `init` / `start` / 15 s / `stop` / `report`. A shorter cycle when the point is the number of boots.
|
||
|
||
**Boot cycle shows its count in the window title**
|
||
* Script 5 and 5_1 set the Tera Term title to `Reboot Cycle Test : n` or `Power Cycle Test : n` each round.
|
||
|
||
## 🐛 Bug fixes
|
||
|
||
**`qfx5252-stress-usb` now runs with `--force`** in Script B and in the boot cycles.
|
||
|
||
## 📦 Downloads
|
||
|
||
| File | Contents |
|
||
|---|---|
|
||
| `Script_ABC_Blanton_V1.2.5.zip` | The full Tera Term working directory, including `Blanton_Script/` to copy onto the DUT |
|
||
|
||
```bash
|
||
chmod +x ~/Blanton_Script/*.sh
|
||
grep -rlU $'\r' ~/Blanton_Script # expect no output
|
||
```
|
||
|
||
## ⚠️ Before you run
|
||
|
||
* **`chmod +x` after deploying.** The power readbacks are called by path from every PMON snapshot, and `unused_lanes.sh` refuses to start unless `retimer_lanes.sh` next to it is executable.
|
||
* **Script 4 now reads the switch-board power twice per round** — once inside `setup_pmon`, once from its own loop. Harmless, but the log carries both.
|
||
* **`blanton_ber_debug.sh` uses `p=p31` (verified on the bench); `blanton_ber.sh`, and so Script A / C, still sets `p=3`.** The two may not be measuring the same pattern — do not compare their BER directly until that is settled.
|
||
* **`blanton_ber_debug.sh` leaves out port 268**, the same list as `BER_Test.txt`. Add it with `BER_PORTS="...,268"`.
|
||
* **`EN_Cold_Warm_boot = 0` (the `config.ttl` default) hangs Script 5 and 5_1.** Set it to `1` (reboot) or `2` (power cycle).
|
||
* **Script 5 and 5_1 are two copies of the same macro** — a fix to one has to be made to the other.
|
||
* **Script 4 has no teardown**: finish it with `blanton_tr518.sh stop` **and** `systemctl stop mlucas-amm`.
|
||
* **`FAN_SPEED` is 100.**
|
||
|
||
## 🔗 Links
|
||
|
||
* [ARCHITECTURE.md](https://etgit.et-wen.com/etwen/Blanton_TTL_Script/src/branch/main/ARCHITECTURE.md) — test flow, data models, constraints
|
||
* [CLAUDE.md](https://etgit.et-wen.com/etwen/Blanton_TTL_Script/src/branch/main/CLAUDE.md) — commands and the bench gotchas
|
||
|
||
**Full changelog:** [V1.2.4...V1.2.5](https://etgit.et-wen.com/etwen/Blanton_TTL_Script/compare/V1.2.4...V1.2.5)
|