aboutsummaryrefslogtreecommitdiffstats
path: root/libmaple/stm32f1/rcc.c
Commit message (Collapse)AuthorAgeFilesLines
* RCC: Clean up and sanitize interfaces across F1, F2 series.Marti Bolivar2012-04-111-18/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Additions: - rcc_switch_sysclk(): For changing the clock used as SYSCLK's source. - enum rcc_clk: One for each system and secondary clock source (e.g. HSE, LSE). These are defined on a per-series basis in each of the <series/rcc.h>. - rcc_turn_on_clk(), rcc_turn_off_clk(), rcc_is_clk_ready(): For turning on system and secondary clock sources, and checking whether or not they're ready. Uses enum rcc_clk. Removals: - rcc_clk_init(): There's no way to port this to F2. Move it to the F1 header. This also means we can remove the empty implementation and enum rcc_pll_multiplier from the F2 RCC header, where it doesn't make any sense. Also fix up some includes, and rewrite rcc_clk_init() in terms of the new clock source management functions. Signed-off-by: Marti Bolivar <mbolivar@leaflabs.com>
* stm32f1/rcc.c: Add cautionary comment.Marti Bolivar2012-04-111-0/+4
| | | | Signed-off-by: Marti Bolivar <mbolivar@leaflabs.com>
* RCC: Break out some portable functionality from stm32f1/.Marti Bolivar2012-04-111-34/+7
| | | | | | | | | | | | | Portions of rcc_clk_enable(), rcc_reset_dev(), and rcc_set_prescaler() are portable; break these into static inline helpers in rcc_private.h. These guts of these are portable, but the arrays of registers etc. are not. Also add an extern declaration for rcc_dev_table into rcc_private.h. This lets us put rcc_dev_clk() into a newly resurrected libmaple/rcc.c, since that's portable. Signed-off-by: Marti Bolivar <mbolivar@leaflabs.com>
* Move RCC support for STM32F1 to libmaple/stm32f1/.Marti Bolivar2012-04-111-0/+205
This is a backwards-compatible change. Modify libmaple/rules.mk to include the family's include directory. This allows libmaple/include/libmaple/rcc.h to include the STM32F1 RCC header with #include <family/rcc.h>. We'll use this convention henceforth to distinguish between top-level and family-specific headers. Signed-off-by: Marti Bolivar <mbolivar@leaflabs.com>