uzbek-plus/logs/b7/b7c/c1/C1-RESULT.md
q 8d7721c775 B7: add network time bootstrap and persistent B7C cache
B7A: QMI DMS time vs VNIIFTRI NTP (DMS = UTC - 0.28 s, sigma 1 ms; NITZ = DMS
truncated to 1 s). B7B: a 1970 -> 2026 date -s step is harmless for the modem
stack. B7C: aurora-modem probes DMS/NITZ along the start flow and steps
CLOCK_REALTIME once at the first valid sample (REG registered/attached), never
RTC; background SNTP check (query only) after START OK. 3/3 class-A cold boots
PASS (residual +0.04/+0.36/+0.84 s), cache 14fe453a written (B7C_WRITE_VERIFIED)
and verified by a normal power-on (V1, +0.26 s).

Also publishes the prerequisite R2 (boot-hang / lk eMMC investigation, T4
telnet baseline that B7C builds on) and R3 (autonomous cold boot, NCM loss)
material, and extends tools/publish-sanitize.py to r2/, r3/, b7/.
Binary images, initramfs, busybox and raw logs stay out (see b7/*/SHA256SUMS).
2026-10-02 20:18:25 +03:00

27 lines
2.2 KiB
Markdown

# B7C c1 — first functional RAM boot of aurora-mm1-b7c.img (d0c4cc00): functional PASS, **class B — not counted as a class-A run**
- Board was already in lk1st fastboot when the driver started (10:10:05 UTC); `fastboot boot` rc=0. PM8916 RTC at boot = 4433 s → **class B** (no ≥ 90 s full power-off).
- Driver bug: the START-OK wait matched the telnet echo of its own grep → first snapshot taken at uptime ~16 s, during start (read-only: status, cat, an ntpd query
without a route). Kept in c1/early/. Fixed (match only "[uptime] …" log lines) + `collect` mode; proper collection after START OK in c1/.
## Time bootstrap
| probe | phase | uptime | DMS | result |
|---|---|---|---|---|
| 1 | QMI_READY | 12.9 | 3228 ms (=1980-01-06 +3 s) | INVALID year<2026 |
| 2 | SIM_READY | 13.1 | 3399 ms | INVALID year<2026 |
| 3 | RADIO_ONLINE | 16.4 | 6765 ms | INVALID year<2026 |
| 4 | REG searching/detached | 16.9 | 7227 ms | INVALID year<2026 |
| 5 | REG registered/attached | 20.3 | 2026-10-02 10:10:27.620, NITZ 10:10:27, Δ +0.65 s | **VALID → TIME SET** |
| 6 | REGISTERED | 20.8 | Δ +0.12 s | VALID (no re-set) |
| 7 | BEARER_CONNECTED | 83.2 | Δ +0.54 s | VALID |
**Before registration DMS = modem uptime since power-on counted from the GPS epoch 1980-01-06** (free-running, no NITZ). It becomes real UTC exactly at
registered/attached, together with NITZ. The gate rejected all four early samples. Clock stepped once at uptime 20.72 s (1970 → 2026-10-02 10:10:28), before REGISTERED.
## After start
START OK in 74.1 s (Beeline home, wwan0 10.84.21.8/28, PCI 390), LTE ping 3/3. SNTP check (uptime 98.6): 13 replies from ntp1/2/3,
best **+0.193 s** (ntp3, 50 ms RTT), clock kept (< 1 s). Independent verify (ntp2, ~15 s later): +0.190…+0.199 s.
adjtimex status 64 (UNSYNC), RTC counting from 4433 (untouched), eMMC writes 0, dmesg: only the 2 known boot messages, no lifecycle FAIL/rollback.
## Pre-existing quirk (B6P, not B7C)
modem.conf `ROUTES="77.88.8.8 1.1.1.1"` overrides the controller's ROUTES=$D/routes path → the route list is kept in the file "/77.88.8.8 1.1.1.1".
stop/disconnect read the same variable, so cleanup works (NTP /32 routes included). Cosmetic; fix only with a separate GO.