Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux...
[sfrench/cifs-2.6.git] / arch / arc / plat-arcfpga / irq.c
1 /*
2  * ARC FPGA Platform IRQ hookups
3  *
4  * Copyright (C) 2012 Synopsys, Inc. (www.synopsys.com)
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License version 2 as
8  * published by the Free Software Foundation.
9  */
10
11 #include <linux/interrupt.h>
12 #include <plat/irq.h>
13
14 void __init plat_fpga_init_IRQ(void)
15 {
16         /*
17          * SMP Hack because UART IRQ hardwired to cpu0 (boot-cpu) but if the
18          * request_irq() comes from any other CPU, the low level IRQ unamsking
19          * essential for getting Interrupts won't be enabled on cpu0, locking
20          * up the UART state machine.
21          */
22 #ifdef CONFIG_SMP
23         arch_unmask_irq(UART0_IRQ);
24 #endif
25 }