--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/timer.c Wed Dec 20 11:24:16 2006 +0000 @@ -0,0 +1,45 @@ +#include "../lib.h" +#define TMU_CHANNEL 2 + +#define TOCR 0xFFD80000 /* Output control register */ +#define TSTR 0xFFD80004 /* Start register */ +#define TCOR(c) (0xFFD80008 + (c*12)) /* Constant register */ +#define TCNT(c) (0xFFD8000C + (c*12)) /* Count register */ +#define TCR(c) (0xFFD80010 + (c*12)) /* Control register */ + +/** + * Initialize the on-chip timer controller. We snag TMU channel 2 in its + * highest resolution mode, and start it counting down from max_int. + */ +void timer_start() { + unsigned int val = long_read(TSTR); + long_write( TSTR, val & (~(1<