diff --git a/firmware/qualcomm_qdb.ksy b/firmware/qualcomm_qdb.ksy new file mode 100644 index 000000000..6d566407d --- /dev/null +++ b/firmware/qualcomm_qdb.ksy @@ -0,0 +1,28 @@ +meta: + id: qualcomm_qdb + title: Qualcomm Qshrink hash database file + application: Qualcomm QXDM + file-extension: qdb + license: CC0-1.0 + +doc: | + This format is nothing more than zlib-compressed XML appended to a trivially + simple binary header. The XML maps diagnostic codes emitted by Qualcomm modem + firmware to textual log messages. A file of this type typically resides on the + "modem" partition of a Qualcomm device with a name like "qdsp6m.qdb". + +doc-ref: + - https://github.com/mzakocs/qualcomm_baseband_scripts/blob/main/qshrink4_qdb_ghidra_script.py + +seq: + - id: magic + contents: [0x7f, "QDB"] + - id: guid + size: 0x10 + doc: Matches the top-level element in the compressed XML + +instances: + xml: + pos: 0x40 + size-eos: true + process: zlib