From: Ivan Grokhotkov Date: Mon, 21 Aug 2017 14:33:52 +0000 (+0800) Subject: soc/rtc: round APB clock frequency to nearest MHz X-Git-Tag: v3.1-dev~333^2~4 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c743bdac885ba63fc1de3a3995dbc76741fa1da6;p=esp-idf soc/rtc: round APB clock frequency to nearest MHz --- diff --git a/components/soc/esp32/rtc_clk.c b/components/soc/esp32/rtc_clk.c index 7f6d992919..aee0a39ff1 100644 --- a/components/soc/esp32/rtc_clk.c +++ b/components/soc/esp32/rtc_clk.c @@ -500,7 +500,11 @@ void rtc_clk_apb_freq_update(uint32_t apb_freq) uint32_t rtc_clk_apb_freq_get() { - return reg_val_to_clk_val(READ_PERI_REG(RTC_APB_FREQ_REG)) << 12; + uint32_t freq_hz = reg_val_to_clk_val(READ_PERI_REG(RTC_APB_FREQ_REG)) << 12; + // round to the nearest MHz + freq_hz += MHZ / 2; + uint32_t remainder = freq_hz % MHZ; + return freq_hz - remainder; }