summaryrefslogtreecommitdiff
path: root/firmware
diff options
context:
space:
mode:
authorLinus Nielsen Feltzing <linus@haxx.se>2004-10-27 06:49:15 +0000
committerLinus Nielsen Feltzing <linus@haxx.se>2004-10-27 06:49:15 +0000
commitabeb582a9cb347bcf14b265ad1fa5ff5caa5ed6b (patch)
tree27fe4a89450fee6ede5cf485be27f639b10d961e /firmware
parentbf41fcee8b46fe0c3f52c7d6431ea1effc0c3a5e (diff)
downloadrockbox-abeb582a9cb347bcf14b265ad1fa5ff5caa5ed6b.tar.gz
rockbox-abeb582a9cb347bcf14b265ad1fa5ff5caa5ed6b.zip
Coldfire: set_irq_level() mixed up the in/out registers
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5363 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r--firmware/export/system.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/firmware/export/system.h b/firmware/export/system.h
index 7ac5c1d1d5..1205e9360b 100644
--- a/firmware/export/system.h
+++ b/firmware/export/system.h
@@ -147,12 +147,12 @@ enum {
147#define HIGHEST_IRQ_LEVEL (7<<8) 147#define HIGHEST_IRQ_LEVEL (7<<8)
148static inline int set_irq_level(int level) 148static inline int set_irq_level(int level)
149{ 149{
150 int i; 150 int oldlevel;
151 /* Read the old level and set the new one */ 151 /* Read the old level and set the new one */
152 asm volatile ("move.w %%sr,%0\n" 152 asm volatile ("move.w %%sr,%0\n"
153 "or.l #0x2000,%1\n" 153 "or.l #0x2000,%1\n"
154 "move.w %1,%%sr\n" : "=r" (i) : "r" (level)); 154 "move.w %1,%%sr\n" : "=r" (oldlevel), "+r" (level) : );
155 return i; 155 return oldlevel;
156} 156}
157 157
158#endif 158#endif