irq.c 690 B

12345678910111213141516171819202122232425
  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. #include <linux/interrupt.h>
  11. #include <plat/irq.h>
  12. void __init plat_fpga_init_IRQ(void)
  13. {
  14. /*
  15. * SMP Hack because UART IRQ hardwired to cpu0 (boot-cpu) but if the
  16. * request_irq() comes from any other CPU, the low level IRQ unamsking
  17. * essential for getting Interrupts won't be enabled on cpu0, locking
  18. * up the UART state machine.
  19. */
  20. #ifdef CONFIG_SMP
  21. arch_unmask_irq(UART0_IRQ);
  22. #endif
  23. }