aboutsummaryrefslogtreecommitdiffstats
path: root/wirish/stm32f1
diff options
context:
space:
mode:
authorMarti Bolivar <mbolivar@leaflabs.com>2012-06-02 21:02:34 -0400
committerMarti Bolivar <mbolivar@leaflabs.com>2012-06-02 21:04:13 -0400
commit1637300f8f751ccc17ff1a2f383c7fca902c0f8f (patch)
tree79c3a4ec21ed55d352ef2d7730182c1821e3b437 /wirish/stm32f1
parentdaa792f486ea7ce848c37eee636c73824efec396 (diff)
downloadlibrambutan-1637300f8f751ccc17ff1a2f383c7fca902c0f8f.tar.gz
librambutan-1637300f8f751ccc17ff1a2f383c7fca902c0f8f.zip
Bring timer initialization back to init().
Turns out the F1 code was pretty portable after all, so take it from the F1 boards_setup.cpp and stick it back into boards.cpp. The only change needed was to add a call to the newly-minted timer_has_cc_channel() (and this is necessary on F103 XL-density, anyway). Also assert LeafLabs copyright in boards.cpp. We really need to do this throughout the library; it's basically been rewritten since Perry. Signed-off-by: Marti Bolivar <mbolivar@leaflabs.com>
Diffstat (limited to 'wirish/stm32f1')
-rw-r--r--wirish/stm32f1/boards_setup.cpp45
1 files changed, 0 insertions, 45 deletions
diff --git a/wirish/stm32f1/boards_setup.cpp b/wirish/stm32f1/boards_setup.cpp
index a71661d..423e5ec 100644
--- a/wirish/stm32f1/boards_setup.cpp
+++ b/wirish/stm32f1/boards_setup.cpp
@@ -62,8 +62,6 @@ namespace wirish {
adc_prescaler w_adc_pre = ADC_PRE_PCLK2_DIV_6;
adc_smp_rate w_adc_smp = ADC_SMPR_55_5;
- static void config_timer(timer_dev*);
-
void board_reset_pll(void) {
// TODO
}
@@ -81,10 +79,6 @@ namespace wirish {
afio_init();
}
- void board_setup_timers(void) {
- timer_foreach(config_timer);
- }
-
void board_setup_usb(void) {
#if 0
# if STM32_HAVE_USB
@@ -92,44 +86,5 @@ namespace wirish {
# endif
#endif
}
-
- /*
- * Auxiliary routines
- */
-
- static void config_timer(timer_dev *dev) {
-#if 0
- timer_adv_reg_map *regs = (dev->regs).adv;
- const uint16 full_overflow = 0xFFFF;
- const uint16 half_duty = 0x8FFF;
-
- timer_init(dev);
- timer_pause(dev);
-
- regs->CR1 = TIMER_CR1_ARPE;
- regs->PSC = 1;
- regs->SR = 0;
- regs->DIER = 0;
- regs->EGR = TIMER_EGR_UG;
-
- switch (dev->type) {
- case TIMER_ADVANCED:
- regs->BDTR = TIMER_BDTR_MOE | TIMER_BDTR_LOCK_OFF;
- // fall-through
- case TIMER_GENERAL:
- timer_set_reload(dev, full_overflow);
-
- for (int channel = 1; channel <= 4; channel++) {
- timer_set_compare(dev, channel, half_duty);
- timer_oc_set_mode(dev, channel, TIMER_OC_MODE_PWM_1, TIMER_OC_PE);
- }
- // fall-through
- case TIMER_BASIC:
- break;
- }
-
- timer_resume(dev);
-#endif
- }
}
}