From: Thiemo Seufer Date: Mon, 21 Feb 2005 11:44:31 +0000 (+0000) Subject: Enable/disable irq's only if needed. X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=049b13c358f0187cf3c5003d5fb9848dbcb28bc3;p=openwrt%2Fstaging%2Fblogic.git Enable/disable irq's only if needed. Signed-off-by: Thiemo Seufer Signed-off-by: Ralf Baechle --- diff --git a/include/asm-mips/io.h b/include/asm-mips/io.h index 039845f2e6b0..1f2fe11f4124 100644 --- a/include/asm-mips/io.h +++ b/include/asm-mips/io.h @@ -319,7 +319,8 @@ static inline type pfx##read##bwlq(volatile void __iomem *mem) \ else if (cpu_has_64bits) { \ unsigned long __flags; \ \ - local_irq_save(__flags); \ + if (irq) \ + local_irq_save(__flags); \ __asm__ __volatile__( \ ".set mips3" "\t\t# __readq" "\n\t" \ "ld %L0, %1" "\n\t" \ @@ -328,7 +329,8 @@ static inline type pfx##read##bwlq(volatile void __iomem *mem) \ ".set mips0" "\n" \ : "=r" (__val) \ : "m" (*__mem)); \ - local_irq_restore(__flags); \ + if (irq) \ + local_irq_restore(__flags); \ } else { \ __val = 0; \ BUG(); \