61 .flash_waitstates = 1,
62 .ahb_frequency = 24000000,
63 .apb1_frequency = 24000000,
64 .apb2_frequency = 24000000,
74 .flash_waitstates = 1,
75 .ahb_frequency = 32000000,
76 .apb1_frequency = 32000000,
77 .apb2_frequency = 32000000,
84 .flash_waitstates = 0,
85 .ahb_frequency = 16000000,
86 .apb1_frequency = 16000000,
87 .apb2_frequency = 16000000,
94 .flash_waitstates = 0,
95 .ahb_frequency = 4000000,
96 .apb1_frequency = 4000000,
97 .apb2_frequency = 4000000,
104 .flash_waitstates = 0,
105 .ahb_frequency = 4194000,
106 .apb1_frequency = 4194000,
107 .apb2_frequency = 4194000,
115 .flash_waitstates = 0,
116 .ahb_frequency = 2097000,
117 .apb1_frequency = 2097000,
118 .apb2_frequency = 2097000,
369 reg32 |= (source << 16);
381 RCC_CFGR = (reg32 | (pllsrc << 16));
void flash_64bit_enable(void)
Enable 64 Bit Programming Mode.
void flash_prefetch_enable(void)
This buffer is used for instruction fetches and may or may not be enabled by default,...
void flash_set_ws(uint32_t ws)
Set the Number of Wait States.
#define PWR_CSR
Power control/status register (PWR_CSR)
void pwr_set_vos_scale(enum pwr_vos_scale scale)
#define RCC_CFGR_HPRE_NODIV
#define RCC_CFGR_HPRE_DIV4
#define RCC_CFGR_PPRE_NODIV
#define RCC_CFGR_PPRE2_HCLK_NODIV
#define RCC_CFGR_PPRE1_HCLK_NODIV
#define RCC_CFGR_PLLSRC_HSI_CLK
#define RCC_CR_RTCPRE_MASK
#define RCC_CFGR_SW_SYSCLKSEL_HSICLK
#define RCC_CFGR_PLLMUL_MUL3
#define RCC_CFGR_PPRE1_MASK
#define RCC_CFGR_PPRE2_SHIFT
#define RCC_CFGR_SWS_SYSCLKSEL_HSICLK
#define RCC_CFGR_PLLSRC_HSE_CLK
#define RCC_CFGR_PLLMUL_MUL6
#define RCC_CFGR_SWS_SYSCLKSEL_HSECLK
#define RCC_CSR_RTCSEL_SHIFT
#define RCC_CFGR_PPRE2_MASK
#define RCC_CFGR_PLLDIV_MASK
#define RCC_CFGR_HPRE_MASK
#define RCC_CFGR_SWS_MASK
#define RCC_CFGR_SW_SYSCLKSEL_MSICLK
#define RCC_CFGR_PLLDIV_SHIFT
#define RCC_CFGR_SW_SYSCLKSEL_PLLCLK
void rcc_periph_clock_enable(enum rcc_periph_clken clken)
Enable Peripheral Clock in running mode.
#define RCC_CSR_RTCSEL_MASK
#define RCC_CR_RTCPRE_SHIFT
#define RCC_CFGR_PLLDIV_DIV2
#define RCC_CFGR_SWS_SHIFT
#define RCC_CFGR_PLLMUL_SHIFT
#define RCC_CFGR_SWS_SYSCLKSEL_MSICLK
#define RCC_CFGR_HPRE_SHIFT
#define RCC_CFGR_SW_SHIFT
#define RCC_CFGR_PLLMUL_MASK
#define RCC_CFGR_PLLDIV_DIV3
#define RCC_CFGR_SWS_SYSCLKSEL_PLLCLK
#define RCC_CFGR_PPRE1_SHIFT
int rcc_osc_ready_int_flag(enum rcc_osc osc)
int rcc_css_int_flag(void)
void rcc_osc_ready_int_clear(enum rcc_osc osc)
void rcc_wait_for_osc_ready(enum rcc_osc osc)
Wait for Oscillator Ready.
void rcc_clock_setup_msi(const struct rcc_clock_scale *clock)
void rcc_css_disable(void)
bool rcc_is_osc_ready(enum rcc_osc osc)
Is the given oscillator ready?
uint32_t rcc_get_spi_clk_freq(uint32_t spi)
Get the peripheral clock speed for the SPI device at base specified.
void rcc_set_sysclk_source(uint32_t clk)
uint32_t rcc_apb2_frequency
void rcc_set_pll_source(uint32_t pllsrc)
void rcc_rtc_select_clock(uint32_t clock)
uint32_t rcc_get_timer_clk_freq(uint32_t timer)
Get the peripheral clock speed for the Timer at base specified.
uint32_t rcc_system_clock_source(void)
uint32_t rcc_get_usart_clk_freq(uint32_t usart)
Get the peripheral clock speed for the USART at base specified.
void rcc_clock_setup_pll(const struct rcc_clock_scale *clock)
void rcc_set_msi_range(uint32_t range)
Set the range of the MSI oscillator.
void rcc_set_rtcpre(uint32_t rtcpre)
void rcc_osc_ready_int_enable(enum rcc_osc osc)
void rcc_osc_ready_int_disable(enum rcc_osc osc)
void rcc_osc_on(enum rcc_osc osc)
uint32_t rcc_ahb_frequency
void rcc_osc_off(enum rcc_osc osc)
void rcc_set_pll_configuration(uint32_t source, uint32_t multiplier, uint32_t divisor)
uint32_t rcc_get_i2c_clk_freq(uint32_t i2c)
Get the peripheral clock speed for the I2C device at base specified.
const struct rcc_clock_scale rcc_clock_config[RCC_CLOCK_CONFIG_END]
uint32_t rcc_apb1_frequency
void rcc_wait_for_sysclk_status(enum rcc_osc osc)
void rcc_set_ppre1(uint32_t ppre1)
void rcc_css_int_clear(void)
void rcc_set_ppre2(uint32_t ppre2)
void rcc_css_enable(void)
void rcc_set_hpre(uint32_t hpre)
void rcc_clock_setup_hsi(const struct rcc_clock_scale *clock)
Switch sysclock to HSI with the given parameters.
#define RCC_ICSCR_MSIRANGE_SHIFT
#define RCC_ICSCR_MSIRANGE_MASK
#define RCC_ICSCR_MSIRANGE_4MHZ
#define RCC_ICSCR_MSIRANGE_2MHZ
@ PWR_SCALE1
high performance, highest voltage
enum pwr_vos_scale voltage_scale