aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorJiaxun Yang <jiaxun.yang@flygoat.com>2019-01-22 21:04:11 +0800
committerPaul Burton <paul.burton@mips.com>2019-01-22 17:32:01 -0800
commitbdea8bb16345aa62622bfe199f9e2ee9a0daa6d9 (patch)
tree2a2cc3dd0f3b79616010aa1157d00f55315693fe /arch
parentMIPS: Loongson32: Set load address to 0x80200000 (diff)
downloadlinux-dev-bdea8bb16345aa62622bfe199f9e2ee9a0daa6d9.tar.xz
linux-dev-bdea8bb16345aa62622bfe199f9e2ee9a0daa6d9.zip
MIPS: Loongson32: workaround di issue
GS232 core used in Loongson-1 processors has a bug that di instruction doesn't save the irqflag immediately. Workaround by set irqflag in CP0 before di instructions as same as Loongson-3. Signed-off-by: Jiaxun Yang <jiaxun.yang@flygoat.com> Signed-off-by: Paul Burton <paul.burton@mips.com> Cc: linux-mips@vger.kernel.org Cc: keguang.zhang@gmail.com
Diffstat (limited to 'arch')
-rw-r--r--arch/mips/include/asm/irqflags.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/mips/include/asm/irqflags.h b/arch/mips/include/asm/irqflags.h
index 9d3610be2323..f0b862a83816 100644
--- a/arch/mips/include/asm/irqflags.h
+++ b/arch/mips/include/asm/irqflags.h
@@ -41,7 +41,7 @@ static inline unsigned long arch_local_irq_save(void)
" .set push \n"
" .set reorder \n"
" .set noat \n"
-#if defined(CONFIG_CPU_LOONGSON3)
+#if defined(CONFIG_CPU_LOONGSON3) || defined (CONFIG_CPU_LOONGSON1)
" mfc0 %[flags], $12 \n"
" di \n"
#else