Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 91292d8e authored by Rohit Agarwal's avatar Rohit Agarwal Committed by Sayan Dey
Browse files

soc: qcom: msm_minidump: Configurable Encryption support



Some regions registered cannot be encrypted in minidump due to some HW
limitations on sdxlemur. To work around this, make the encryption of
minidump regions configurable.

Change-Id: Ibd0899ecaacfda4bd8f05ce0b8eef05c731c18e3
Signed-off-by: default avatarRohit Agarwal <quic_rohiagar@quicinc.com>
Signed-off-by: default avatarSayan Dey <quic_sayand@quicinc.com>
parent 89f4076c
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -513,3 +513,4 @@ CONFIG_ANDROID_BINDERFS=y
CONFIG_ANDROID_BINDER_DEVICES="binder,hwbinder,vndbinder"
# CONFIG_ANDROID_BINDER_IPC_SELFTEST is not set
CONFIG_IPC_LOG_MINIDUMP_BUFFERS=16
# CONFIG_QCOM_MINIDUMP_ENCRYPT is not set
+10 −0
Original line number Diff line number Diff line
@@ -645,6 +645,16 @@ config MINIDUMP_MAX_ENTRIES
	  This defines maximum number of entries to be allocated for application
	  subsytem in Minidump table.

config QCOM_MINIDUMP_ENCRYPT
	bool "QCOM Minidump Encryption Required"
	depends on QCOM_MINIDUMP
	default y
	help
	  This adds a support to decide whether the regions in minidump
	  table should be encrypted or not. By default, encryption is done
	  by the boot firmware and the decision for encryption is taken by
	  the subsystems.

config QCOM_MICRODUMP
	tristate "Qualcomm Technologies, Inc. Microdump Support"
	depends on MSM_SUBSYSTEM_RESTART
+7 −2
Original line number Diff line number Diff line
@@ -570,8 +570,13 @@ static int __init msm_minidump_init(void)
	minidump_table.revision = md_global_toc->md_revision;
	md_ss_toc = &md_global_toc->md_ss_toc[MD_SS_HLOS_ID];

	if (IS_ENABLED(CONFIG_QCOM_MINIDUMP_ENCRYPT)) {
		md_ss_toc->encryption_status = MD_SS_ENCR_NONE;
		md_ss_toc->encryption_required = MD_SS_ENCR_REQ;
	} else {
		md_ss_toc->encryption_status = MD_SS_ENCR_DONE;
		md_ss_toc->encryption_required = MD_SS_ENCR_NOTREQ;
	}

	minidump_table.md_ss_toc = md_ss_toc;
	minidump_table.md_regions = kzalloc((MAX_NUM_ENTRIES *