docs: Record the V1.2.7 additions in Script A's history and release note

Script 4_1, blanton_tr518_thermal.sh, blanton_multiphase_read.sh and
Script_User_Guide.md are added to the V1.2.7 block of Script A's history
and to docs/release-notes/v1.2.7.md, which V1.2.7 is re-released with.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0131orciRKrejchsuDk6UpXk
This commit is contained in:
2026-11-12 20:44:32 +08:00
co-authored by Claude Opus 5.5
parent 62ce31a4e5
commit 5b2777d547
4 changed files with 48 additions and 4 deletions
+1 -1
View File
@@ -46,7 +46,7 @@ NFC tag 讀取由 `nfc_polling.sh` 背景輪詢(A 做基線、B 起、C 停並
**V1.2.6 起 FDR 統計(`blanton_fdr.sh`,`phydiag fdrstat`)接進流量**:A 包住流量基線(sleep 15→40)、 **V1.2.6 起 FDR 統計(`blanton_fdr.sh`,`phydiag fdrstat`)接進流量**:A 包住流量基線(sleep 15→40)、
B 在 soak 前 start、每輪 rdcnt、C 收尾 rdcnt + stop,**只在兩個 unit 都開時才跑**。Script A 另在 BER 前先 `unused_lanes.sh off`, B 在 soak 前 start、每輪 rdcnt、C 收尾 rdcnt + stop,**只在兩個 unit 都開時才跑**。Script A 另在 BER 前先 `unused_lanes.sh off`,
⚠️ **沒有任何地方再 `on` 回來**。 ⚠️ **沒有任何地方再 `on` 回來**。
**V1.2.7**:`blanton_fdr.sh` 預設 port 改成只含有接線的 port(同 traffic 的 `TL_PS_PORTS`,不含 268);`blantons_nfc_validate.py` 換成客戶 v2.5(`qfx5252-nfc-validate` 改名,`nfc_polling.sh` 不用改)。 **V1.2.7**:`blanton_fdr.sh` 預設 port 改成只含有接線的 port(同 traffic 的 `TL_PS_PORTS`,不含 268);`blantons_nfc_validate.py` 換成客戶 v2.5(`qfx5252-nfc-validate` 改名,`nfc_polling.sh` 不用改);另新增 `4_1_Blanton_Script_thermal.ttl`(Script 4 + 300 輪 idle + `blanton_tr518_thermal.sh`)、`blanton_multiphase_read.sh`(多相 VRM 讀值含 hex)、交付包內的 `Script_User_Guide.md`(測試員手冊)——**三支 script 皆未上機驗證**。
以及 **`5_Blanton_Script_Boot_Cycle.ttl`**(重開機循環,**獨立跑不接 A→B→C**:登入 → 風扇 → 以及 **`5_Blanton_Script_Boot_Cycle.ttl`**(重開機循環,**獨立跑不接 A→B→C**:登入 → 風扇 →
Check Pt1~Pt13 → `reboot` → `wait "Booting in blind mode"`,`cnt_cycle` 每輪遞增,`while 1` 無止境, Check Pt1~Pt13 → `reboot` → `wait "Booting in blind mode"`,`cnt_cycle` 每輪遞增,`while 1` 無止境,
要停就關 Tera Term 的 macro)。**尚未上機驗證**。 要停就關 Tera Term 的 macro)。**尚未上機驗證**。
+23 -1
View File
@@ -1,4 +1,23 @@
# v1.2.7 — FDR on the cabled ports only, and the vendor NFC tool updated to v2.5 # v1.2.7 — FDR on the cabled ports only, vendor NFC tool v2.5, and a tester user guide
## ✨ New features
**`Script_User_Guide.md` — the tester guide, shipped in the package**
* Part 1: copying `Blanton_Script/` from a USB stick onto the DUT (mount, copy, `chmod +x`, CRLF check), every `config.ttl` setting, and what Scripts A, B and C run, step by step.
* Part 2: the usage of every tool in `Blanton_Script/`, including the full LTC2980 margin guide.
**`4_1_Blanton_Script_thermal.ttl` — Script 4 with an idle phase and the thermal tr 518 load**
* 300 idle rounds first (PMON snapshot, SWB0/SWB1 rail power, AMD CPU power), then `blanton_tr518_thermal.sh start` and the full-load loop.
* The full-load loop also logs `nvme smart-log` / `smartctl -x` every round and waits with a DUT-side `sleep 1` instead of `pause 60`.
**`blanton_tr518_thermal.sh` — `tr 518` with the thermal-test arguments**
* Same as `blanton_tr518.sh` (start / stop, `-u`, `-w`, `--no-wait`, `-n`), but runs
`tr 518 Scenario=6 Profile=2 portstopktszstride=1 Count=260 PktSize=603,218 CheckLinkTime=20 CheckDataTime=200 TestPhase=1`.
* Override the arguments with `TR_THERMAL_ARGS`, not `TR_TEST_ARGS`.
**`blanton_multiphase_read.sh` — read back the SWB multiphase VRMs**
* Reads the controllers `blanton_multiphase_margin.sh` writes (SWB0 = i2c-13/15, SWB1 = i2c-14/16): one row per chip with VOUT / VOUT2, IOUT / IOUT2, POUT (V × I) and TEMP, plus the total power per board.
* Every voltage and current is followed by the raw PMBus word in hex, e.g. `0.740(0x0128)`.
## 🐛 Bug fixes ## 🐛 Bug fixes
@@ -30,6 +49,9 @@ python3 ~/Blanton_Script/blantons_nfc_validate.py --version # expect 2.5
## ⚠️ Before you run ## ⚠️ Before you run
* **`4_1_Blanton_Script_thermal.ttl`, `blanton_tr518_thermal.sh` and `blanton_multiphase_read.sh` have not been run on the bench yet.** Check that `tr 518` prints `TR 518 TEST PARAMETERS` on both units the first time.
* **`4_1_Blanton_Script_thermal.ttl` has no teardown, like Script 4**: finish it with `blanton_tr518_thermal.sh stop` **and** `systemctl stop mlucas-amm`.
* **`blanton_multiphase_read.sh` names 0x21 / 0x22 PU105 / PU102** (from `blanton_pwr_data.sh`), the reverse of the PHYTILE mapping in `blanton_multiphase_margin.sh`; the totals are not affected. Do not run it while `blanton_multiphase_margin.sh` is writing.
* **Port 268 (ce0, 100G uplink) is not in the FDR list** — as before. Add it with `FDR_PORTS="...,268"` if FDR is wanted there. * **Port 268 (ce0, 100G uplink) is not in the FDR list** — as before. Add it with `FDR_PORTS="...,268"` if FDR is wanted there.
* **The cabled-port list now lives in three scripts** — `blanton_traffic_linespeed.sh`, `blanton_ber_debug.sh`, `blanton_fdr.sh`. Change all three when the cabling changes. * **The cabled-port list now lives in three scripts** — `blanton_traffic_linespeed.sh`, `blanton_ber_debug.sh`, `blanton_fdr.sh`. Change all three when the cabling changes.
* **Never put the NFC write flags (`--write-ndef`, `--set-location`, `--confirm-write`) in `NFC_ARGS`** — polling would rewrite the tag every round. * **Never put the NFC write flags (`--write-ndef`, `--set-location`, `--confirm-write`) in `NFC_ARGS`** — polling would rewrite the tag every round.
@@ -899,6 +899,27 @@
; The default "test --debug" output ([PASS]/[FAIL], NFCID1=) ; The default "test --debug" output ([PASS]/[FAIL], NFCID1=)
; is unchanged - nfc_polling.sh is not modified ; is unchanged - nfc_polling.sh is not modified
; !! never put the write flags in NFC_ARGS ; !! never put the write flags in NFC_ARGS
; 4_1_Blanton_Script_thermal.ttl Created - Script 4 with an idle phase and the thermal tr 518
; 300 idle rounds first (PMON + SWB0/1 power + AVT CPU power,
; sleep 1), then blanton_tr518_thermal.sh start and the full-
; load loop, which also logs nvme smart-log / smartctl -x and
; waits with DUT 'sleep 1' instead of 'pause 60'
; !! no teardown, same as Script 4 - finish with
; blanton_tr518_thermal.sh stop + systemctl stop mlucas-amm
; Blanton_Script/blanton_tr518_thermal.sh Created v1.0.0 - blanton_tr518.sh with the thermal tr 518 args
; Scenario=6 Profile=2 portstopktszstride=1 Count=260
; PktSize=603,218 CheckLinkTime=20 CheckDataTime=200 TestPhase=1
; Override through TR_THERMAL_ARGS (not TR_TEST_ARGS)
; !! not run on the bench yet
; Blanton_Script/blanton_multiphase_read.sh Created v1.0.0 - read back the SWB multiphase VRMs
; Native i2c (SWB0 = i2c-13/15, SWB1 = i2c-14/16), one row per
; chip in the pu_show.sh layout with the raw PMBus word in hex
; after every V / I, plus the total power per board
; !! not run on the bench yet; the PU105 / PU102 names of 0x21 /
; 0x22 are the reverse of blanton_multiphase_margin.sh
; Script_User_Guide.md Created - tester guide, shipped in the package: deploying
; Blanton_Script/ from USB, config.ttl, Scripts A/B/C, and the
; usage of every Blanton_Script tool incl. LTC2980 margin
; ============================================================================= ; =============================================================================
include "config.ttl" include "config.ttl"
+3 -2
View File
@@ -58,6 +58,7 @@ Script_ABC_Blanton_<Ver>/ ← Tera Term 的工作目錄(整包放
| `2_Blanton_Script_B.ttl` | 壓力 soak | A 之後,同一個 Tera Term 視窗 | | `2_Blanton_Script_B.ttl` | 壓力 soak | A 之後,同一個 Tera Term 視窗 |
| `3_Blanton_Script_C.ttl` | 收工 + 判定 | B 停掉之後,同一個視窗 | | `3_Blanton_Script_C.ttl` | 收工 + 判定 | B 停掉之後,同一個視窗 |
| `4_Blanton_Script_thermal_safety.ttl` | 熱 / 安規 | 獨立跑,**沒有收尾段** | | `4_Blanton_Script_thermal_safety.ttl` | 熱 / 安規 | 獨立跑,**沒有收尾段** |
| `4_1_Blanton_Script_thermal.ttl` | 熱測:先 idle 300 輪,再 `blanton_tr518_thermal.sh` 滿載 | 獨立跑,**沒有收尾段**(結束要手動 `blanton_tr518_thermal.sh stop` + `systemctl stop mlucas-amm`) |
| `5_Blanton_Script_Boot_Cycle.ttl` | 斷電開機循環 | 獨立跑,`while 1` 無止境 | | `5_Blanton_Script_Boot_Cycle.ttl` | 斷電開機循環 | 獨立跑,`while 1` 無止境 |
| `5_1_Blanton_Script_Boot_Cycle_Fast.ttl` | 同上,拿掉流量只留 `ps` | 獨立跑 | | `5_1_Blanton_Script_Boot_Cycle_Fast.ttl` | 同上,拿掉流量只留 `ps` | 獨立跑 |
| `6_Blanton_Script_BER_Cycle.ttl` | Diag ↔ SONiC 冷開機量 BER | 獨立跑 | | `6_Blanton_Script_BER_Cycle.ttl` | Diag ↔ SONiC 冷開機量 BER | 獨立跑 |
@@ -334,7 +335,7 @@ Tera Term 連 COM port (115200-8-N-1),DUT 停在 "sonic login:" 或正在開
| `blanton_multiphase_read.sh` | 量測 | — | 直接讀多相 VRM 的 V / I / T(含原始 hex) | | `blanton_multiphase_read.sh` | 量測 | — | 直接讀多相 VRM 的 V / I / T(含原始 hex) |
| `blanton_pwr_data.sh` | 量測 | A(source) | SWB VRM + PDB 讀值(經 CB FPGA I2C) | | `blanton_pwr_data.sh` | 量測 | A(source) | SWB VRM + PDB 讀值(經 CB FPGA I2C) |
| `pwr_brick.sh` | 量測 | — | PDB / CPB power brick | | `pwr_brick.sh` | 量測 | — | PDB / CPB power brick |
| `avt_pmpower.sh` | 量測 | Script 4 | AMD CPU 封裝功耗(需 NDA 工具) | | `avt_pmpower.sh` | 量測 | Script 4 / 4_1 | AMD CPU 封裝功耗(需 NDA 工具) |
| `LTC2980_Margin_Script/margin.sh` | Margin | A/C(`EN_Margin`) | 9 顆 LTC2980 電壓 margin | | `LTC2980_Margin_Script/margin.sh` | Margin | A/C(`EN_Margin`) | 9 顆 LTC2980 電壓 margin |
| `blanton_multiphase_margin.sh` | Margin | — | 多相 VRM 38 條軌 margin | | `blanton_multiphase_margin.sh` | Margin | — | 多相 VRM 38 條軌 margin |
| `blanton_traffic_linespeed.sh` | 交換晶片 | A/B/C | SWB loopback 線速流量 + 判定 | | `blanton_traffic_linespeed.sh` | 交換晶片 | A/B/C | SWB loopback 線速流量 + 判定 |
@@ -342,7 +343,7 @@ Tera Term 連 COM port (115200-8-N-1),DUT 停在 "sonic login:" 或正在開
| `blanton_ber.sh` | 交換晶片 | A/C | 全機 SerDes BER(PRBS)+ 判定 | | `blanton_ber.sh` | 交換晶片 | A/C | 全機 SerDes BER(PRBS)+ 判定 |
| `blanton_ber_debug.sh` | 交換晶片 | — | BER 原始輸出(`p=p31`) | | `blanton_ber_debug.sh` | 交換晶片 | — | BER 原始輸出(`p=p31`) |
| `blanton_tr518.sh` | 交換晶片 | Script 4 | `tr 518` 負載(量功耗用) | | `blanton_tr518.sh` | 交換晶片 | Script 4 | `tr 518` 負載(量功耗用) |
| `blanton_tr518_thermal.sh` | 交換晶片 | — | `tr 518` 熱測參數版(**未上機驗證**) | | `blanton_tr518_thermal.sh` | 交換晶片 | Script 4_1 | `tr 518` 熱測參數版(**未上機驗證**) |
| `port_prbs_monitor.sh` | 交換晶片 | — | 100G Ethernet513/514 PRBS | | `port_prbs_monitor.sh` | 交換晶片 | — | 100G Ethernet513/514 PRBS |
| `unused_lanes.sh` / `retimer_lanes.sh` | 交換晶片 | A(`off`) | 沒接線的 retimer lane / TH6 port 關 TX | | `unused_lanes.sh` / `retimer_lanes.sh` | 交換晶片 | A(`off`) | 沒接線的 retimer lane / TH6 port 關 TX |
| `bcm_dsc_scan.sh` / `bcm_dsc_parse.sh` | DSC | A/C(`EN_TX_FIR`) | SerDes DSC 擷取 / 轉 CSV | | `bcm_dsc_scan.sh` / `bcm_dsc_parse.sh` | DSC | A/C(`EN_TX_FIR`) | SerDes DSC 擷取 / 轉 CSV |