Smartphone Flash: Tool -runtime Trace Mode-l
SP Flash Tool can load vmlinux from your kernel build. Go to Settings → Symbol Files and map addresses to function names. Without symbols, you’ll need to use addr2line offline:
addr2line -e vmlinux 0xffffff8008123456
The PC makes the “connected” sound but disconnects instantly. The trace log shows:
[BROM] WAITING FOR PRELOADER... TIMEOUT.
This indicates the preloader is corrupt. You can use a known-good preloader binary and force BROM download without preloader check (using specific -runtime Trace Mode-l with -skip_preloader_check), breathing life back into the device.
If the device resets spontaneously, the trace buffer often contains the final executed instructions. Look for a func_entry without a matching func_exit – that function likely triggered the fault. Smartphone Flash Tool -runtime Trace Mode-l
Sample Output: [DA] Executing RAM test... PASS. Switching to UFS mode.
Diagnosis: If it hangs on "Switching to UFS," your phone has eMMC, not UFS. Force a format in the tool's "Memory Test" tab.
Before we dissect the syntax, let's break the keyword down: SP Flash Tool can load vmlinux from your kernel build
In essence, Smartphone Flash Tool -runtime Trace Mode-l is the command sequence that forces the tool to stop guessing and start telling you exactly why your phone isn't responding.
Sample Output: [BROM] Send handshake SHA256: 0x9A4B...
Diagnosis: If this freezes, your USB cable is faulty, or the phone is hard-bricked (dead battery/EMI damage). The PC makes the “connected” sound but disconnects
The following trace categories were captured during runtime:
Sample Output:
[EMI] Probing rank 0... Failed.
[EMI] Falling back to single-rank config at 0x40000000.
Diagnosis: Your scatter file memory addresses are wrong for this specific device variant. Compare the trace's detected base address with your scatter file.