mirror of
https://github.com/espressif/esp-idf.git
synced 2026-10-02 11:10:54 +03:00
refactor(ledc): move sleep retention config into driver layer
Move per-target LEDC regdma retention descriptors out of esp_hal_ledc and into esp_driver_ledc so the driver owns its backup scope and restore flow.
This commit is contained in:
@@ -12,10 +12,6 @@
|
||||
#include "hal/ledc_ll.h"
|
||||
#include "hal/ledc_types.h"
|
||||
#endif
|
||||
#if SOC_PAU_SUPPORTED
|
||||
#include "soc/regdma.h"
|
||||
#include "soc/retention_periph_defs.h"
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -34,33 +30,6 @@ typedef struct {
|
||||
|
||||
extern const ledc_signal_conn_t ledc_periph_signal[LEDC_LL_GET(GROUP_NUM)];
|
||||
|
||||
#if SOC_PAU_SUPPORTED && SOC_LEDC_SUPPORT_SLEEP_RETENTION
|
||||
|
||||
#if SOC_LIGHT_SLEEP_SUPPORTED
|
||||
#if SOC_PHY_SUPPORTED
|
||||
#define LEDC_RETENTION_ENTRY (ENTRY(0) | ENTRY(2))
|
||||
#else
|
||||
#define LEDC_RETENTION_ENTRY (ENTRY(0))
|
||||
#endif
|
||||
#else // !SOC_LIGHT_SLEEP_SUPPORTED
|
||||
#define LEDC_RETENTION_ENTRY REGDMA_SW_TRIGGER_ENTRY
|
||||
#endif
|
||||
|
||||
typedef struct {
|
||||
const regdma_entries_config_t *regdma_entry_array;
|
||||
uint32_t array_size;
|
||||
} ledc_sub_reg_retention_info_t;
|
||||
|
||||
typedef struct {
|
||||
ledc_sub_reg_retention_info_t common;
|
||||
ledc_sub_reg_retention_info_t timer[SOC_LEDC_TIMER_NUM];
|
||||
ledc_sub_reg_retention_info_t channel[SOC_LEDC_CHANNEL_NUM];
|
||||
const periph_retention_module_t module_id;
|
||||
} ledc_reg_retention_info_t;
|
||||
|
||||
extern const ledc_reg_retention_info_t ledc_reg_retention_info[LEDC_LL_GET(GROUP_NUM)];
|
||||
#endif // SOC_PAU_SUPPORTED && SOC_LEDC_SUPPORT_SLEEP_RETENTION
|
||||
|
||||
#endif // SOC_LEDC_SUPPORTED
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
Reference in New Issue
Block a user