3#include <stm32wbxx_ll_rcc.h>
12 FuriHalClockMcoSysclk,
13 FuriHalClockMcoMsi100k,
14 FuriHalClockMcoMsi200k,
15 FuriHalClockMcoMsi400k,
16 FuriHalClockMcoMsi800k,
21 FuriHalClockMcoMsi16m,
22 FuriHalClockMcoMsi24m,
23 FuriHalClockMcoMsi32m,
24 FuriHalClockMcoMsi48m,
25} FuriHalClockMcoSourceId;
28 FuriHalClockMcoDiv1 = LL_RCC_MCO1_DIV_1,
29 FuriHalClockMcoDiv2 = LL_RCC_MCO1_DIV_2,
30 FuriHalClockMcoDiv4 = LL_RCC_MCO1_DIV_4,
31 FuriHalClockMcoDiv8 = LL_RCC_MCO1_DIV_8,
32 FuriHalClockMcoDiv16 = LL_RCC_MCO1_DIV_16,
33} FuriHalClockMcoDivisorId;
36void furi_hal_clock_init_early(
void);
39void furi_hal_clock_deinit_early(
void);
42void furi_hal_clock_init(
void);
45void furi_hal_clock_switch_hse2hsi(
void);
48void furi_hal_clock_switch_hsi2hse(
void);
54bool furi_hal_clock_switch_hse2pll(
void);
60bool furi_hal_clock_switch_pll2hse(
void);
63void furi_hal_clock_suspend_tick(
void);
66void furi_hal_clock_resume_tick(
void);
73void furi_hal_clock_mco_enable(FuriHalClockMcoSourceId source, FuriHalClockMcoDivisorId div);
76void furi_hal_clock_mco_disable(
void);