diff options
Diffstat (limited to 'c/src/lib/libbsp/mips/jmr3904/clock/clockdrv.c')
-rw-r--r-- | c/src/lib/libbsp/mips/jmr3904/clock/clockdrv.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/c/src/lib/libbsp/mips/jmr3904/clock/clockdrv.c b/c/src/lib/libbsp/mips/jmr3904/clock/clockdrv.c index 513db82a0c..6bef17496d 100644 --- a/c/src/lib/libbsp/mips/jmr3904/clock/clockdrv.c +++ b/c/src/lib/libbsp/mips/jmr3904/clock/clockdrv.c @@ -1,14 +1,14 @@ /* * Instantiate the clock driver shell. * - * Since there is no clock source on the simulator, all we do is - * make sure it will build. + * The tx3904 simulator in gdb counts instructions. * * $Id$ */ #include <rtems.h> #include <libcpu/tx3904.h> +#include <bsp.h> #define CLOCK_DRIVER_USE_FAST_IDLE @@ -16,12 +16,15 @@ #define Clock_driver_support_at_tick() -/* XXX */ +/* + * 5000 clicks per tick ISR is HIGHLY arbitrary + */ + #define CLICKS 5000 #define Clock_driver_support_install_isr( _new, _old ) \ do { \ unsigned32 _clicks = CLICKS; \ - _old = (rtems_isr_entry) set_vector( _new, CLOCK_VECTOR, 1 ); \ + _old = set_vector( _new, CLOCK_VECTOR, 1 ); \ TX3904_TIMER_WRITE( TX3904_TIMER0_BASE, TX3904_TIMER_CCDR, 0x3 ); \ TX3904_TIMER_WRITE( TX3904_TIMER0_BASE, TX3904_TIMER_CPRA, _clicks ); \ TX3904_TIMER_WRITE( TX3904_TIMER0_BASE, TX3904_TIMER_TISR, 0x00 ); \ |