aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/platforms/STM32/ext_lld.h
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2012-04-23 17:43:42 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2012-04-23 17:43:42 +0000
commite817b7032d9610508e39921c65cda6ba108db357 (patch)
treefc4f7dfd20f8655e87b6165a4da1f27ba134c3a4 /os/hal/platforms/STM32/ext_lld.h
parentcdabdb46317e967dc0fa79e8c23cde3c2ffd0b10 (diff)
downloadChibiOS-e817b7032d9610508e39921c65cda6ba108db357.tar.gz
ChibiOS-e817b7032d9610508e39921c65cda6ba108db357.tar.bz2
ChibiOS-e817b7032d9610508e39921c65cda6ba108db357.zip
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@4128 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os/hal/platforms/STM32/ext_lld.h')
-rw-r--r--os/hal/platforms/STM32/ext_lld.h39
1 files changed, 12 insertions, 27 deletions
diff --git a/os/hal/platforms/STM32/ext_lld.h b/os/hal/platforms/STM32/ext_lld.h
index 6ef14427b..60a77fc41 100644
--- a/os/hal/platforms/STM32/ext_lld.h
+++ b/os/hal/platforms/STM32/ext_lld.h
@@ -46,31 +46,20 @@
#define EXT_CHANNELS_MASK ((1 << EXT_MAX_CHANNELS) - 1)
/**
- * @name EXTI configuration helpers
+ * @name STM32-specific EXT channel modes
* @{
*/
-/**
- * @brief EXTI-GPIO association macro.
- * @details Helper macro to associate a GPIO to each of the Mx EXTI inputs.
- */
-#define EXT_MODE_EXTI(m0, m1, m2, m3, m4, m5, m6, m7, \
- m8, m9, m10, m11, m12, m13, m14, m15) \
- { \
- ((m0) << 0) | ((m1) << 4) | ((m2) << 8) | ((m3) << 12), \
- ((m4) << 0) | ((m5) << 4) | ((m6) << 8) | ((m7) << 12), \
- ((m8) << 0) | ((m9) << 4) | ((m10) << 8) | ((m11) << 12), \
- ((m12) << 0) | ((m13) << 4) | ((m14) << 8) | ((m15) << 12) \
- }
-
-#define EXT_MODE_GPIOA 0 /**< @brief GPIOA identifier. */
-#define EXT_MODE_GPIOB 1 /**< @brief GPIOB identifier. */
-#define EXT_MODE_GPIOC 2 /**< @brief GPIOC identifier. */
-#define EXT_MODE_GPIOD 3 /**< @brief GPIOD identifier. */
-#define EXT_MODE_GPIOE 4 /**< @brief GPIOE identifier. */
-#define EXT_MODE_GPIOF 5 /**< @brief GPIOF identifier. */
-#define EXT_MODE_GPIOG 6 /**< @brief GPIOG identifier. */
-#define EXT_MODE_GPIOH 7 /**< @brief GPIOH identifier. */
-#define EXT_MODE_GPIOI 8 /**< @brief GPIOI identifier. */
+#define EXT_MODE_GPIO_MASK 0xF0 /**< @bried Port field mask. */
+#define EXT_MODE_GPIO_OFF 4 /**< @bried Port field offset. */
+#define EXT_MODE_GPIOA 0x00 /**< @brief GPIOA identifier. */
+#define EXT_MODE_GPIOB 0x10 /**< @brief GPIOB identifier. */
+#define EXT_MODE_GPIOC 0x20 /**< @brief GPIOC identifier. */
+#define EXT_MODE_GPIOD 0x30 /**< @brief GPIOD identifier. */
+#define EXT_MODE_GPIOE 0x40 /**< @brief GPIOE identifier. */
+#define EXT_MODE_GPIOF 0x50 /**< @brief GPIOF identifier. */
+#define EXT_MODE_GPIOG 0x60 /**< @brief GPIOG identifier. */
+#define EXT_MODE_GPIOH 0x70 /**< @brief GPIOH identifier. */
+#define EXT_MODE_GPIOI 0x80 /**< @brief GPIOI identifier. */
/** @} */
/*===========================================================================*/
@@ -228,10 +217,6 @@ typedef struct {
*/
EXTChannelConfig channels[EXT_MAX_CHANNELS];
/* End of the mandatory fields.*/
- /**
- * @brief Initialization values for EXTICRx registers.
- */
- uint16_t exti[4];
} EXTConfig;
/**