Jump to content

Qualcomm CrashDump Mode: Difference between revisions

From postmarketOS Wiki
Samcday (talk | contribs)
No edit summary
Samcday (talk | contribs)
Add information about using edl tool to dump memory
Line 2: Line 2:


It is implemented in Qualcomm's boot firmware code (FIXME: is it in PBL or TZ?) and can be triggered by kernel panics (FIXME: this would probably only be in downstream kernels, right?), or crashes in the proprietary firmware.
It is implemented in Qualcomm's boot firmware code (FIXME: is it in PBL or TZ?) and can be triggered by kernel panics (FIXME: this would probably only be in downstream kernels, right?), or crashes in the proprietary firmware.
== Obtaining a memory dump ==
Whilst a device is in CrashDump mode, it is possible to use bkerler's [https://github.com/bkerler/edl edl utility] to perform a full memory dump. Simply plug the device into your computer and run <code>edl</code> (with no arguments). Note that this is a '''full''' memory dump, which will occupy several GB on your host machine.
== More information ==


The initial author of this page has very little understanding or further information about this mode. It would be great to see this page expanded with further information, such as how to convert the dumped memory into something that can be loaded into GDB for further debugging on the kernel side.
The initial author of this page has very little understanding or further information about this mode. It would be great to see this page expanded with further information, such as how to convert the dumped memory into something that can be loaded into GDB for further debugging on the kernel side.

Revision as of 15:06, 11 January 2025

More recent (FIXME: which?) Qualcomm SoCs feature a special "CrashDump mode" that allows for full memory dumps to be taken from the device (including memory regions for coprocessors).

It is implemented in Qualcomm's boot firmware code (FIXME: is it in PBL or TZ?) and can be triggered by kernel panics (FIXME: this would probably only be in downstream kernels, right?), or crashes in the proprietary firmware.

Obtaining a memory dump

Whilst a device is in CrashDump mode, it is possible to use bkerler's edl utility to perform a full memory dump. Simply plug the device into your computer and run edl (with no arguments). Note that this is a full memory dump, which will occupy several GB on your host machine.

More information

The initial author of this page has very little understanding or further information about this mode. It would be great to see this page expanded with further information, such as how to convert the dumped memory into something that can be loaded into GDB for further debugging on the kernel side.

See also