Session 19 — 2026-03-27b
| Field | Value |
|---|---|
| Date | 2026-03-27 |
| Phase | 03a — Custom UEFI ABL |
| Duration | ~30 min |
What Happened
ABL source had accumulated speculative fastboot flashing-fix changes across v1.4–v1.6 (gRxBuffer DMA redirect, buffer size reductions, SetMem zeroing, FASTBOOT_PLACEHOLDER_SIZE). None of these resolved the bulk transfer hang. This session reviewed all 18 prior diary entries, classified every change as “advancement” (keep) or “flashing fix attempt” (remove), and surgically reverted three files to upstream.
Final Clean State vs Upstream
| File | Change | Source version |
|---|---|---|
BaseTools/Conf/tools_def.template | -Wno-misleading-indentation | v1.0 |
BaseTools/Source/C/Makefiles/header.makefile | -Wno-stringop-truncation | v1.0 |
Conf/tools_def.txt | -Wno-misleading-indentation | v1.0 |
LinuxLoader.c | VBSendRot + VBCmdLine stock override | v1.3 |
LinuxLoader.inf | gEfiQcomVerifiedBootProtocolGuid | v1.3 |
FastbootCmds.c | CmdOemRebootEdl + registration only | v1.3 |
QcomModulePkg.dsc | EnableDisplayMenu|FALSE | v1.3 |
FastbootCmds.h and FastbootMain.c are now fully identical to upstream — no diff at all.
Removed Code Summary
| Version | What was removed |
|---|---|
| v1.4 | gRxBuffer DMA redirect in CmdDownload; USB_BUFFER_SIZE 16→64 MB |
| v1.5 | gRxBuffer SetMem zeroing; continued redirect |
| v1.6 | Buffer reductions (256→34 MB); FASTBOOT_PLACEHOLDER_SIZE; mFlashDataBuffer override |
Root cause of fastboot bulk transfer hang remains below ABL level — likely XBL USB driver (TRB ring overflow). Documented in phase 03a doc for future investigation.
Next Step
Build clean source as v2.0 (new major version — clean slate). Flash and verify Android boots + fastboot enumerates + oem reboot-edl works.