summaryrefslogtreecommitdiff
path: root/zephyr/subsys/ap_pwrseq/power_host_sleep.c
diff options
context:
space:
mode:
Diffstat (limited to 'zephyr/subsys/ap_pwrseq/power_host_sleep.c')
-rw-r--r--zephyr/subsys/ap_pwrseq/power_host_sleep.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/zephyr/subsys/ap_pwrseq/power_host_sleep.c b/zephyr/subsys/ap_pwrseq/power_host_sleep.c
index 96335b066b..82e84a02fd 100644
--- a/zephyr/subsys/ap_pwrseq/power_host_sleep.c
+++ b/zephyr/subsys/ap_pwrseq/power_host_sleep.c
@@ -192,6 +192,10 @@ enum ap_power_sleep_type ap_power_sleep_get_notify(void)
return sleep_state;
}
+#ifdef CONFIG_AP_PWRSEQ_S0IX_COUNTER
+atomic_t s0ix_counter;
+#endif
+
void ap_power_sleep_notify_transition(enum ap_power_sleep_type check_state)
{
if (sleep_state != check_state)
@@ -204,6 +208,9 @@ void ap_power_sleep_notify_transition(enum ap_power_sleep_type check_state)
*/
power_s0ix_suspend_clear_masks();
ap_power_ev_send_callbacks(AP_POWER_SUSPEND);
+#ifdef CONFIG_AP_PWRSEQ_S0IX_COUNTER
+ atomic_inc(&s0ix_counter);
+#endif
} else if (check_state == AP_POWER_SLEEP_RESUME) {
ap_power_ev_send_callbacks(AP_POWER_RESUME);
/*
@@ -251,7 +258,6 @@ void ap_power_chipset_handle_host_sleep_event(
ap_power_sleep_set_notify(AP_POWER_SLEEP_SUSPEND);
ap_power_ev_send_callbacks(AP_POWER_S0IX_SUSPEND_START);
power_signal_enable(PWR_SLP_S0);
-
} else if (state == HOST_SLEEP_EVENT_S0IX_RESUME) {
/*
* Set sleep state to resume; restore SCI/SMI masks;