From: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Date: Mon, 22 Oct 2007 16:14:06 +0000 (+0900)
Subject: [MIPS] time: Make c0_compare_int_usable more bullet proof
X-Git-Tag: firefly_0821_release~24680^2
X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=dab969c00b8bee17a47057bbb91cd0a348cf6f76;p=firefly-linux-kernel-4.4.55.git

[MIPS] time: Make c0_compare_int_usable more bullet proof

Use write_c0_compare(read_c0_count()) to clear interrupt.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
---

diff --git a/arch/mips/kernel/cevt-r4k.c b/arch/mips/kernel/cevt-r4k.c
index a915e5693421..ae2984fff580 100644
--- a/arch/mips/kernel/cevt-r4k.c
+++ b/arch/mips/kernel/cevt-r4k.c
@@ -186,7 +186,7 @@ static int c0_compare_int_usable(void)
 	 * IP7 already pending?  Try to clear it by acking the timer.
 	 */
 	if (c0_compare_int_pending()) {
-		write_c0_compare(read_c0_compare());
+		write_c0_compare(read_c0_count());
 		irq_disable_hazard();
 		if (c0_compare_int_pending())
 			return 0;
@@ -202,7 +202,7 @@ static int c0_compare_int_usable(void)
 	if (!c0_compare_int_pending())
 		return 0;
 
-	write_c0_compare(read_c0_compare());
+	write_c0_compare(read_c0_count());
 	irq_disable_hazard();
 	if (c0_compare_int_pending())
 		return 0;