devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v1 0/5] soc/arm64: qcom: add initial version of memory dump
@ 2023-10-23  9:20 Zhenhua Huang
  2023-10-23  9:20 ` [PATCH v1 1/5] dt-bindings: soc: qcom: Add memory_dump driver bindings Zhenhua Huang
                   ` (7 more replies)
  0 siblings, 8 replies; 39+ messages in thread
From: Zhenhua Huang @ 2023-10-23  9:20 UTC (permalink / raw)
  To: agross, andersson, konrad.dybcio, robh+dt, krzysztof.kozlowski+dt,
	conor+dt
  Cc: linux-arm-msm, devicetree, linux-kernel, kernel, quic_tingweiz,
	Zhenhua Huang

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.

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

-- 
2.7.4


^ permalink raw reply	[flat|nested] 39+ messages in thread

end of thread, other threads:[~2023-10-26 21:01 UTC | newest]

Thread overview: 39+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-10-23  9:20 [PATCH v1 0/5] soc/arm64: qcom: add initial version of memory dump Zhenhua Huang
2023-10-23  9:20 ` [PATCH v1 1/5] dt-bindings: soc: qcom: Add memory_dump driver bindings Zhenhua Huang
2023-10-23  9:27   ` Krzysztof Kozlowski
2023-10-23 11:54     ` Zhenhua Huang
2023-10-23 12:52       ` Krzysztof Kozlowski
2023-10-24 10:57         ` Zhenhua Huang
2023-10-24 13:55           ` Krzysztof Kozlowski
2023-10-26 21:01     ` Elliot Berman
2023-10-23 17:40   ` Rob Herring
2023-10-23  9:20 ` [PATCH v1 2/5] dt-bindings: sram: qcom,imem: document sm8250 Zhenhua Huang
2023-10-23  9:27   ` Krzysztof Kozlowski
2023-10-23 17:40   ` Rob Herring
2023-10-24 11:07     ` Zhenhua Huang
2023-10-23  9:20 ` [PATCH v1 3/5] soc: qcom: memory_dump: Add memory dump driver Zhenhua Huang
2023-10-23  9:31   ` Krzysztof Kozlowski
2023-10-23 11:43     ` Zhenhua Huang
2023-10-23 11:46       ` Krzysztof Kozlowski
2023-10-23 12:19         ` Zhenhua Huang
2023-10-23 12:53           ` Krzysztof Kozlowski
2023-10-24 10:57             ` Zhenhua Huang
2023-10-24 13:58               ` Krzysztof Kozlowski
2023-10-23 13:56   ` Konrad Dybcio
2023-10-24  7:36     ` Zhenhua Huang
2023-10-26 18:58   ` kernel test robot
2023-10-23  9:20 ` [PATCH v1 4/5] arm64: defconfig: enable Qcom Memory Dump driver Zhenhua Huang
2023-10-23  9:32   ` Krzysztof Kozlowski
2023-10-23 11:43     ` Zhenhua Huang
2023-10-23 11:47       ` Krzysztof Kozlowski
2023-10-23 12:19         ` Zhenhua Huang
2023-10-23  9:20 ` [PATCH v1 5/5] arm64: dts: qcom: sm8250: Add memory dump node Zhenhua Huang
2023-10-23  9:33   ` Krzysztof Kozlowski
2023-10-23  9:25 ` [PATCH v1 0/5] soc/arm64: qcom: add initial version of memory dump Krzysztof Kozlowski
2023-10-23 12:18   ` Zhenhua Huang
2023-10-23 12:54     ` Krzysztof Kozlowski
2023-10-23 13:50 ` Konrad Dybcio
2023-10-24 10:10   ` Zhenhua Huang
2023-10-24 14:25     ` Jeff Johnson
2023-10-23 14:31 ` Caleb Connolly
2023-10-24  9:53   ` Zhenhua Huang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).