From abeb582a9cb347bcf14b265ad1fa5ff5caa5ed6b Mon Sep 17 00:00:00 2001 From: Linus Nielsen Feltzing Date: Wed, 27 Oct 2004 06:49:15 +0000 Subject: 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 --- firmware/export/system.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'firmware/export') 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 { #define HIGHEST_IRQ_LEVEL (7<<8) static inline int set_irq_level(int level) { - int i; + int oldlevel; /* Read the old level and set the new one */ asm volatile ("move.w %%sr,%0\n" "or.l #0x2000,%1\n" - "move.w %1,%%sr\n" : "=r" (i) : "r" (level)); - return i; + "move.w %1,%%sr\n" : "=r" (oldlevel), "+r" (level) : ); + return oldlevel; } #endif -- cgit v1.2.3