Select one of the symbols to view example projects that use it.
 
Outline
#include <stdint.h>
#include <stdbool.h>
#include "sdkconfig.h"
#include "esp_err.h"
#include "esp_sleep.h"
#include "soc/soc_caps.h"
Files
loading...
SourceVuESP-IDF Framework and ExamplesESP-IDFcomponents/esp_hw_support/include/esp_private/sleep_cpu.h
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
/* * SPDX-FileCopyrightText: 2022-2024 Espressif Systems (Shanghai) CO LTD * * SPDX-License-Identifier: Apache-2.0 *//* ... */ #pragma once #include <stdint.h> #include <stdbool.h> #include "sdkconfig.h" #include "esp_err.h" #include "esp_sleep.h" #include "soc/soc_caps.h"6 includes #ifdef __cplusplus extern "C" { #endif /** * @file sleep_cpu.h * * This file contains declarations of cpu retention related functions in light sleep mode. *//* ... */ #if ESP_SLEEP_POWER_DOWN_CPU || SOC_PM_SUPPORT_CPU_PD /** * @brief Whether to allow the cpu power domain to be powered off. * * In light sleep mode, only when the system can provide enough memory * for cpu retention, the cpu power domain can be powered off. *//* ... */ bool cpu_domain_pd_allowed(void);/* ... */ #endif #if ESP_SLEEP_POWER_DOWN_CPU /** * @brief Configure the parameters of the CPU domain during the sleep process * * @param light_sleep_enable true for enable light sleep mode, false for disable light sleep mode * * @return * - ESP_OK on success *//* ... */ esp_err_t sleep_cpu_configure(bool light_sleep_enable); #if SOC_PM_CPU_RETENTION_BY_RTCCNTL /** * @brief Enable cpu retention of some modules. * * In light sleep mode, before the system goes to sleep, enable the cpu * retention of modules such as CPU and I/D-cache tag memory. *//* ... */ void sleep_enable_cpu_retention(void); /** * @brief Disable cpu retention of some modules. * * In light sleep mode, after the system exits sleep, disable the cpu * retention of modules such as CPU and I/D-cache tag memory. *//* ... */ void sleep_disable_cpu_retention(void);/* ... */ #endif // SOC_PM_CPU_RETENTION_BY_RTCCNTL #if SOC_PM_CPU_RETENTION_BY_SW esp_err_t esp_sleep_cpu_retention(uint32_t (*goto_sleep)(uint32_t, uint32_t, uint32_t, bool), uint32_t wakeup_opt, uint32_t reject_opt, uint32_t lslp_mem_inf_fpu, bool dslp);/* ... */ #endif // SOC_PM_CPU_RETENTION_BY_SW/* ... */ #endif // ESP_SLEEP_POWER_DOWN_CPU #if !CONFIG_FREERTOS_UNICORE && ESP_SLEEP_POWER_DOWN_CPU /** * Do sleep prepare for other smp cores *//* ... */ void sleep_smp_cpu_sleep_prepare(void); /** * Do wakeup prepare for other smp cores *//* ... */ void sleep_smp_cpu_wakeup_prepare(void); /** * Notify the other core that this sleep does not require retention. *//* ... */ void esp_sleep_cpu_skip_retention(void);/* ... */ #endif // !CONFIG_FREERTOS_UNICORE && ESP_SLEEP_POWER_DOWN_CPU #ifdef __cplusplus }{...} #endif
Details
Show:
from
Types: Columns:
This file uses the notable symbols shown below. Click anywhere in the file to view more details.