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

Commit e0fb04b7 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "esoc: Add flexibility to avoid soft-reset during modem error fatal"

parents bf1c9cc8 a6eeed7b
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -122,6 +122,8 @@ Optional driver parameters:
		This interval is the time it takes to toggle the reset of an external modem by
		holding down the reset pin. The value depends on the external modem's power
		management boot options. The default value is 203 milliseconds.
- qcom,esoc-skip-restart-for-mdm-crash: Boolean. If set, the esoc framework would skip the warm
		reboot phase during the momem crash.

Example:
	mdm0: qcom,mdm0 {
+6 −0
Original line number Diff line number Diff line
@@ -461,6 +461,12 @@ CONFIG_QCOM_LLCC_PMU=y
CONFIG_RAS=y
CONFIG_ANDROID=y
CONFIG_ANDROID_BINDER_IPC=y
CONFIG_ESOC=y
CONFIG_ESOC_DEV=y
CONFIG_ESOC_CLIENT=y
CONFIG_ESOC_MDM_4x=y
CONFIG_ESOC_MDM_DRV=y
CONFIG_ESOC_MDM_DBG_ENG=y
CONFIG_EXT2_FS=y
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT3_FS=y
+7 −0
Original line number Diff line number Diff line
@@ -481,6 +481,13 @@ CONFIG_QCOM_LLCC_PMU=y
CONFIG_RAS=y
CONFIG_ANDROID=y
CONFIG_ANDROID_BINDER_IPC=y
CONFIG_ESOC=y
CONFIG_ESOC_DEV=y
CONFIG_ESOC_CLIENT=y
CONFIG_ESOC_DEBUG=y
CONFIG_ESOC_MDM_4x=y
CONFIG_ESOC_MDM_DRV=y
CONFIG_ESOC_MDM_DBG_ENG=y
CONFIG_EXT2_FS=y
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT3_FS=y
+8 −1
Original line number Diff line number Diff line
@@ -285,8 +285,12 @@ static int mdm_cmd_exe(enum esoc_cmd cmd, struct esoc_clink *esoc)
		}
		break;
	case ESOC_EXE_DEBUG:
		mdm->debug = 1;
		mdm->trig_cnt = 0;

		if (mdm->skip_restart_for_mdm_crash)
			break;

		mdm->debug = 1;
		mdm_toggle_soft_reset(mdm, false);
		/*
		 * wait for ramdumps to be collected
@@ -941,6 +945,9 @@ static int sdx50m_setup_hw(struct mdm_ctrl *mdm,
	if (ret)
		dev_info(mdm->dev, "esoc link info missing\n");

	mdm->skip_restart_for_mdm_crash = of_property_read_bool(node,
				"qcom,esoc-skip-restart-for-mdm-crash");

	esoc->clink_ops = clink_ops;
	esoc->parent = mdm->dev;
	esoc->owner = THIS_MODULE;
+1 −0
Original line number Diff line number Diff line
@@ -103,6 +103,7 @@ struct mdm_ctrl {
	struct coresight_cti *cti;
	int trig_cnt;
	const struct mdm_pon_ops *pon_ops;
	bool skip_restart_for_mdm_crash;
};

struct mdm_pon_ops {