From: 黄涛 <huangtao@rock-chips.com>
Date: Thu, 15 Mar 2012 08:08:26 +0000 (+0800)
Subject: rk: fiq_debugger: support cpu switch when fiq is used
X-Git-Tag: firefly_0821_release~9595^2~59
X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=5d1bee9d76bce98d8a6e8e0503487f57237fc87d;p=firefly-linux-kernel-4.4.55.git

rk: fiq_debugger: support cpu switch when fiq is used
---

diff --git a/arch/arm/common/fiq_debugger.c b/arch/arm/common/fiq_debugger.c
index 203f08ddfc70..a0a5a805dfad 100644
--- a/arch/arm/common/fiq_debugger.c
+++ b/arch/arm/common/fiq_debugger.c
@@ -587,6 +587,17 @@ static void switch_cpu(struct fiq_debugger_state *state, int cpu)
 {
 	if (!debug_have_fiq(state))
 		smp_call_function_single(cpu, take_affinity, state, false);
+#ifdef CONFIG_PLAT_RK
+	else {
+		struct cpumask cpumask;
+
+		cpumask_clear(&cpumask);
+		cpumask_set_cpu(cpu, &cpumask);
+
+		irq_set_affinity(state->fiq, &cpumask);
+		irq_set_affinity(state->uart_irq, &cpumask);
+	}
+#endif
 	state->current_cpu = cpu;
 }