Merge branch 'feature/add_asrc_sleep_retention_v6.1' into 'release/v6.1'

feat(asrc): Add sleep retention

See merge request espressif/esp-idf!51807
This commit is contained in:
morris
2026-08-28 10:10:37 +08:00
15 changed files with 263 additions and 10 deletions
@@ -34,7 +34,7 @@
#define DR_REG_MEM_MONITOR_BASE 0x60025000
#define DR_REG_PVT_BASE 0x60026000
#define DR_REG_PCNT_BASE 0x60027000
#define DR_REG_SAMPLE_RATE_CONVERTER_BASE 0x60028000
#define DR_REG_ASRC_BASE 0x60028000
#define DR_REG_ZERO_DET_BASE 0x60029000
#define DR_REG_USB_OTG_FS_CORE0_BASE 0x60040000
#define DR_REG_USB_OTG_FS_CORE1_BASE 0x6007F000
@@ -50,18 +50,19 @@ typedef enum periph_retention_module {
SLEEP_RETENTION_MODULE_MCPWM0 = 26,
SLEEP_RETENTION_MODULE_MCPWM1 = 27,
SLEEP_RETENTION_MODULE_SDM0 = 28,
SLEEP_RETENTION_MODULE_ASRC = 29,
/* Modem module, which includes BLE and 802.15.4 */
SLEEP_RETENTION_MODULE_CLOCK_MODEM = 29,
SLEEP_RETENTION_MODULE_BLE_MAC = 30,
SLEEP_RETENTION_MODULE_BT_BB = 31,
SLEEP_RETENTION_MODULE_802154_MAC = 32,
SLEEP_RETENTION_MODULE_POWER = 33,
SLEEP_RETENTION_MODULE_CLOCK_MODEM = 30,
SLEEP_RETENTION_MODULE_BLE_MAC = 31,
SLEEP_RETENTION_MODULE_BT_BB = 32,
SLEEP_RETENTION_MODULE_802154_MAC = 33,
SLEEP_RETENTION_MODULE_POWER = 34,
SLEEP_RETENTION_MODULE_MAX = SOC_PM_RETENTION_MODULE_NUM - 1
} periph_retention_module_t;
#define is_top_domain_module(m) ((m) <= SLEEP_RETENTION_MODULE_SDM0)
#define is_top_domain_module(m) ((m) <= SLEEP_RETENTION_MODULE_ASRC)
#ifdef __cplusplus
}
@@ -79,6 +79,8 @@ typedef enum periph_retention_module {
SLEEP_RETENTION_MODULE_CLOCK_MODEM = 51,
SLEEP_RETENTION_MODULE_MODEM_PHY = 52,
SLEEP_RETENTION_MODULE_ASRC = 53,
SLEEP_RETENTION_MODULE_MAX = SOC_PM_RETENTION_MODULE_NUM - 1
} periph_retention_module_t;
+2
View File
@@ -70,6 +70,7 @@ extern "C" {
#define REGDMA_H264_LINK(_pri) ((0x2A << 8) | _pri)
#define REGDMA_PPA_LINK(_pri) ((0x2B << 8) | _pri)
#define REGDMA_DMA2D_LINK(_pri) ((0x2C << 8) | _pri)
#define REGDMA_ASRC_LINK(_pri) ((0x2D << 8) | _pri)
#define REGDMA_POWER_LINK(_pri) ((0xFD << 8) | _pri)
#define REGDMA_CLOCK_ICG_LINK(_pri) ((0xFE << 8) | _pri)
@@ -108,6 +109,7 @@ extern "C" {
#define REGDMA_LINK_PRI_H264 REGDMA_LINK_PRI_GENERAL_PERIPH
#define REGDMA_LINK_PRI_PPA REGDMA_LINK_PRI_GENERAL_PERIPH
#define REGDMA_LINK_PRI_DMA2D REGDMA_LINK_PRI_GENERAL_PERIPH
#define REGDMA_LINK_PRI_ASRC REGDMA_LINK_PRI_GENERAL_PERIPH
typedef enum {
REGDMA_LINK_PRI_0 = 0,