feat(config): Run the fans at full speed by default
FAN_SPEED 30 -> 100. A soak is a thermal test of everything except the cooling, so the cooling should not be one of the variables in it. At 30% a long run can throttle partway through, and throttled results read like a different fault entirely. Folded into V1.0.11 rather than bumping the version: the tag has not moved on and this is the same delivery. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014RetWKFZFG1ZHcitQAyhwM
This commit is contained in:
+1
-1
@@ -215,7 +215,7 @@ project_name = "Blanton" ; 專案名,進 log 檔名
|
|||||||
strTestcase = "ENV" ; 測項名(ENV/EMC/Margin...),進 log 檔名
|
strTestcase = "ENV" ; 測項名(ENV/EMC/Margin...),進 log 檔名
|
||||||
EN_Margin = 0 ; 1=跑 margin 掃描, 0=跳過
|
EN_Margin = 0 ; 1=跑 margin 掃描, 0=跳過
|
||||||
EN_log = 1 ; 1=logopen 存檔, 0=不存
|
EN_log = 1 ; 1=logopen 存檔, 0=不存
|
||||||
FAN_SPEED = 30 ; 傳給 fan-speed-control.sh 的風扇轉速 (%)
|
FAN_SPEED = 100 ; 傳給 fan-speed-control.sh 的風扇轉速 (%),預設全速
|
||||||
SWB_UNIT0 = 1 ; 這台有 switch unit 0(流量與 wait_init 都依此)
|
SWB_UNIT0 = 1 ; 這台有 switch unit 0(流量與 wait_init 都依此)
|
||||||
SWB_UNIT1 = 1 ; 這台有 switch unit 1
|
SWB_UNIT1 = 1 ; 這台有 switch unit 1
|
||||||
prompt_login = "sonic login:"
|
prompt_login = "sonic login:"
|
||||||
|
|||||||
@@ -12,7 +12,8 @@ DUT 端的取數能力由一組 **bash 工具庫** 提供(CB FPGA `pcimem` →
|
|||||||
**目前狀態(2026-08-27)**:Script A 為 **V1.0.10**(A 集中記錄 A/B/C 三支的變更)。涵蓋
|
**目前狀態(2026-08-27)**:Script A 為 **V1.0.10**(A 集中記錄 A/B/C 三支的變更)。涵蓋
|
||||||
PCIe AER / DDR EDAC / PMON+TPM / 電壓 margin(9 顆 LTC2980)/ SWB loopback 線速流量 /
|
PCIe AER / DDR EDAC / PMON+TPM / 電壓 margin(9 顆 LTC2980)/ SWB loopback 線速流量 /
|
||||||
10G+1G 管理網路 ping / BMC DDR 與 USB / NVMe 健康,壓力層走平台的 `bgctl`。
|
10G+1G 管理網路 ping / BMC DDR 與 USB / NVMe 健康,壓力層走平台的 `bgctl`。
|
||||||
switch unit 數量由 `config.ttl` 的 `SWB_UNIT0` / `SWB_UNIT1` 宣告,風扇轉速由 `FAN_SPEED` 指定。
|
switch unit 數量由 `config.ttl` 的 `SWB_UNIT0` / `SWB_UNIT1` 宣告,風扇轉速由 `FAN_SPEED` 指定
|
||||||
|
(預設 100 = 全速;soak 是熱測試,散熱不該是變因)。
|
||||||
測試 job log 收在 DUT 的 `/host/hw-eval/jobs/`,Script C 結束時掛好 USB 再帶時戳複製到 `/mnt/usb/`。
|
測試 job log 收在 DUT 的 `/host/hw-eval/jobs/`,Script C 結束時掛好 USB 再帶時戳複製到 `/mnt/usb/`。
|
||||||
100G PRBS(`port_prbs_monitor.sh`)已隨包交付,但 **A/B/C 的呼叫仍註解掉**,還在 bring-up。
|
100G PRBS(`port_prbs_monitor.sh`)已隨包交付,但 **A/B/C 的呼叫仍註解掉**,還在 bring-up。
|
||||||
Script B 的 soak 迴圈每輪印 `bgctl list` + `jobs`,並 `pause 60`(V1.0.10 之前完全沒有 pause)。
|
Script B 的 soak 迴圈每輪印 `bgctl list` + `jobs`,並 `pause 60`(V1.0.10 之前完全沒有 pause)。
|
||||||
|
|||||||
@@ -14,6 +14,9 @@
|
|||||||
|
|
||||||
Both print a per-chip line and a `N saved, M failed` tally, and both return a non-zero exit code when anything failed.
|
Both print a per-chip line and a `N saved, M failed` tally, and both return a non-zero exit code when anything failed.
|
||||||
|
|
||||||
|
**The fans now default to full speed**
|
||||||
|
* `FAN_SPEED` in `config.ttl` is 100 instead of 30. A soak is a thermal test of everything *except* the cooling, so the cooling should not be a variable in it — and a DUT that throttles halfway through a run produces results that look like a different fault. Lower it deliberately if quiet operation is what you are measuring.
|
||||||
|
|
||||||
## 🐛 Bug fixes
|
## 🐛 Bug fixes
|
||||||
|
|
||||||
**A failed NVM write still reported success**
|
**A failed NVM write still reported success**
|
||||||
@@ -42,7 +45,7 @@ grep -rlU $'\r' ~/Blanton_Script # expect no output
|
|||||||
* **`margin_save` in any form writes NVM permanently.** A power cycle does not undo it. `margin_save all` and `margin_save blanton` do it to all 18 controllers at once. Run `margin_status_all.sh` first and never call any of them during a test run — the macros do not, and should not be made to.
|
* **`margin_save` in any form writes NVM permanently.** A power cycle does not undo it. `margin_save all` and `margin_save blanton` do it to all 18 controllers at once. Run `margin_status_all.sh` first and never call any of them during a test run — the macros do not, and should not be made to.
|
||||||
* **The 18 raw commands were verified on the DUT; the wrapper was not.** `margin_save blanton` issues exactly the sequence that was run by hand at the bench, and the packaging was tested against stubbed hardware, but the function itself has not been run on a DUT yet. Watch the per-chip lines the first time.
|
* **The 18 raw commands were verified on the DUT; the wrapper was not.** `margin_save blanton` issues exactly the sequence that was run by hand at the bench, and the packaging was tested against stubbed hardware, but the function itself has not been run on a DUT yet. Watch the per-chip lines the first time.
|
||||||
* **Declare the switch population.** `SWB_UNIT0` / `SWB_UNIT1` in `config.ttl` say which switch units this DUT has; traffic and the readiness gate both follow them.
|
* **Declare the switch population.** `SWB_UNIT0` / `SWB_UNIT1` in `config.ttl` say which switch units this DUT has; traffic and the readiness gate both follow them.
|
||||||
* **Set `FAN_SPEED`.** It is applied at the start of every run.
|
* **`FAN_SPEED` is now 100.** It is applied at the start of every run, so this build runs the fans flat out unless you change `config.ttl`. Expect the noise.
|
||||||
* **Management connectivity is in use, not preserved.** Both management NICs are up and pinging — drive the run from the serial console.
|
* **Management connectivity is in use, not preserved.** Both management NICs are up and pinging — drive the run from the serial console.
|
||||||
* **PRBS is still not wired into the macros.** Run `port_prbs_monitor.sh` by hand if you want it; the calls in A/B/C remain commented out.
|
* **PRBS is still not wired into the macros.** Run `port_prbs_monitor.sh` by hand if you want it; the calls in A/B/C remain commented out.
|
||||||
* **Two settings persist to `config_db.json`** and survive a reboot: LLDP is left disabled and the 100G uplinks are left configured. Restore them before the DUT moves on.
|
* **Two settings persist to `config_db.json`** and survive a reboot: LLDP is left disabled and the 100G uplinks are left configured. Restore them before the DUT moves on.
|
||||||
|
|||||||
@@ -94,6 +94,7 @@
|
|||||||
; FPGA-channel -> i2c-bus map
|
; FPGA-channel -> i2c-bus map
|
||||||
; LTC2980_Margin_Script/Ref/*.md 0x15 trace note corrected to send-byte
|
; LTC2980_Margin_Script/Ref/*.md 0x15 trace note corrected to send-byte
|
||||||
; LTC2980_Margin_Script/script/margin_save_all.sh Point at margin_save all; keep it for subsets
|
; LTC2980_Margin_Script/script/margin_save_all.sh Point at margin_save all; keep it for subsets
|
||||||
|
; config.ttl FAN_SPEED 30 -> 100 (full speed by default)
|
||||||
; =============================================================================
|
; =============================================================================
|
||||||
include "config.ttl"
|
include "config.ttl"
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ EN_log = 1 ; 1: Enable log, 0: Disable log
|
|||||||
;================================================================
|
;================================================================
|
||||||
; FAN_SPEED
|
; FAN_SPEED
|
||||||
;================================================================
|
;================================================================
|
||||||
FAN_SPEED = 30
|
FAN_SPEED = 100
|
||||||
;================================================================
|
;================================================================
|
||||||
; Switch Unit Population
|
; Switch Unit Population
|
||||||
;================================================================
|
;================================================================
|
||||||
|
|||||||
Reference in New Issue
Block a user