power: reset: qcom-dload-mode: support for nodump mode

In case of unexpected warm-restart, device will go into special
download modes. Add support to not go into download modes
i.e., nodump mode.

Change-Id: Ica5f1b22a648458b151a8ae696e97aad83b7fc6c
Signed-off-by: Khaja Hussain Shaik Khaji <quic_kshaikkh@quicinc.com>
This commit is contained in:
Khaja Hussain Shaik Khaji 2024-06-12 15:29:45 +05:30
parent 4421fcf024
commit c7cfe23876
2 changed files with 21 additions and 0 deletions

View File

@ -132,6 +132,16 @@ config POWER_RESET_QCOM_DOWNLOAD_MODE_DEFAULT
Say Y here to enable "download mode" by default.
config POWER_RESET_QCOM_DOWNLOAD_MODE_NODUMP
bool "MSM download mode as nodump"
depends on POWER_RESET_QCOM_DOWNLOAD_MODE
help
Support MSM boards to be able to set nodump as download mode,
when unexpected warm-restart is called, so that device will
not go into ramdump path.
Say N if not sure.
config POWER_RESET_QCOM_PON
tristate "Qualcomm power-on driver"
depends on ARCH_QCOM

View File

@ -203,6 +203,11 @@ static ssize_t dload_mode_show(struct kobject *kobj,
case QCOM_DOWNLOAD_BOTHDUMP:
mode = "both";
break;
#ifdef CONFIG_POWER_RESET_QCOM_DOWNLOAD_MODE_NODUMP
case QCOM_DOWNLOAD_NODUMP:
mode = "nodump";
break;
#endif
default:
mode = "unknown";
break;
@ -221,6 +226,12 @@ static ssize_t dload_mode_store(struct kobject *kobj,
mode = QCOM_DOWNLOAD_MINIDUMP;
else if (sysfs_streq(buf, "both"))
mode = QCOM_DOWNLOAD_BOTHDUMP;
#ifdef CONFIG_POWER_RESET_QCOM_DOWNLOAD_MODE_NODUMP
else if (sysfs_streq(buf, "nodump")) {
mode = QCOM_DOWNLOAD_NODUMP;
qcom_scm_disable_sdi();
}
#endif
else {
pr_err("Invalid dump mode request...\n");
pr_err("Supported dumps: 'full', 'mini', or 'both'\n");