Script A: header to V1.2.3 / 2026-09-23; five entries under V1.2.3 for setup_pmon.ttl, ddr5_temp.sh, hsc_temp_readback.sh, avt_pmpower.sh and Script 4, with notes on the ~4 s per snapshot, the exec bit, the CRLF in hsc_temp_readback.sh v1.0.0 and AVT not being shipped. CLAUDE.md: status to V1.2.3; the PMON temperatures and Script 4's CPU power in the overview; a commands block for the three new scripts; fix the stale Script 5 file name and the "last release V1.1.5" line. ARCHITECTURE.md: Script A ref to V1.2.3; the three scripts in the tree and in setup_pmon's comment; avt_pmpower.sh in Script 4's row; the git tag checkbox to V1.2.3. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UniUXkxgCG2Ty74advL8Pd
4.2 KiB
4.2 KiB
v1.2.3 — DIMM and hot-swap temperatures in every snapshot, and CPU power next to the switch rails
✨ New features
Every PMON snapshot now reads DDR5 DIMM and hot-swap controller temperatures
utils/setup_pmon.ttlrunsddr5_temp.shandhsc_temp_readback.shright aftershow platform temperature. Becausesetup_pmonis shared, this lands everywhere a snapshot is taken: Script A's baseline, each Script B soak round, Script C, the Script 4 loop and every Script 5 check point.ddr5_temp.shreads the SPD5118 hub on each DIMM: i2c bus 5,0x50/0x51, register0x31(bit[12:2], sign bit 12, 0.25 °C/LSB). A read that fails printsread fail— never a number it did not read. Bus and addresses can be passed:ddr5_temp.sh [bus] [addr ...].hsc_temp_readback.shreads both LTC4287 hot-swap controllers on i2c bus 28 —HSC_MAIN @ 0x40(PU11 internal / PQ1 external) andHSC_STBY @ 0x45(PU46 internal / PQ53 external). The source is selected through0xF3, thenREAD_TEMPERATURE0x8Dis read in Kelvin and converted.
Script 4 logs AMD CPU package power every round
avt_pmpower.shrunsAVTCMD -module pmm "get_pmdata()"and summarizesSktPwr,PPT Fast/PPT Slowagainst their limits, andMemPwr.- It runs after the two
TH6_SWBpower readbacks, so each sample now puts the switch rails and the CPU package side by side. -qprints the summary only. Exit2= AVTCMD not found,3= AVTCMD failed,4= the PM table parsed to nothing (format changed).
🐛 Bug fixes
hsc_temp_readback.sh was saved with CRLF line endings
- Copied to the DUT as-is, bash on SONiC fails on the first line (
$'\r': command not found). The shipped file is LF. - Its comments said the delay between I2C transactions was 100 ms;
DELAY=0.5is what actually runs. Comments corrected and a Version History header added.
📦 Downloads
| File | Contents |
|---|---|
Script_ABC_Blanton_V1.2.3.zip |
The full Tera Term working directory, including Blanton_Script/ to copy onto the DUT |
chmod +x ~/Blanton_Script/*.sh
grep -rlU $'\r' ~/Blanton_Script # expect no output
ls ~/AVT_Linux_NDA_2.8.37/AVTCMD # Script 4 only - must already be there
⚠️ Before you run
- Redeploy
Blanton_Script/. If an earlier copy ofhsc_temp_readback.shreached the DUT, it is CRLF and will not run. chmod +xafter deploying.setup_pmoncalls both new scripts by path. Without the exec bit each call isPermission deniedand the snapshot carries on without those rows — nothing stops, nothing warns.- Each PMON snapshot is ~4 s longer.
hsc_temp_readback.shsleeps 0.5 s twice for each of its four readings. It adds up in Script 5, which snapshots at every check point. - AVT is not in this package (NDA). Unpack it on the DUT at exactly
~/AVT_Linux_NDA_2.8.37/before Script 4. Missing, the call exits2every round and the loop runs on without a CPU power reading. - Script 4 logs the full PM table once a minute, because the call is made without
-q. - CPU power is SMU telemetry, not a measurement. Its absolute accuracy is whatever the BIOS SVI calibration gives — cross-check against the VR's PMBus
READ_POUTwhen the number matters. - None of the three new scripts has been checked against the Script A/B/C flow on hardware yet.
- Do not run the boot cycle with
EN_Cold_Warm_boot = 0, and check the hard-coded BDF on every board before the cold path (see v1.2.2). - BER, the DSC cycle,
blanton_traffic_linespeedandblanton_tr518.shcannot overlap. They all take the same ports. - Script 4 has no teardown: finish it with
blanton_tr518.sh stopandsystemctl stop mlucas-amm. blanton_multiphase_margin.sh saveis permanent, and must not be mixed withmargin.sh.FAN_SPEEDis 100.
🔗 Links
- ARCHITECTURE.md — test flow, data models, constraints
- CLAUDE.md — commands and the bench gotchas
Full changelog: V1.2.2...V1.2.3