summaryrefslogtreecommitdiff
path: root/firmware/export/system.h
diff options
context:
space:
mode:
authorDave Chapman <dave@dchapman.com>2007-01-01 12:09:45 +0000
committerDave Chapman <dave@dchapman.com>2007-01-01 12:09:45 +0000
commit147693819d3275ec9eba8b580fa6ff8ada9896f3 (patch)
treea92f145b79b5248ab0550e8715ac1c479451d6b3 /firmware/export/system.h
parent9d9b8c08de68f158bf9967a8ec340b10e25b840b (diff)
downloadrockbox-147693819d3275ec9eba8b580fa6ff8ada9896f3.zip
rockbox-147693819d3275ec9eba8b580fa6ff8ada9896f3.tar.gz
rockbox-147693819d3275ec9eba8b580fa6ff8ada9896f3.tar.bz2
rockbox-147693819d3275ec9eba8b580fa6ff8ada9896f3.tar.xz
Split the enable_fiq(fiq_handler) function into separate set_fiq_handler(fiq_handler) and enable_fiq(void) functions. This allows temporary disabling of the FIQ without knowing which fiq handler is in use.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11875 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/export/system.h')
-rw-r--r--firmware/export/system.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/firmware/export/system.h b/firmware/export/system.h
index 3db38c9..66a2133 100644
--- a/firmware/export/system.h
+++ b/firmware/export/system.h
@@ -314,11 +314,14 @@ static inline int set_irq_level(int level)
return (cpsr >> 7) & 1;
}
-static inline void enable_fiq(void(*fiq_handler)(void))
+static inline void set_fiq_handler(void(*fiq_handler)(void))
{
/* Install the FIQ handler */
*((unsigned int*)(15*4)) = (unsigned int)fiq_handler;
+}
+static inline void enable_fiq(void)
+{
/* Clear FIQ disable bit */
asm volatile (
"mrs r0, cpsr \n"\