diff options
author | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2008-05-01 15:37:22 +0000 |
---|---|---|
committer | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2008-05-01 15:37:22 +0000 |
commit | a1fa57fc01232c027e01417180989f36e76367bf (patch) | |
tree | ed4937790e8b8118f7f892958bde75648ffd760f /firmware/target/arm/tms320dm320 | |
parent | 59efebff1e3352a1d28b633a6206d3120c8b1936 (diff) | |
download | rockbox-a1fa57fc01232c027e01417180989f36e76367bf.tar.gz rockbox-a1fa57fc01232c027e01417180989f36e76367bf.zip |
Use FIQ register + comments.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17297 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/arm/tms320dm320')
-rw-r--r-- | firmware/target/arm/tms320dm320/system-dm320.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/firmware/target/arm/tms320dm320/system-dm320.c b/firmware/target/arm/tms320dm320/system-dm320.c index c03e05522c..7180d3b421 100644 --- a/firmware/target/arm/tms320dm320/system-dm320.c +++ b/firmware/target/arm/tms320dm320/system-dm320.c | |||
@@ -122,7 +122,7 @@ void irq_handler(void) | |||
122 | } | 122 | } |
123 | asm volatile( "add sp, sp, #8 \n" /* Cleanup stack */ | 123 | asm volatile( "add sp, sp, #8 \n" /* Cleanup stack */ |
124 | "ldmfd sp!, {r0-r7, ip, lr} \n" /* Restore context */ | 124 | "ldmfd sp!, {r0-r7, ip, lr} \n" /* Restore context */ |
125 | "subs pc, lr, #4 \n"); /* Return from FIQ */ | 125 | "subs pc, lr, #4 \n"); /* Return from IRQ */ |
126 | } | 126 | } |
127 | 127 | ||
128 | void fiq_handler(void) | 128 | void fiq_handler(void) |
@@ -135,12 +135,12 @@ void fiq_handler(void) | |||
135 | "sub lr, lr, #4 \r\n" | 135 | "sub lr, lr, #4 \r\n" |
136 | "stmfd sp!, {r0-r3, ip, lr} \r\n" | 136 | "stmfd sp!, {r0-r3, ip, lr} \r\n" |
137 | "mov r0, #0x00030000 \r\n" | 137 | "mov r0, #0x00030000 \r\n" |
138 | "ldr r0, [r0, #0x518] \r\n" | 138 | "ldr r0, [r0, #0x510] \r\n" /* Fetch value from IO_INTC_FIQENTRY0 */ |
139 | "sub r0, r0, #1 \r\n" | 139 | "sub r0, r0, #1 \r\n" |
140 | "ldr r1, =irqvector \r\n" | 140 | "ldr r1, =irqvector \r\n" |
141 | "ldr r1, [r1, r0, lsl #2] \r\n" | 141 | "ldr r1, [r1, r0, lsl #2] \r\n" /* Divide value by 4 (TBA0/TBA1 is set to 0) and load appropriate pointer from the vector list */ |
142 | "blx r1 \r\n" | 142 | "blx r1 \r\n" /* Jump to handler */ |
143 | "ldmfd sp!, {r0-r3, ip, pc}^ \r\n" | 143 | "ldmfd sp!, {r0-r3, ip, pc}^ \r\n" /* Return from FIQ */ |
144 | ); | 144 | ); |
145 | } | 145 | } |
146 | 146 | ||
@@ -197,7 +197,7 @@ void system_init(void) | |||
197 | unsigned short i; | 197 | unsigned short i; |
198 | /* Reset interrupt priorities to default values */ | 198 | /* Reset interrupt priorities to default values */ |
199 | for(i = 0; i < 23; i++) | 199 | for(i = 0; i < 23; i++) |
200 | DM320_REG(0x0540+i*2) = ( (i*2+1) << 8 ) | i*2 ;//IO_INTC_PRIORITYx | 200 | DM320_REG(0x0540+i*2) = ( (i*2+1) << 8 ) | i*2 ;/* IO_INTC_PRIORITYx */ |
201 | 201 | ||
202 | /* Turn off all timers */ | 202 | /* Turn off all timers */ |
203 | IO_TIMER0_TMMD = CONFIG_TIMER0_TMMD_STOP; | 203 | IO_TIMER0_TMMD = CONFIG_TIMER0_TMMD_STOP; |