summaryrefslogtreecommitdiffstats
path: root/firmware/target/arm/tms320dm320/kernel-dm320.c
diff options
context:
space:
mode:
authorMaurus Cuelenaere <mcuelenaere@gmail.com>2008-04-24 20:08:28 +0000
committerMaurus Cuelenaere <mcuelenaere@gmail.com>2008-04-24 20:08:28 +0000
commit95167e01773dcfe8e5c1b356cfa1ea4b3a55441b (patch)
tree8b5312c5f1d1ecc8231bf8e14a1eb1678474bf8a /firmware/target/arm/tms320dm320/kernel-dm320.c
parent46b492861152af9b91d3ab65ef0e5e14c876c3fc (diff)
downloadrockbox-95167e01773dcfe8e5c1b356cfa1ea4b3a55441b.tar.gz
rockbox-95167e01773dcfe8e5c1b356cfa1ea4b3a55441b.zip
Commit whole Creative Zen Vision:M target tree + all related firmware/
changes. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17241 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/arm/tms320dm320/kernel-dm320.c')
-rw-r--r--firmware/target/arm/tms320dm320/kernel-dm320.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/firmware/target/arm/tms320dm320/kernel-dm320.c b/firmware/target/arm/tms320dm320/kernel-dm320.c
index 6608aea096..2b2e783c3f 100644
--- a/firmware/target/arm/tms320dm320/kernel-dm320.c
+++ b/firmware/target/arm/tms320dm320/kernel-dm320.c
@@ -27,6 +27,10 @@ extern void (*tick_funcs[MAX_NUM_TICK_TASKS])(void);
void tick_start(unsigned int interval_in_ms)
{
+/* TODO: set up TIMER1 clock settings
+ IO_CLK_MOD2 &= ~CLK_MOD2_TMR1; //disable TIMER1 clock
+ IO_CLK_SEL0 |= (1 << 2); //set TIMER1 clock to PLLIN*/
+ IO_CLK_MOD2 |= CLK_MOD2_TMR1; //enable TIMER1 clock!!!!!!!!!
IO_TIMER1_TMMD = CONFIG_TIMER1_TMMD_STOP;
/* Setup the Prescalar (Divide by 10)
@@ -35,13 +39,13 @@ void tick_start(unsigned int interval_in_ms)
IO_TIMER1_TMPRSCL = 0x0009;
/* Setup the Divisor */
- IO_TIMER1_TMDIV = (TIMER_FREQ / (10*1000))*interval_in_ms;
-
+ IO_TIMER1_TMDIV = (TIMER_FREQ / (10*1000))*interval_in_ms - 1;
+
/* Turn Timer1 to Free Run mode */
IO_TIMER1_TMMD = CONFIG_TIMER1_TMMD_FREE_RUN;
-
+
/* Enable the interrupt */
- IO_INTC_EINT0 |= 1<<IRQ_TIMER1;
+ IO_INTC_EINT0 |= INTR_EINT0_TMR1;
}
void TIMER1(void)
@@ -56,8 +60,7 @@ void TIMER1(void)
tick_funcs[i]();
}
}
-
current_tick++;
- IO_INTC_IRQ0 = 1<<IRQ_TIMER1;
+ IO_INTC_IRQ0 = INTR_IRQ0_TMR1;
}