mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
add PM related soc caps about power down rtc slow/fast mem
Supporting rtc slow/fast mem does not mean supporting rtc slow/fast mem power down.
This commit is contained in:
parent
ae127b04cd
commit
93a5087e58
@ -40,10 +40,10 @@ typedef enum {
|
|||||||
#if SOC_PM_SUPPORT_RTC_PERIPH_PD
|
#if SOC_PM_SUPPORT_RTC_PERIPH_PD
|
||||||
ESP_PD_DOMAIN_RTC_PERIPH, //!< RTC IO, sensors and ULP co-processor
|
ESP_PD_DOMAIN_RTC_PERIPH, //!< RTC IO, sensors and ULP co-processor
|
||||||
#endif
|
#endif
|
||||||
#if SOC_RTC_SLOW_MEM_SUPPORTED
|
#if SOC_PM_SUPPORT_RTC_SLOW_MEM_PD
|
||||||
ESP_PD_DOMAIN_RTC_SLOW_MEM, //!< RTC slow memory
|
ESP_PD_DOMAIN_RTC_SLOW_MEM, //!< RTC slow memory
|
||||||
#endif
|
#endif
|
||||||
#if SOC_RTC_FAST_MEM_SUPPORTED
|
#if SOC_PM_SUPPORT_RTC_FAST_MEM_PD
|
||||||
ESP_PD_DOMAIN_RTC_FAST_MEM, //!< RTC fast memory
|
ESP_PD_DOMAIN_RTC_FAST_MEM, //!< RTC fast memory
|
||||||
#endif
|
#endif
|
||||||
ESP_PD_DOMAIN_XTAL, //!< XTAL oscillator
|
ESP_PD_DOMAIN_XTAL, //!< XTAL oscillator
|
||||||
|
@ -156,10 +156,10 @@ static sleep_config_t s_config = {
|
|||||||
#if SOC_PM_SUPPORT_RTC_PERIPH_PD
|
#if SOC_PM_SUPPORT_RTC_PERIPH_PD
|
||||||
ESP_PD_OPTION_AUTO,
|
ESP_PD_OPTION_AUTO,
|
||||||
#endif
|
#endif
|
||||||
#if SOC_RTC_SLOW_MEM_SUPPORTED
|
#if SOC_PM_SUPPORT_RTC_SLOW_MEM_PD
|
||||||
ESP_PD_OPTION_AUTO,
|
ESP_PD_OPTION_AUTO,
|
||||||
#endif
|
#endif
|
||||||
#if SOC_RTC_FAST_MEM_SUPPORTED
|
#if SOC_PM_SUPPORT_RTC_FAST_MEM_PD
|
||||||
ESP_PD_OPTION_AUTO,
|
ESP_PD_OPTION_AUTO,
|
||||||
#endif
|
#endif
|
||||||
ESP_PD_OPTION_AUTO,
|
ESP_PD_OPTION_AUTO,
|
||||||
@ -1247,7 +1247,7 @@ static uint32_t get_power_down_flags(void)
|
|||||||
// If there is any data placed into .rtc.data or .rtc.bss segments, and
|
// If there is any data placed into .rtc.data or .rtc.bss segments, and
|
||||||
// RTC_SLOW_MEM is Auto, keep it powered up as well.
|
// RTC_SLOW_MEM is Auto, keep it powered up as well.
|
||||||
|
|
||||||
#if SOC_RTC_SLOW_MEM_SUPPORTED && SOC_ULP_SUPPORTED
|
#if SOC_PM_SUPPORT_RTC_SLOW_MEM_PD && SOC_ULP_SUPPORTED
|
||||||
// Labels are defined in the linker script
|
// Labels are defined in the linker script
|
||||||
extern int _rtc_slow_length;
|
extern int _rtc_slow_length;
|
||||||
/**
|
/**
|
||||||
@ -1262,7 +1262,7 @@ static uint32_t get_power_down_flags(void)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if SOC_RTC_FAST_MEM_SUPPORTED
|
#if SOC_PM_SUPPORT_RTC_FAST_MEM_PD
|
||||||
#if !CONFIG_ESP_SYSTEM_ALLOW_RTC_FAST_MEM_AS_HEAP
|
#if !CONFIG_ESP_SYSTEM_ALLOW_RTC_FAST_MEM_AS_HEAP
|
||||||
/* RTC_FAST_MEM is needed for deep sleep stub.
|
/* RTC_FAST_MEM is needed for deep sleep stub.
|
||||||
If RTC_FAST_MEM is Auto, keep it powered on, so that deep sleep stub can run.
|
If RTC_FAST_MEM is Auto, keep it powered on, so that deep sleep stub can run.
|
||||||
@ -1318,21 +1318,21 @@ static uint32_t get_power_down_flags(void)
|
|||||||
#if SOC_PM_SUPPORT_RTC_PERIPH_PD
|
#if SOC_PM_SUPPORT_RTC_PERIPH_PD
|
||||||
ESP_EARLY_LOGD(TAG, "RTC_PERIPH: %s", option_str[s_config.pd_options[ESP_PD_DOMAIN_RTC_PERIPH]]);
|
ESP_EARLY_LOGD(TAG, "RTC_PERIPH: %s", option_str[s_config.pd_options[ESP_PD_DOMAIN_RTC_PERIPH]]);
|
||||||
#endif
|
#endif
|
||||||
#if SOC_RTC_SLOW_MEM_SUPPORTED
|
#if SOC_PM_SUPPORT_RTC_SLOW_MEM_PD
|
||||||
ESP_EARLY_LOGD(TAG, "RTC_SLOW_MEM: %s", option_str[s_config.pd_options[ESP_PD_DOMAIN_RTC_SLOW_MEM]]);
|
ESP_EARLY_LOGD(TAG, "RTC_SLOW_MEM: %s", option_str[s_config.pd_options[ESP_PD_DOMAIN_RTC_SLOW_MEM]]);
|
||||||
#endif
|
#endif
|
||||||
#if SOC_RTC_FAST_MEM_SUPPORTED
|
#if SOC_PM_SUPPORT_RTC_FAST_MEM_PD
|
||||||
ESP_EARLY_LOGD(TAG, "RTC_FAST_MEM: %s", option_str[s_config.pd_options[ESP_PD_DOMAIN_RTC_FAST_MEM]]);
|
ESP_EARLY_LOGD(TAG, "RTC_FAST_MEM: %s", option_str[s_config.pd_options[ESP_PD_DOMAIN_RTC_FAST_MEM]]);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Prepare flags based on the selected options
|
// Prepare flags based on the selected options
|
||||||
uint32_t pd_flags = 0;
|
uint32_t pd_flags = 0;
|
||||||
#if SOC_RTC_FAST_MEM_SUPPORTED
|
#if SOC_PM_SUPPORT_RTC_FAST_MEM_PD
|
||||||
if (s_config.pd_options[ESP_PD_DOMAIN_RTC_FAST_MEM] != ESP_PD_OPTION_ON) {
|
if (s_config.pd_options[ESP_PD_DOMAIN_RTC_FAST_MEM] != ESP_PD_OPTION_ON) {
|
||||||
pd_flags |= RTC_SLEEP_PD_RTC_FAST_MEM;
|
pd_flags |= RTC_SLEEP_PD_RTC_FAST_MEM;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#if SOC_RTC_SLOW_MEM_SUPPORTED
|
#if SOC_PM_SUPPORT_RTC_SLOW_MEM_PD
|
||||||
if (s_config.pd_options[ESP_PD_DOMAIN_RTC_SLOW_MEM] != ESP_PD_OPTION_ON) {
|
if (s_config.pd_options[ESP_PD_DOMAIN_RTC_SLOW_MEM] != ESP_PD_OPTION_ON) {
|
||||||
pd_flags |= RTC_SLEEP_PD_RTC_SLOW_MEM;
|
pd_flags |= RTC_SLEEP_PD_RTC_SLOW_MEM;
|
||||||
}
|
}
|
||||||
|
@ -647,6 +647,14 @@ config SOC_PM_SUPPORT_RTC_PERIPH_PD
|
|||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
|
||||||
|
config SOC_PM_SUPPORT_RTC_FAST_MEM_PD
|
||||||
|
bool
|
||||||
|
default y
|
||||||
|
|
||||||
|
config SOC_PM_SUPPORT_RTC_SLOW_MEM_PD
|
||||||
|
bool
|
||||||
|
default y
|
||||||
|
|
||||||
config SOC_SDMMC_USE_IOMUX
|
config SOC_SDMMC_USE_IOMUX
|
||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
@ -349,9 +349,11 @@
|
|||||||
#define SOC_PHY_DIG_REGS_MEM_SIZE (21*4)
|
#define SOC_PHY_DIG_REGS_MEM_SIZE (21*4)
|
||||||
|
|
||||||
/*-------------------------- Power Management CAPS ---------------------------*/
|
/*-------------------------- Power Management CAPS ---------------------------*/
|
||||||
#define SOC_PM_SUPPORT_EXT_WAKEUP (1)
|
#define SOC_PM_SUPPORT_EXT_WAKEUP (1)
|
||||||
#define SOC_PM_SUPPORT_TOUCH_SENSOR_WAKEUP (1) /*!<Supports waking up from touch pad trigger */
|
#define SOC_PM_SUPPORT_TOUCH_SENSOR_WAKEUP (1) /*!<Supports waking up from touch pad trigger */
|
||||||
#define SOC_PM_SUPPORT_RTC_PERIPH_PD (1)
|
#define SOC_PM_SUPPORT_RTC_PERIPH_PD (1)
|
||||||
|
#define SOC_PM_SUPPORT_RTC_FAST_MEM_PD (1)
|
||||||
|
#define SOC_PM_SUPPORT_RTC_SLOW_MEM_PD (1)
|
||||||
|
|
||||||
/* ---------------------------- Compatibility ------------------------------- */
|
/* ---------------------------- Compatibility ------------------------------- */
|
||||||
#define SOC_CAN_SUPPORTED SOC_TWAI_SUPPORTED
|
#define SOC_CAN_SUPPORTED SOC_TWAI_SUPPORTED
|
||||||
|
@ -375,10 +375,6 @@ config SOC_SPI_MEM_SUPPORT_CHECK_SUS
|
|||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
|
||||||
config SOC_SPI_MEM_SUPPORT_CONFIG_GPIO_BY_EFUSE
|
|
||||||
bool
|
|
||||||
default n
|
|
||||||
|
|
||||||
config SOC_MEMSPI_SRC_FREQ_60M_SUPPORTED
|
config SOC_MEMSPI_SRC_FREQ_60M_SUPPORTED
|
||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
@ -203,7 +203,6 @@
|
|||||||
#define SOC_SPI_MEM_SUPPORT_IDLE_INTR (1)
|
#define SOC_SPI_MEM_SUPPORT_IDLE_INTR (1)
|
||||||
#define SOC_SPI_MEM_SUPPORT_SW_SUSPEND (1)
|
#define SOC_SPI_MEM_SUPPORT_SW_SUSPEND (1)
|
||||||
#define SOC_SPI_MEM_SUPPORT_CHECK_SUS (1)
|
#define SOC_SPI_MEM_SUPPORT_CHECK_SUS (1)
|
||||||
#define SOC_SPI_MEM_SUPPORT_CONFIG_GPIO_BY_EFUSE (0)
|
|
||||||
|
|
||||||
#define SOC_MEMSPI_SRC_FREQ_60M_SUPPORTED 1
|
#define SOC_MEMSPI_SRC_FREQ_60M_SUPPORTED 1
|
||||||
#define SOC_MEMSPI_SRC_FREQ_30M_SUPPORTED 1
|
#define SOC_MEMSPI_SRC_FREQ_30M_SUPPORTED 1
|
||||||
|
@ -831,6 +831,14 @@ config SOC_PM_SUPPORT_TOUCH_SENSOR_WAKEUP
|
|||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
|
||||||
|
config SOC_PM_SUPPORT_RTC_FAST_MEM_PD
|
||||||
|
bool
|
||||||
|
default y
|
||||||
|
|
||||||
|
config SOC_PM_SUPPORT_RTC_SLOW_MEM_PD
|
||||||
|
bool
|
||||||
|
default y
|
||||||
|
|
||||||
config SOC_COEX_HW_PTI
|
config SOC_COEX_HW_PTI
|
||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
@ -375,15 +375,13 @@
|
|||||||
#define SOC_SPI_MEM_SUPPORT_CONFIG_GPIO_BY_EFUSE (1)
|
#define SOC_SPI_MEM_SUPPORT_CONFIG_GPIO_BY_EFUSE (1)
|
||||||
|
|
||||||
/*-------------------------- Power Management CAPS ---------------------------*/
|
/*-------------------------- Power Management CAPS ---------------------------*/
|
||||||
#define SOC_PM_SUPPORT_EXT_WAKEUP (1)
|
#define SOC_PM_SUPPORT_EXT_WAKEUP (1)
|
||||||
|
#define SOC_PM_SUPPORT_WIFI_WAKEUP (1)
|
||||||
#define SOC_PM_SUPPORT_WIFI_WAKEUP (1)
|
#define SOC_PM_SUPPORT_WIFI_PD (1)
|
||||||
|
#define SOC_PM_SUPPORT_RTC_PERIPH_PD (1)
|
||||||
#define SOC_PM_SUPPORT_WIFI_PD (1)
|
|
||||||
|
|
||||||
#define SOC_PM_SUPPORT_RTC_PERIPH_PD (1)
|
|
||||||
|
|
||||||
#define SOC_PM_SUPPORT_TOUCH_SENSOR_WAKEUP (1) /*!<Supports waking up from touch pad trigger */
|
#define SOC_PM_SUPPORT_TOUCH_SENSOR_WAKEUP (1) /*!<Supports waking up from touch pad trigger */
|
||||||
|
#define SOC_PM_SUPPORT_RTC_FAST_MEM_PD (1)
|
||||||
|
#define SOC_PM_SUPPORT_RTC_SLOW_MEM_PD (1)
|
||||||
|
|
||||||
/*-------------------------- COEXISTENCE HARDWARE PTI CAPS -------------------------------*/
|
/*-------------------------- COEXISTENCE HARDWARE PTI CAPS -------------------------------*/
|
||||||
#define SOC_COEX_HW_PTI (1)
|
#define SOC_COEX_HW_PTI (1)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user