forked from espressif/esp-idf
codeclean: turn on the regdma clock only once
This commit is contained in:
@@ -9,10 +9,11 @@
|
|||||||
#include <esp_types.h>
|
#include <esp_types.h>
|
||||||
#include "sdkconfig.h"
|
#include "sdkconfig.h"
|
||||||
#include "esp_attr.h"
|
#include "esp_attr.h"
|
||||||
#include "soc/soc.h"
|
|
||||||
#include "esp_private/esp_pau.h"
|
|
||||||
#include "esp_log.h"
|
#include "esp_log.h"
|
||||||
|
#include "soc/soc.h"
|
||||||
#include "soc/pcr_reg.h"
|
#include "soc/pcr_reg.h"
|
||||||
|
#include "esp_private/esp_pau.h"
|
||||||
|
#include "esp_private/periph_ctrl.h"
|
||||||
|
|
||||||
static __attribute__((unused)) const char *TAG = "pau_regdma";
|
static __attribute__((unused)) const char *TAG = "pau_regdma";
|
||||||
|
|
||||||
@@ -22,9 +23,14 @@ typedef struct {
|
|||||||
|
|
||||||
pau_context_t * __attribute__((weak)) PAU_instance(void)
|
pau_context_t * __attribute__((weak)) PAU_instance(void)
|
||||||
{
|
{
|
||||||
static pau_hal_context_t pau_hal = { .dev = &PAU };
|
static pau_hal_context_t pau_hal = { .dev = NULL };
|
||||||
static pau_context_t pau_context = { .hal = &pau_hal };
|
static pau_context_t pau_context = { .hal = &pau_hal };
|
||||||
*(volatile uint32_t *)PCR_REGDMA_CONF_REG |= PCR_REGDMA_CLK_EN;
|
|
||||||
|
if (pau_hal.dev == NULL) {
|
||||||
|
pau_hal.dev = &PAU;
|
||||||
|
periph_module_enable(PERIPH_REGDMA_MODULE);
|
||||||
|
}
|
||||||
|
|
||||||
return &pau_context;
|
return &pau_context;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -74,6 +74,8 @@ static inline uint32_t periph_ll_get_clk_en_mask(periph_module_t periph)
|
|||||||
return PCR_TSENS_CLK_EN;
|
return PCR_TSENS_CLK_EN;
|
||||||
case PERIPH_SDIO_SLAVE_MODULE:
|
case PERIPH_SDIO_SLAVE_MODULE:
|
||||||
return PCR_SDIO_SLAVE_CLK_EN;
|
return PCR_SDIO_SLAVE_CLK_EN;
|
||||||
|
case PERIPH_REGDMA_MODULE:
|
||||||
|
return PCR_REGDMA_CLK_EN;
|
||||||
// case PERIPH_RNG_MODULE:
|
// case PERIPH_RNG_MODULE:
|
||||||
// return PCR_WIFI_CLK_RNG_EN;
|
// return PCR_WIFI_CLK_RNG_EN;
|
||||||
// case PERIPH_WIFI_MODULE:
|
// case PERIPH_WIFI_MODULE:
|
||||||
@@ -163,6 +165,8 @@ static inline uint32_t periph_ll_get_rst_en_mask(periph_module_t periph, bool en
|
|||||||
return PCR_DS_RST_EN;
|
return PCR_DS_RST_EN;
|
||||||
case PERIPH_SDIO_SLAVE_MODULE:
|
case PERIPH_SDIO_SLAVE_MODULE:
|
||||||
return PCR_SDIO_SLAVE_RST_EN;
|
return PCR_SDIO_SLAVE_RST_EN;
|
||||||
|
case PERIPH_REGDMA_MODULE:
|
||||||
|
return PCR_REGDMA_RST_EN;
|
||||||
// case PERIPH_RNG_MODULE:
|
// case PERIPH_RNG_MODULE:
|
||||||
// return PCR_WIFI_CLK_RNG_EN;
|
// return PCR_WIFI_CLK_RNG_EN;
|
||||||
// case PERIPH_WIFI_MODULE:
|
// case PERIPH_WIFI_MODULE:
|
||||||
@@ -245,6 +249,8 @@ static uint32_t periph_ll_get_clk_en_reg(periph_module_t periph)
|
|||||||
return PCR_TSENS_CLK_CONF_REG;
|
return PCR_TSENS_CLK_CONF_REG;
|
||||||
case PERIPH_SDIO_SLAVE_MODULE:
|
case PERIPH_SDIO_SLAVE_MODULE:
|
||||||
return PCR_SDIO_SLAVE_CONF_REG;
|
return PCR_SDIO_SLAVE_CONF_REG;
|
||||||
|
case PERIPH_REGDMA_MODULE:
|
||||||
|
return PCR_REGDMA_CONF_REG;
|
||||||
default:
|
default:
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -307,6 +313,8 @@ static uint32_t periph_ll_get_rst_en_reg(periph_module_t periph)
|
|||||||
return PCR_TSENS_CLK_CONF_REG;
|
return PCR_TSENS_CLK_CONF_REG;
|
||||||
case PERIPH_SDIO_SLAVE_MODULE:
|
case PERIPH_SDIO_SLAVE_MODULE:
|
||||||
return PCR_SDIO_SLAVE_CONF_REG;
|
return PCR_SDIO_SLAVE_CONF_REG;
|
||||||
|
case PERIPH_REGDMA_MODULE:
|
||||||
|
return PCR_REGDMA_CONF_REG;
|
||||||
default:
|
default:
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@@ -40,6 +40,7 @@ typedef enum {
|
|||||||
PERIPH_SYSTIMER_MODULE,
|
PERIPH_SYSTIMER_MODULE,
|
||||||
PERIPH_SARADC_MODULE,
|
PERIPH_SARADC_MODULE,
|
||||||
PERIPH_TEMPSENSOR_MODULE,
|
PERIPH_TEMPSENSOR_MODULE,
|
||||||
|
PERIPH_REGDMA_MODULE,
|
||||||
PERIPH_WIFI_MODULE,
|
PERIPH_WIFI_MODULE,
|
||||||
PERIPH_BT_MODULE,
|
PERIPH_BT_MODULE,
|
||||||
PERIPH_IEEE802154_MODULE,
|
PERIPH_IEEE802154_MODULE,
|
||||||
|
Reference in New Issue
Block a user