Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 17941314 authored by Graf Yang's avatar Graf Yang Committed by Mike Frysinger
Browse files

Blackfin: handle the core timer interrupt with handle_percpu_irq on SMP

parent 92649494
Loading
Loading
Loading
Loading
+10 −7
Original line number Original line Diff line number Diff line
@@ -1052,18 +1052,26 @@ int __init init_arch_irq(void)
			set_irq_chained_handler(irq, bfin_demux_error_irq);
			set_irq_chained_handler(irq, bfin_demux_error_irq);
			break;
			break;
#endif
#endif

#ifdef CONFIG_SMP
#ifdef CONFIG_SMP
#ifdef CONFIG_TICKSOURCE_GPTMR0
		case IRQ_TIMER0:
#endif
#ifdef CONFIG_TICKSOURCE_CORETMR
		case IRQ_CORETMR:
#endif
		case IRQ_SUPPLE_0:
		case IRQ_SUPPLE_0:
		case IRQ_SUPPLE_1:
		case IRQ_SUPPLE_1:
			set_irq_handler(irq, handle_percpu_irq);
			set_irq_handler(irq, handle_percpu_irq);
			break;
			break;
#endif
#endif

#ifdef CONFIG_IPIPE
#ifdef CONFIG_IPIPE
#ifndef CONFIG_TICKSOURCE_CORETMR
#ifndef CONFIG_TICKSOURCE_CORETMR
		case IRQ_TIMER0:
		case IRQ_TIMER0:
			set_irq_handler(irq, handle_simple_irq);
			set_irq_handler(irq, handle_simple_irq);
			break;
			break;
#endif /* !CONFIG_TICKSOURCE_CORETMR */
#endif
		case IRQ_CORETMR:
		case IRQ_CORETMR:
			set_irq_handler(irq, handle_simple_irq);
			set_irq_handler(irq, handle_simple_irq);
			break;
			break;
@@ -1071,11 +1079,6 @@ int __init init_arch_irq(void)
			set_irq_handler(irq, handle_level_irq);
			set_irq_handler(irq, handle_level_irq);
			break;
			break;
#else /* !CONFIG_IPIPE */
#else /* !CONFIG_IPIPE */
#ifdef CONFIG_TICKSOURCE_GPTMR0
		case IRQ_TIMER0:
			set_irq_handler(irq, handle_percpu_irq);
			break;
#endif /* CONFIG_TICKSOURCE_GPTMR0 */
		default:
		default:
			set_irq_handler(irq, handle_simple_irq);
			set_irq_handler(irq, handle_simple_irq);
			break;
			break;