5 #include "dt/dt_aon_timer.h"
10 #include "sw/device/lib/testing/pwrmgr_testutils.h"
11 #include "sw/device/lib/testing/rstmgr_testutils.h"
12 #include "sw/device/lib/testing/test_framework/check.h"
15 static const dt_rstmgr_t kRstmgrDt = 0;
16 static_assert(kDtRstmgrCount == 1,
"this test expects a rstmgr");
17 static const dt_pwrmgr_t kPwrmgrDt = 0;
18 static_assert(kDtPwrmgrCount == 1,
"this test expects a pwrmgr");
19 static const dt_aon_timer_t kAonTimerDt = 0;
20 static_assert(kDtAonTimerCount == 1,
"this test expects an aon_timer");
22 OTTF_DEFINE_TEST_CONFIG();
35 CHECK_DIF_OK(dif_pwrmgr_init_from_dt(kPwrmgrDt, &pwrmgr));
38 CHECK_DIF_OK(dif_rstmgr_init_from_dt(kRstmgrDt, &rstmgr));
44 LOG_INFO(
"Powered up for the first time, begin test");
46 CHECK(UNWRAP(pwrmgr_testutils_is_wakeup_reason(&pwrmgr, 0)) ==
true);
48 CHECK_STATUS_OK(rstmgr_testutils_pre_reset(&rstmgr));
54 kDtAonTimerWakeupWkupReq, &wakeup_sources));
57 pwrmgr_testutils_enable_low_power(&pwrmgr, wakeup_sources, 0));
61 LOG_INFO(
"Issue WFI to enter sleep");
65 CHECK_STATUS_OK(rstmgr_testutils_post_reset(
69 LOG_INFO(
"Reset status indicates a power glitch and a deep sleep wakeup");