Merge branch 'bugfix/c3_s3_apb_freq' into 'master'

esp_hw_support: Fix ESP32-C3/S3 APB frequency

See merge request espressif/esp-idf!13296
This commit is contained in:
Angus Gratton
2021-06-09 23:42:09 +00:00

View File

@@ -51,22 +51,23 @@ extern uint32_t g_ticks_per_us_app;
static _lock_t s_esp_rtc_time_lock; static _lock_t s_esp_rtc_time_lock;
static RTC_DATA_ATTR uint64_t s_esp_rtc_time_us = 0, s_rtc_last_ticks = 0; static RTC_DATA_ATTR uint64_t s_esp_rtc_time_us = 0, s_rtc_last_ticks = 0;
int IRAM_ATTR esp_clk_cpu_freq(void) inline static int IRAM_ATTR s_get_cpu_freq_mhz(void)
{ {
#if CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32S3 #if CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32S3
return ets_get_cpu_frequency() * MHZ; return ets_get_cpu_frequency();
#else #else
return g_ticks_per_us_pro * MHZ; return g_ticks_per_us_pro;
#endif #endif
} }
int IRAM_ATTR esp_clk_cpu_freq(void)
{
return s_get_cpu_freq_mhz() * MHZ;
}
int IRAM_ATTR esp_clk_apb_freq(void) int IRAM_ATTR esp_clk_apb_freq(void)
{ {
#if CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32S3 return MIN(s_get_cpu_freq_mhz(), 80) * MHZ;
return MIN(ets_get_cpu_frequency(), 81) * MHZ;
#else
return MIN(g_ticks_per_us_pro, 80) * MHZ;
#endif
} }
int IRAM_ATTR esp_clk_xtal_freq(void) int IRAM_ATTR esp_clk_xtal_freq(void)