aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/ports/AVR/hal_lld.h
diff options
context:
space:
mode:
authorutzig <utzig@35acf78f-673a-0410-8e92-d51de3d6d3f4>2014-07-08 19:00:10 +0000
committerutzig <utzig@35acf78f-673a-0410-8e92-d51de3d6d3f4>2014-07-08 19:00:10 +0000
commit6e654279599f7cf1798c258cc11ebf653aa3fa16 (patch)
tree2e9fb4dff73b125b17292946444105673fbb7cb2 /os/hal/ports/AVR/hal_lld.h
parent8b24baf454ba7a03fccc82d2866a9fb29141e7f6 (diff)
downloadChibiOS-6e654279599f7cf1798c258cc11ebf653aa3fa16.tar.gz
ChibiOS-6e654279599f7cf1798c258cc11ebf653aa3fa16.tar.bz2
ChibiOS-6e654279599f7cf1798c258cc11ebf653aa3fa16.zip
Make hal usable in both chibios/nil
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@7018 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os/hal/ports/AVR/hal_lld.h')
-rw-r--r--os/hal/ports/AVR/hal_lld.h28
1 files changed, 17 insertions, 11 deletions
diff --git a/os/hal/ports/AVR/hal_lld.h b/os/hal/ports/AVR/hal_lld.h
index 94daa5b6e..da16acce9 100644
--- a/os/hal/ports/AVR/hal_lld.h
+++ b/os/hal/ports/AVR/hal_lld.h
@@ -63,32 +63,38 @@
/* Derived constants and error checks. */
/*===========================================================================*/
-/* Find the most suitable prescaler setting for the desired CH_CFG_ST_FREQUENCY */
-#if ((F_CPU / CH_CFG_ST_FREQUENCY) <= AVR_TIMER_COUNTER_MAX)
+#ifdef _NIL_
+#define CFG_ST_FREQUENCY NIL_CFG_ST_FREQUENCY
+#else
+#define CFG_ST_FREQUENCY CH_CFG_ST_FREQUENCY
+#endif
+
+/* Find the most suitable prescaler setting for the desired CFG_ST_FREQUENCY */
+#if ((F_CPU / CFG_ST_FREQUENCY) <= AVR_TIMER_COUNTER_MAX)
#define AVR_TIMER_PRESCALER 1
#define AVR_TIMER_PRESCALER_BITS (0 << CS02) | (0 << CS01) | (1 << CS00); /* CLK */
-#elif ((F_CPU / CH_CFG_ST_FREQUENCY / 8) <= AVR_TIMER_COUNTER_MAX)
+#elif ((F_CPU / CFG_ST_FREQUENCY / 8) <= AVR_TIMER_COUNTER_MAX)
#define AVR_TIMER_PRESCALER 8
#define AVR_TIMER_PRESCALER_BITS (0 << CS02) | (1 << CS01) | (0 << CS00); /* CLK/8 */
-#elif ((F_CPU / CH_CFG_ST_FREQUENCY / 64) <= AVR_TIMER_COUNTER_MAX)
+#elif ((F_CPU / CFG_ST_FREQUENCY / 64) <= AVR_TIMER_COUNTER_MAX)
#define AVR_TIMER_PRESCALER 64
#define AVR_TIMER_PRESCALER_BITS (0 << CS02) | (1 << CS01) | (1 << CS00); /* CLK/64 */
-#elif ((F_CPU / CH_CFG_ST_FREQUENCY / 256) <= AVR_TIMER_COUNTER_MAX)
+#elif ((F_CPU / CFG_ST_FREQUENCY / 256) <= AVR_TIMER_COUNTER_MAX)
#define AVR_TIMER_PRESCALER 256
#define AVR_TIMER_PRESCALER_BITS (1 << CS02) | (0 << CS01) | (0 << CS00); /* CLK/256 */
-#elif ((F_CPU / CH_CFG_ST_FREQUENCY / 1024) <= AVR_TIMER_COUNTER_MAX)
+#elif ((F_CPU / CFG_ST_FREQUENCY / 1024) <= AVR_TIMER_COUNTER_MAX)
#define AVR_TIMER_PRESCALER 1024
#define AVR_TIMER_PRESCALER_BITS (1 << CS02) | (0 << CS01) | (1 << CS00); /* CLK/1024 */
#else
- #error "Frequency too low for timer, please set CH_CFG_ST_FREQUENCY to a higher value"
+ #error "Frequency too low for timer, please set CFG_ST_FREQUENCY to a higher value"
#endif
-#define AVR_TIMER_COUNTER (F_CPU / CH_CFG_ST_FREQUENCY / AVR_TIMER_PRESCALER)
+#define AVR_TIMER_COUNTER (F_CPU / CFG_ST_FREQUENCY / AVR_TIMER_PRESCALER)
-/* Test if CH_CFG_ST_FREQUENCY can be matched exactly using this timer */
-#define F_CPU_ (AVR_TIMER_COUNTER * AVR_TIMER_PRESCALER * CH_CFG_ST_FREQUENCY)
+/* Test if CFG_ST_FREQUENCY can be matched exactly using this timer */
+#define F_CPU_ (AVR_TIMER_COUNTER * AVR_TIMER_PRESCALER * CFG_ST_FREQUENCY)
#if (F_CPU_ != F_CPU)
- #warning "CH_CFG_ST_FREQUENCY cannot be generated exactly using timer"
+ #warning "CFG_ST_FREQUENCY cannot be generated exactly using timer"
#endif
#undef F_CPU_