How emonti/qualcomm-opensource-tools works
This repository is primarily a Qualcomm/Linux RAM-dump analysis tool: a user supplies dump memory and kernel symbols to ramparse, which initializes a dump reader and runs selected registered parsers to produce diagnostic output. Its analysis spans kernel state, memory mappings, hardware subsystems, and debug traces. The tree also contains separate DCC and IPC-logging utilities. Source excerpts support the main reader, dispatcher, selected parser calls, and trace handling; many parser implementations are indexed but unsampled, so their internal links are not asserted.
Main entry points: ramdump.py Dump reader · debug_image_v2.py Debug-image decoder · ramparse.py CLI dispatcher · parsers Kernel state parsers
Components 21
Parsing entry
- CLI dispatcher
linux-ramdump-parser-v2/ramparse.py - Parser registry
linux-ramdump-parser-v2/parser_util.py
Dump access
- Dump reader
linux-ramdump-parser-v2/ramdump.py - Address translation
linux-ramdump-parser-v2/mmu.py - Architecture helpers
linux-ramdump-parser-v2/bitops.py - Diagnostic output
linux-ramdump-parser-v2/print_out.py
Kernel analysis
- Kernel state parsers
linux-ramdump-parser-v2/parsers - Workqueue analysis
linux-ramdump-parser-v2/parsers/workqueue.py - Watchdog analysis
linux-ramdump-parser-v2/parsers/watchdog.py - Memory analysis
linux-ramdump-parser-v2/parsers
Hardware diagnostics
- IOMMU analysis
linux-ramdump-parser-v2/parsers/iommu.py - IOMMU helpers
linux-ramdump-parser-v2/iommulib.py - CPR diagnostics
linux-ramdump-parser-v2/parsers/cpr3_info.py
Trace and logging
- Debug-image parser
linux-ramdump-parser-v2/parsers/debug_image.py - Debug-image decoder
linux-ramdump-parser-v2/debug_image_v2.py - QDSS trace decoder
linux-ramdump-parser-v2/qdss.py - Watchdog decoder
linux-ramdump-parser-v2/watchdog_v2.py - IPC-log parser
linux-ramdump-parser-v2/parsers/ipc_logging.py
Other components
- Analyst
- DCC parser
dcc_parser/dcc_parser.py - IPC logging tool
ipc_logging/ipc_logging.py
Connections 20
- Analyst → CLI dispatcher: provides dump options
linux-ramdump-parser-v2/ramparse.py - CLI dispatcher → Parser registry: loads parser options
linux-ramdump-parser-v2/ramparse.py - CLI dispatcher → Dump reader: initializes reader
linux-ramdump-parser-v2/ramparse.py - Parser registry → Kernel state parsers: registers parsers
linux-ramdump-parser-v2/parsers/cpr3_info.py - Dump reader → Address translation: uses translation
linux-ramdump-parser-v2/ramdump.py - Dump reader → Architecture helpers: uses helpers
- Kernel state parsers → Dump reader: reads dump state
- Workqueue analysis → Dump reader: reads kernel state
linux-ramdump-parser-v2/parsers/workqueue.py - Watchdog analysis → Dump reader: reads dump state
- Memory analysis → Dump reader: reads dump state
- IOMMU analysis → IOMMU helpers: uses helpers
linux-ramdump-parser-v2/parsers/iommu.py - IOMMU analysis → Dump reader: reads mappings
- CPR diagnostics → Dump reader: reads regulator state
linux-ramdump-parser-v2/parsers/cpr3_info.py - Debug-image parser → Debug-image decoder: delegates decoding
linux-ramdump-parser-v2/parsers/debug_image.py - Debug-image decoder → QDSS trace decoder: sets trace context
linux-ramdump-parser-v2/debug_image_v2.py - Debug-image decoder → Watchdog decoder: uses decoder
linux-ramdump-parser-v2/debug_image_v2.py - Debug-image decoder → Dump reader: reads dump data
- Kernel state parsers → Diagnostic output: writes diagnostics
linux-ramdump-parser-v2/parsers/cpr3_info.py - QDSS trace decoder → Diagnostic output: prints trace data
linux-ramdump-parser-v2/qdss.py - Watchdog decoder → Diagnostic output: prints registers
linux-ramdump-parser-v2/watchdog_v2.py