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

Commit 9db2df77 authored by Venkat Devarasetty's avatar Venkat Devarasetty Committed by Stephen Boyd
Browse files

msm: pm: add failed stats



for idle and supsend failed cases the stats
are not updated correctly, they are just added to
success bucket.

This patch is to log the failed stats separately.

Change-Id: If570b1026bce97750bed037585ce4b34fcb6700f
Signed-off-by: default avatarVenkat Devarasetty <vdevaras@codeaurora.org>
parent 30339f46
Loading
Loading
Loading
Loading
+16 −4
Original line number Diff line number Diff line
@@ -886,7 +886,11 @@ enum msm_pm_sleep_mode msm_pm_idle_enter(struct cpuidle_device *dev,

	case MSM_PM_SLEEP_MODE_POWER_COLLAPSE_STANDALONE:
		collapsed = msm_pm_power_collapse_standalone(true);
		if (collapsed)
			exit_stat = MSM_PM_STAT_IDLE_STANDALONE_POWER_COLLAPSE;
		else
			exit_stat
			    = MSM_PM_STAT_IDLE_FAILED_STANDALONE_POWER_COLLAPSE;
		break;

	case MSM_PM_SLEEP_MODE_POWER_COLLAPSE:
@@ -896,7 +900,11 @@ enum msm_pm_sleep_mode msm_pm_idle_enter(struct cpuidle_device *dev,
		collapsed = msm_pm_power_collapse(true);
		timer_halted = true;

		if (collapsed)
			exit_stat = MSM_PM_STAT_IDLE_POWER_COLLAPSE;
		else
			exit_stat = MSM_PM_STAT_IDLE_FAILED_POWER_COLLAPSE;

		msm_pm_timer_exit_idle(timer_halted);
		break;

@@ -1050,6 +1058,7 @@ static int msm_pm_enter(suspend_state_t state)
		int ret = -ENODEV;
		uint32_t power;
		uint32_t msm_pm_max_sleep_time = 0;
		int collapsed = 0;

		if (MSM_PM_DEBUG_SUSPEND & msm_pm_debug_mask)
			pr_info("%s: power collapse\n", __func__);
@@ -1073,7 +1082,7 @@ static int msm_pm_enter(suspend_state_t state)
						msm_pm_max_sleep_time,
						rs_limits, false, true);
			if (!ret) {
				int collapsed = msm_pm_power_collapse(false);
				collapsed = msm_pm_power_collapse(false);
				if (pm_sleep_ops.exit_sleep) {
					pm_sleep_ops.exit_sleep(rs_limits,
						false, true, collapsed);
@@ -1084,7 +1093,10 @@ static int msm_pm_enter(suspend_state_t state)
				__func__);
		}
		time = msm_pm_timer_exit_suspend(time, period);
		if (collapsed)
			msm_pm_add_stat(MSM_PM_STAT_SUSPEND, time);
		else
			msm_pm_add_stat(MSM_PM_STAT_FAILED_SUSPEND, time);
	} else if (allow[MSM_PM_SLEEP_MODE_POWER_COLLAPSE_STANDALONE]) {
		if (MSM_PM_DEBUG_SUSPEND & msm_pm_debug_mask)
			pr_info("%s: standalone power collapse\n", __func__);