mirror of
https://github.com/espressif/esp-idf.git
synced 2025-08-02 12:14:32 +02:00
feat(esp_hw_support): add core1 enter deepsleep test case
This commit is contained in:
@@ -6,6 +6,7 @@
|
|||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
#include <unistd.h>
|
||||||
#include "esp_sleep.h"
|
#include "esp_sleep.h"
|
||||||
#include "unity.h"
|
#include "unity.h"
|
||||||
#include "unity_test_utils.h"
|
#include "unity_test_utils.h"
|
||||||
@@ -38,6 +39,30 @@ TEST_CASE("Can use 8MD256 as RTC clock source in deepsleep", "[pm]")
|
|||||||
test_deepsleep(false);
|
test_deepsleep(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void check_reset_reason_deep_sleep(void)
|
||||||
|
{
|
||||||
|
TEST_ASSERT_EQUAL(ESP_RST_DEEPSLEEP, esp_reset_reason());
|
||||||
|
}
|
||||||
|
|
||||||
|
static void enter_deepsleep_by_core1(void *args)
|
||||||
|
{
|
||||||
|
do {
|
||||||
|
test_deepsleep(false);
|
||||||
|
} while (1);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void request_core1_do_deepsleep(void)
|
||||||
|
{
|
||||||
|
fflush(stdout);
|
||||||
|
fsync(fileno(stdout));
|
||||||
|
xTaskCreatePinnedToCore(enter_deepsleep_by_core1, "deep_sleep_task", 4096, NULL, 6, NULL, 1);
|
||||||
|
while(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST_CASE_MULTIPLE_STAGES("Can use 8MD256 as RTC clock source in deepsleep (enter sleep by core1)", "[pm]",
|
||||||
|
request_core1_do_deepsleep,
|
||||||
|
check_reset_reason_deep_sleep);
|
||||||
|
|
||||||
static void test_lightsleep(bool force_rtc_periph)
|
static void test_lightsleep(bool force_rtc_periph)
|
||||||
{
|
{
|
||||||
esp_sleep_enable_timer_wakeup(2000000);
|
esp_sleep_enable_timer_wakeup(2000000);
|
||||||
|
@@ -18,9 +18,7 @@
|
|||||||
#include "nvs.h"
|
#include "nvs.h"
|
||||||
#include "deep_sleep_example.h"
|
#include "deep_sleep_example.h"
|
||||||
|
|
||||||
#if SOC_RTC_FAST_MEM_SUPPORTED
|
|
||||||
RTC_SLOW_ATTR static struct timeval sleep_enter_time;
|
RTC_SLOW_ATTR static struct timeval sleep_enter_time;
|
||||||
#endif
|
|
||||||
|
|
||||||
static void deep_sleep_task(void *args)
|
static void deep_sleep_task(void *args)
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user