Transcribe BCM PDFs to markdown visually (tables intact); catalog probe candidates: EEE advertised in reference bringup, EMI cmds are fast-retrain enables, 1588/loopback/ECD chapters missing
This commit is contained in:
+3
-3
@@ -53,10 +53,10 @@ Docs are in this folder (`10GBase-T...BCM84891.pdf` transport, `BCM84891L-MDIO C
|
||||
- **CMD_GET_SNR = 0x8030** — invoke with **no DATA1 write**; writing the documented display flag makes this firmware return zeros. Bare invocation returns DATA2–5 = per-pair SNR (channels A–D) in tenths of dB. Bench: 27–32 dB absolute, ~0.1–0.4 dB read-to-read jitter. This is *absolute* receiver SNR, not margin (10GBASE-T operating point ≈ 26.5 dB).
|
||||
- The IEEE PMA SNR registers 1.133–1.140 read a constant 0x8080 on the BCM — never populated, display flag inert. **On FS modules SNR comes from the command handler, not standard registers.**
|
||||
- **CMD_GET_CURRENT_TEMP = 0x8031** (die runs ~70 °C on bench), **GET_CURRENT_VOLTAGE = 0x802F**.
|
||||
- **Trap: 0x8020 is SET_PAUSE_FRAME_MODE** — a config *write*, and the handler executes whatever stale DATA1 holds as its argument. Module pause is explicitly set to 0 (off — the state cabletest requires); GET_PAUSE_FRAME_MODE (0x801F) returns junk on this firmware, so treat the setting as write-only.
|
||||
- **Trap: SET commands execute stale DATA1.** The handler doesn't clear DATA registers between commands, so invoking any SET without writing its params applies leftover garbage (0x8020 SET_PAUSE_FRAME_MODE was hit this way under the old wrong GET_SNR constant — harmlessly, since pause mode is scoped to 2.5/5G idle-stuffing under XFI WAP mode and is inert at plain 10G).
|
||||
- The >1 ms SMI read delay: 3 ms works reliably.
|
||||
- Also pair swap/skew/polarity, 1588.
|
||||
- **Enhanced Cable Diagnostics** (shorts/opens/**cable length**) is a headline feature, but its invocation is NOT in the command-code table (0x8000–0x805B) — it's a separate ECD register mechanism whose chapter isn't in the docs FS sent. This is the one outstanding ask to FS.
|
||||
- Full command catalog with semantics: `bcm84891l-mdio-commands.md`. Probe-priority list: modules.md "What the FS/BCM gives".
|
||||
- **Enhanced Cable Diagnostics** (shorts/opens/**cable length**) is a headline feature, but its invocation is NOT in the command-code table (0x8000–0x805B) — it's a separate ECD register mechanism whose chapter isn't in the docs FS sent. The FS ask list, in value order: the ECD chapter, the 1588 operation chapter (in-PHY timestamping; enable exists at 0x8004/5), datasheet §1.20 loopback (copper line loopback) and §1.17 EEE/fast-retrain monitoring, and Chapter 2 register summary — the excerpt's TOC names them all.
|
||||
|
||||
**Correct BCM SMI framing over the E810 topo-I2C** (recorded in case a write-capable multi-byte transport reappears): read = write `[001+devad,RegH,RegL]` offset_size=1, STOP, >1 ms, then read 2 B offset_size=0; write = offset_size=2, addr = devad<<8|RegH, data = `[RegL,DataH,DataL]`.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user