uzbek-plus/b9/b9l/persist/B9L-PERSIST-PLAN.md

34 lines
3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# B9L-PERSIST — lk1st with ST7735S splash: build done, write NOT done (waiting for a separate GO)
## Images
| | file | size | sha256 |
|---|---|---|---|
| unsigned | lk1st-b9l-unsigned.mbn | 446664 B | 16f9ec0ad8289fbf62acfa05733025fd254503229cf9cf5266ec190ecbd35ec7 |
| signed (qtestsign 0eef3b5 `-v 3 aboot`) | aboot-lk1st-b9l.mbn | 367380 B | 0ddbc29a6bbdf0c8ba280dd7a4eaad793531600bce32528a92d59c9110f6bd0a |
| final (zero-padded to the aboot partition, 1 MiB) | aboot-lk1st-b9l.pad1M | 1048576 B | 15208dbb4feafccd72d2b06db5714cd746c216701f0ef8822c58bb47105d37c4 |
| current aboot (B5a) for comparison/rollback | b5a/aboot-lk1st-aurora-autoboot.pad1M | 1048576 B (signed 327196) | 3b8cd266… (unsigned 33c452e4, signed 7b3fb5b3) |
Reproducibility: a clean lk2nd 23.1 e9c8b217 clone with the same command (`lk1st-msm8916 LK2ND_BUNDLE_DTB=msm8916-512mb-mtp.dtb`) + the same
qtestsign gives 33c452e4 → 7b3fb5b3 → 3b8cd266, i.e. bit-identical to the flashed aboot. The B9L build differs only by the patch and the flags.
## Difference from the current lk1st
- config.h: `+AURORA_SPLASH 1`, `+WITH_LK2ND_AURORA 1` only (config-vs-current-lk1st.diff).
- Objects: NEW lk2nd/aurora/st7735s.o, platform/msm_shared/spi_qup.o; changed platform/msm8916/{gpio,acpuclock,msm8916-clock}.o,
lk2nd/version/tag.o ("23.1-dirty"). Everything else is identical (normalised objdump compare).
- st7735s.o, spi_qup.o, gpio.o, acpuclock.o, msm8916-clock.o are **identical** to the RAM-tested B9L lk2nd (e6849a2b, formal PASS).
- ELF: the same 4-phdr layout. LOAD 0x8f600000 filesz 0x49b0c (was 0x3fe14), memsz 0x82dd8 (was 0x76dd0) → heap up to 0x8f700000 = 500 KiB (was 548);
the hash segment is at 0x8f683000, after the image.
- Present in the final image: all [B9L …] log strings, "frame source: splash image", the 32768-byte splash blob (×1).
No "Fastboot mode was forced" (autoboot kept).
- Behaviour change: every lk1st start (normal boot and RESET fastboot) runs the panel init (+~380 ms) before lk2nd boot/fastboot.
## Plan (after GO only; on 480s; board in HW EDL 9008)
1. `b9/b9l/persist/B9L-write.sh`:
- G0: loader sha, candidate 15208dbb/1 MiB, rollback image 3b8cd266/1 MiB, 9008 present.
- G1: printgpt + serial, aboot geometry 0x8100000/0x100000, GPT == A3, boot == e9579f33, cache == B9C b9ce13c9.
**Backup:** live aboot read to `logs/b9/b9l/W/pre-aboot.bin`, must be 3b8cd266.
- W: write aboot only → readback → cmp → ABOOT_MATCH.
- V: GPT p/b, tzbak, boot, cache, sbl1 rpm tz hyp recovery modemst1/2 fsg fsc persist == A3, modem/system/userdata == A4pre → `B9L_ABOOT_WRITE_VERIFIED`.
2. Full power-off → normal power-on: expect the splash ~0.4 s after LK start → lk2nd extlinux `b9c` → Linux fbcon. Check UART + operator.
3. Rollback if anything fails (lk1st does not start / no UART / boot regression): HW EDL → `b9/b9l/persist/B9L-rollback.sh` → aboot := 3b8cd266
(boot/cache untouched). If readback mismatches during the write: do not reboot, run the rollback at once.