Session 28 — 2026-03-28b
| Field | Value |
|---|---|
| Date | 2026-03-28 |
| Phases | 03b — TWRP, 03b2 — Boot mode selection |
| Duration | ~5 h |
TWRP v3.6/v3.7 — Crypto Disabled
Disabled TW_INCLUDE_CRYPTO in BoardConfig.mk; removed qseecomd and keymaster-4-0 services from init.rc. v3.6 confirmed: no FDE prompt in TWRP, no FDE prompt after reboot to Android. Clean boot cycle restored. v3.7 added A2 dither fix (0x1000) and WAIT_UPDATE.
A2 Waveform Mode — Blocked by Kernel
EPDC debug log shows: waveform_mode[2] is_convert[1] — the kernel’s onyx_waveform_mode_transform overrides our A2 (0x0c) → GC16 (2). Root cause: waveform file version 0x19 (panel ES103TD1C1) doesn’t list REAGL modes; driver calls "force use auto waveform mode, because reagl disabled!" and overrides all modes to auto. Fix requires either: kernel binary NOP patch at transform call site, or finding SET_EBC_UPDATE_SCHEME ioctl to switch to HANDWRITE scheme.
TLMM Clock Gating — ABL MMIO Cannot Work
ABL v2.2 (safe GCD mapping + watchdog + NV variable attempt counter) caused bootloop. Root cause: TLMM AHB clock is gated when ABL runs. MmioRead32 on clock-gated peripheral causes an indefinite bus stall (not a data abort). GCD mapping prevents the data abort but cannot prevent the stall. UEFI NV variables also do not survive watchdog resets on this device.
Hall Sensor GPIO Confirmed (from Linux)
Tested safely from TWRP:
echo 105 > /sys/class/gpio/export
# Cover open: value = 1
# Cover closed: value = 0
!(val & 0x1) = closed is correct. ABL approach requires enabling GCC_TLMM_AHB_CLK first — not yet solved.
Changelogs Created
builds/twrp/CHANGELOG.md— all 28 TWRP versions (v1.0–v3.7)builds/abl/CHANGELOG.md— all ABL versions (v1.0–v2.2)- CLAUDE.md: mandatory changelog rule for all future ABL and TWRP builds