lkml.org 
[lkml]   [2023]   [Oct]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH v1 0/5] soc/arm64: qcom: add initial version of memory dump
From


On 2023/10/23 22:31, Caleb Connolly wrote:
>
>
> On 23/10/2023 10:20, Zhenhua Huang wrote:
>> Qualcomm memory dump driver is to cooperate with firmware, providing the
>> hints(id and size) of storing useful debugging information into pre-allocated
>> memory. Firmware then does the real data capture. The debugging information
>> includes cache contents, internal memory, registers.
>>
>> The driver dynamically reserves memory and provides the hints(dump id and size)
>> following specified protocols with firmware. After crash and warm reboot,
>> firmware scans these information and stores contents into reserved memory
>> accordingly. Firmware then enters into full dump mode which dumps whole DDR
>> to host through USB.
>>
>> User then get full dump using PCAT and can parse out these informations.
>
> PCAT is a proprietary tool that requires signing up to qualcomm.com and
> installing the Qualcomm Package Manager to access. It also relies on
> another tool (QUTS) to actually interact with the board.
>

Oh.. I saw PCAT is introduced in doc of RB5 development kit so tried
with it as well. I will investigate more on this. Thanks.

> Shouldn't we have a FOSS (or at the very least OSS) tool that can be
> used to interact with these memory dumps?
>>
>> Dump id and size are provided by bootconfig. The expected format of a
>> bootconfig file is as follows:-
>> memory_dump_config {
>> <node name> {
>> id = <id of HW component>
>> size = <dump size of HW component>
>> }
>> }
>>
>> for example:
>> memory_dump_config {
>> c0_context_dump {
>> id = 0
>> size = 0x800
>> }
>> }
>>
>> Test based on 6.6-rc1.
>>
>> Zhenhua Huang (5):
>> dt-bindings: soc: qcom: Add memory_dump driver bindings
>> dt-bindings: sram: qcom,imem: document sm8250
>> soc: qcom: memory_dump: Add memory dump driver
>> arm64: defconfig: enable Qcom Memory Dump driver
>> arm64: dts: qcom: sm8250: Add memory dump node
>>
>> .../bindings/soc/qcom/qcom,mem-dump.yaml | 42 ++
>> .../devicetree/bindings/sram/qcom,imem.yaml | 45 ++
>> MAINTAINERS | 7 +
>> arch/arm64/boot/dts/qcom/sm8250.dtsi | 31 ++
>> arch/arm64/configs/defconfig | 1 +
>> drivers/soc/qcom/Kconfig | 11 +
>> drivers/soc/qcom/Makefile | 1 +
>> drivers/soc/qcom/memory_dump.c | 540 +++++++++++++++++++++
>> 8 files changed, 678 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,mem-dump.yaml
>> create mode 100644 drivers/soc/qcom/memory_dump.c
>>
>

\
 
 \ /
  Last update: 2023-10-24 11:55    [W:0.294 / U:0.144 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site