From 9ffadc10ab4afe50833915e9c2df0c87a4ceb718 Mon Sep 17 00:00:00 2001 From: bnewbold Date: Mon, 2 Mar 2015 23:57:13 -0800 Subject: stm32f4: don't try to build FSMC and Timers that hardware doesn't support --- libmaple/stm32f2-f4/fsmc.c | 6 ++++++ libmaple/stm32f2-f4/timer.c | 23 +++++++++++++++++++++++ 2 files changed, 29 insertions(+) diff --git a/libmaple/stm32f2-f4/fsmc.c b/libmaple/stm32f2-f4/fsmc.c index ec41720..4ee23fa 100644 --- a/libmaple/stm32f2-f4/fsmc.c +++ b/libmaple/stm32f2-f4/fsmc.c @@ -30,6 +30,10 @@ * @brief STM32F2 FSMC support. */ +#include + +#if STM32_HAVE_FSMC /* Don't try building the rest for MCUs without FSMC */ + #include #include @@ -88,3 +92,5 @@ void fsmc_sram_init_gpios(void) { CONFIG_GPIO(GPIOE, 0); CONFIG_GPIO(GPIOE, 1); } + +#endif /* STM32_HAVE_FSMC */ diff --git a/libmaple/stm32f2-f4/timer.c b/libmaple/stm32f2-f4/timer.c index a85bea0..4ef466a 100644 --- a/libmaple/stm32f2-f4/timer.c +++ b/libmaple/stm32f2-f4/timer.c @@ -31,6 +31,7 @@ */ #include +#include #include "timer_private.h" /* @@ -85,17 +86,23 @@ gpio_af timer_get_af(timer_dev *dev) { void __irq_tim1_brk_tim9(void) { dispatch_adv_brk(TIMER1); +#if STM32_HAVE_TIMER(9) dispatch_tim_9_12(TIMER9); +#endif } void __irq_tim1_up_tim10(void) { dispatch_adv_up(TIMER1); +#if STM32_HAVE_TIMER(10) dispatch_tim_10_11_13_14(TIMER10); +#endif } void __irq_tim1_trg_com_tim11(void) { dispatch_adv_trg_com(TIMER1); +#if STM32_HAVE_TIMER(11) dispatch_tim_10_11_13_14(TIMER11); +#endif } void __irq_tim1_cc(void) { @@ -125,24 +132,40 @@ void __irq_tim6(void) { } void __irq_tim7(void) { +#if STM32_HAVE_TIMER(7) dispatch_basic(TIMER7); +#endif } void __irq_tim8_brk_tim12(void) { +#if STM32_HAVE_TIMER(8) dispatch_adv_brk(TIMER8); +#endif +#if STM32_HAVE_TIMER(12) dispatch_tim_9_12(TIMER12); +#endif } void __irq_tim8_up_tim13(void) { +#if STM32_HAVE_TIMER(8) dispatch_adv_up(TIMER8); +#endif +#if STM32_HAVE_TIMER(13) dispatch_tim_10_11_13_14(TIMER13); +#endif } void __irq_tim8_trg_com_tim14(void) { +#if STM32_HAVE_TIMER(8) dispatch_adv_trg_com(TIMER8); +#endif +#if STM32_HAVE_TIMER(14) dispatch_tim_10_11_13_14(TIMER14); +#endif } void __irq_tim8_cc(void) { +#if STM32_HAVE_TIMER(8) dispatch_adv_cc(TIMER8); +#endif } -- cgit v1.2.3