Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

firmware: qcom: scm: Add multiple download mode support

Currently, scm driver only supports full dump when download
mode is selected. Add support to enable minidump as well as
enable it along with fulldump.

Signed-off-by: Mukesh Ojha <quic_mojha@quicinc.com>
Link: https://lore.kernel.org/r/20240715155655.1811178-2-quic_mojha@quicinc.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>

authored by

Mukesh Ojha and committed by
Bjorn Andersson
d4d4049e c802b0a2

+5 -2
+5 -2
drivers/firmware/qcom/qcom_scm.c
··· 126 126 #define QCOM_DLOAD_MASK GENMASK(5, 4) 127 127 #define QCOM_DLOAD_NODUMP 0 128 128 #define QCOM_DLOAD_FULLDUMP 1 129 + #define QCOM_DLOAD_MINIDUMP 2 130 + #define QCOM_DLOAD_BOTHDUMP 3 129 131 130 132 static const char * const qcom_scm_convention_names[] = { 131 133 [SMC_CONVENTION_UNKNOWN] = "unknown", ··· 139 137 static const char * const download_mode_name[] = { 140 138 [QCOM_DLOAD_NODUMP] = "off", 141 139 [QCOM_DLOAD_FULLDUMP] = "full", 140 + [QCOM_DLOAD_MINIDUMP] = "mini", 141 + [QCOM_DLOAD_BOTHDUMP] = "full,mini", 142 142 }; 143 143 144 144 static struct qcom_scm *__scm; ··· 1932 1928 }; 1933 1929 1934 1930 module_param_cb(download_mode, &download_mode_param_ops, NULL, 0644); 1935 - MODULE_PARM_DESC(download_mode, 1936 - "download mode: off/0/N for no dump mode, full/on/1/Y for full dump mode"); 1931 + MODULE_PARM_DESC(download_mode, "download mode: off/0/N for no dump mode, full/on/1/Y for full dump mode, mini for minidump mode and full,mini for both full and minidump mode together are acceptable values"); 1937 1932 1938 1933 static int qcom_scm_probe(struct platform_device *pdev) 1939 1934 {