aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorchrysn2012-10-18 12:46:30 +0200
committerchrysn2012-10-18 12:46:30 +0200
commitf705d1cd6ec77f6610046c3d9a009c263b526f25 (patch)
tree796d6c0ff3df2b2c254d248b377588cf578587d9 /include
parenta7f5f9f576977f97988b739fd98ff7f164edf156 (diff)
dispatch for chip specific nvic
Diffstat (limited to 'include')
-rw-r--r--include/libopencm3/cm3/nvic.h2
-rw-r--r--include/libopencm3/cm3/vector.h5
-rw-r--r--include/libopencm3/dispatch/nvic.h (renamed from include/libopencm3/stm32/nvic.h)11
3 files changed, 12 insertions, 6 deletions
diff --git a/include/libopencm3/cm3/nvic.h b/include/libopencm3/cm3/nvic.h
index 3a3aa2f..3f83285 100644
--- a/include/libopencm3/cm3/nvic.h
+++ b/include/libopencm3/cm3/nvic.h
@@ -104,6 +104,8 @@ IRQ numbers -3 and -6 to -9 are reserved
* specific header file in the corresponding subfolder.
*/
+#include <libopencm3/dispatch/nvic.h>
+
/* --- NVIC functions ------------------------------------------------------ */
BEGIN_DECLS
diff --git a/include/libopencm3/cm3/vector.h b/include/libopencm3/cm3/vector.h
index 198992b..f78e9d8 100644
--- a/include/libopencm3/cm3/vector.h
+++ b/include/libopencm3/cm3/vector.h
@@ -38,8 +38,7 @@
#define LIBOPENCM3_VECTOR_H
#include <libopencm3/cm3/common.h>
-
-// #include "irq.h" /* we'll nede some definitions */
+#include <libopencm3/cm3/nvic.h>
/** Type of an interrupt function. Only used to avoid hard-to-read function
* pointers in the efm32_vector_table_t struct. */
@@ -59,7 +58,7 @@ typedef struct {
vector_table_entry_t reserved_x0034;
vector_table_entry_t pend_sv;
vector_table_entry_t systick;
- vector_table_entry_t irq[IRQ_COUNT];
+ vector_table_entry_t irq[NVIC_IRQ_COUNT];
} vector_table_t;
#endif
diff --git a/include/libopencm3/stm32/nvic.h b/include/libopencm3/dispatch/nvic.h
index b8c22a2..322ec29 100644
--- a/include/libopencm3/stm32/nvic.h
+++ b/include/libopencm3/dispatch/nvic.h
@@ -4,8 +4,13 @@
# include <libopencm3/stm32/f2/nvic_f2.h>
#elif defined(STM32F4)
# include <libopencm3/stm32/f4/nvic_f4.h>
-#else
-# error "stm32 family not defined."
-#endif
+#elif defined(TINYGECKO)
+# include <libopencm3/efm32/tinygecko/nvic.h>
+
+#elif defined(LPC43XX)
+# include <libopencm3/lpc43xx/nvic.h>
+#else
+# error "no chipset defined."
+#endif