diff options
Diffstat (limited to 'firmware/target/arm/s3c2440/gigabeat-fx/kernel-meg-fx.c')
-rw-r--r-- | firmware/target/arm/s3c2440/gigabeat-fx/kernel-meg-fx.c | 29 |
1 files changed, 7 insertions, 22 deletions
diff --git a/firmware/target/arm/s3c2440/gigabeat-fx/kernel-meg-fx.c b/firmware/target/arm/s3c2440/gigabeat-fx/kernel-meg-fx.c index 6a750c32e2..6cabc8dc81 100644 --- a/firmware/target/arm/s3c2440/gigabeat-fx/kernel-meg-fx.c +++ b/firmware/target/arm/s3c2440/gigabeat-fx/kernel-meg-fx.c | |||
@@ -24,7 +24,7 @@ | |||
24 | #include "timer.h" | 24 | #include "timer.h" |
25 | #include "thread.h" | 25 | #include "thread.h" |
26 | 26 | ||
27 | static inline void tick_set(unsigned int interval_in_ms) | 27 | void tick_start(unsigned int interval_in_ms) |
28 | { | 28 | { |
29 | /* | 29 | /* |
30 | * Based on default PCLK of 49.1568MHz - scaling chosen to give | 30 | * Based on default PCLK of 49.1568MHz - scaling chosen to give |
@@ -49,11 +49,6 @@ static inline void tick_set(unsigned int interval_in_ms) | |||
49 | TCON |= 1 << 21; | 49 | TCON |= 1 << 21; |
50 | /* reset manual bit */ | 50 | /* reset manual bit */ |
51 | TCON &= ~(1 << 21); | 51 | TCON &= ~(1 << 21); |
52 | } | ||
53 | |||
54 | void tick_start(unsigned int interval_in_ms) | ||
55 | { | ||
56 | tick_set(interval_in_ms); | ||
57 | 52 | ||
58 | /* interval mode */ | 53 | /* interval mode */ |
59 | TCON |= 1 << 22; | 54 | TCON |= 1 << 22; |
@@ -65,24 +60,14 @@ void tick_start(unsigned int interval_in_ms) | |||
65 | } | 60 | } |
66 | 61 | ||
67 | #ifdef BOOTLOADER | 62 | #ifdef BOOTLOADER |
68 | void delay(int ticks) | 63 | void tick_stop(void) |
69 | { | 64 | { |
70 | volatile unsigned long counter; | 65 | s3c_regset32(&INTMSK, TIMER4_MASK); |
71 | 66 | TCON &= ~(1 << 20); | |
72 | INTMSK |= TIMER4_MASK; | 67 | SRCPND = TIMER4_MASK; |
73 | 68 | INTPND = TIMER4_MASK; | |
74 | tick_set(1000 * ticks / HZ); | ||
75 | |||
76 | /* autoreload Off */ | ||
77 | TCON &= ~(1 << 22); | ||
78 | /* start timer 4 */ | ||
79 | TCON |= (1 << 20); | ||
80 | |||
81 | do { | ||
82 | counter = TCNTO4; | ||
83 | } while(counter > 0); | ||
84 | } | 69 | } |
85 | #endif /* BOOTLOADER */ | 70 | #endif |
86 | 71 | ||
87 | void TIMER4(void) | 72 | void TIMER4(void) |
88 | { | 73 | { |