irq.h 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /*
  2. * This file is subject to the terms and conditions of the GNU General Public
  3. * License. See the file COPYING in the main directory of this archive
  4. * for more details.
  5. *
  6. * Changed by HuTao Apr18, 2003
  7. *
  8. * Copyright was missing when I got the code so took from MIPS arch ...MaTed---
  9. * Copyright (C) 1994 by Waldorf GMBH, written by Ralf Baechle
  10. * Copyright (C) 1995, 96, 97, 98, 99, 2000, 2001 by Ralf Baechle
  11. *
  12. * Adapted for BlackFin (ADI) by Ted Ma <mated@sympatico.ca>
  13. * Copyright (c) 2002 Arcturus Networks Inc. (www.arcturusnetworks.com)
  14. * Copyright (c) 2002 Lineo, Inc. <mattw@lineo.com>
  15. */
  16. #ifndef _BFIN_IRQ_H_
  17. #define _BFIN_IRQ_H_
  18. #include <linux/irqflags.h>
  19. /* SYS_IRQS and NR_IRQS are defined in <mach-bf5xx/irq.h> */
  20. #include <mach/irq.h>
  21. #if ANOMALY_05000244 && defined(CONFIG_BFIN_ICACHE)
  22. # define NOP_PAD_ANOMALY_05000244 "nop; nop;"
  23. #else
  24. # define NOP_PAD_ANOMALY_05000244
  25. #endif
  26. #define idle_with_irq_disabled() \
  27. __asm__ __volatile__( \
  28. NOP_PAD_ANOMALY_05000244 \
  29. ".align 8;" \
  30. "sti %0;" \
  31. "idle;" \
  32. : \
  33. : "d" (bfin_irq_flags) \
  34. )
  35. #include <asm-generic/irq.h>
  36. #endif /* _BFIN_IRQ_H_ */