diff options
author | Michael Sevakis <jethead71@rockbox.org> | 2009-01-20 16:11:59 +0000 |
---|---|---|
committer | Michael Sevakis <jethead71@rockbox.org> | 2009-01-20 16:11:59 +0000 |
commit | 73f2d001fd3ba117e4585c25d42fb93b244518ee (patch) | |
tree | b53dd4a98cdf8ed4ca4d121ccaad56d850ea5fe6 | |
parent | 5d1eb8ee3193c0b0c779258e754218929fa09723 (diff) | |
download | rockbox-73f2d001fd3ba117e4585c25d42fb93b244518ee.tar.gz rockbox-73f2d001fd3ba117e4585c25d42fb93b244518ee.zip |
PortalPlayer: Implement irq_handler() directly in C code rather than dispatching to irq() from crt0-pp.S. Remove unneeded STUB macros.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19801 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r-- | firmware/target/arm/crt0-pp.S | 13 | ||||
-rw-r--r-- | firmware/target/arm/system-pp5002.c | 2 | ||||
-rw-r--r-- | firmware/target/arm/system-pp502x.c | 2 |
3 files changed, 2 insertions, 15 deletions
diff --git a/firmware/target/arm/crt0-pp.S b/firmware/target/arm/crt0-pp.S index 3bfa607622..f698783017 100644 --- a/firmware/target/arm/crt0-pp.S +++ b/firmware/target/arm/crt0-pp.S @@ -362,19 +362,6 @@ data_abort_handler: mov r1, #2 b UIE -irq_handler: -#ifndef STUB - stmfd sp!, {r0-r3, r12, lr} - bl irq - ldmfd sp!, {r0-r3, r12, lr} -#endif - subs pc, lr, #4 - -#ifdef STUB -UIE: - b UIE -#endif - /* Align stacks to cache line boundary */ .balign 32 diff --git a/firmware/target/arm/system-pp5002.c b/firmware/target/arm/system-pp5002.c index 1b37d3303f..a995a5464b 100644 --- a/firmware/target/arm/system-pp5002.c +++ b/firmware/target/arm/system-pp5002.c @@ -27,7 +27,7 @@ extern void TIMER1(void); extern void TIMER2(void); -void irq(void) +void __attribute__((interrupt("IRQ"))) irq_handler(void) { if(CURRENT_CORE == CPU) { diff --git a/firmware/target/arm/system-pp502x.c b/firmware/target/arm/system-pp502x.c index db6cae13d4..ed4c028ff4 100644 --- a/firmware/target/arm/system-pp502x.c +++ b/firmware/target/arm/system-pp502x.c @@ -36,7 +36,7 @@ extern void SERIAL0(void); extern void ipod_mini_button_int(void); /* iPod Mini 1st gen only */ extern void ipod_4g_button_int(void); /* iPod 4th gen and higher only */ -void irq(void) +void __attribute__((interrupt("IRQ"))) irq_handler(void) { if(CURRENT_CORE == CPU) { |