blob: acac5302e4eaf1860e2db8d77d2b47ee0f4cf399 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/*
Russell King4baa9922008-08-02 10:55:55 +01002 * arch/arm/include/asm/mach/irq.h
Linus Torvalds1da177e2005-04-16 15:20:36 -07003 *
4 * Copyright (C) 1995-2000 Russell King.
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#ifndef __ASM_ARM_MACH_IRQ_H
11#define __ASM_ARM_MACH_IRQ_H
12
Thomas Gleixner4a2581a2006-07-01 22:30:09 +010013#include <linux/irq.h>
14
Linus Torvalds1da177e2005-04-16 15:20:36 -070015struct seq_file;
16
Russell King664399e2005-09-04 19:45:00 +010017/*
Linus Torvalds1da177e2005-04-16 15:20:36 -070018 * This is internal. Do not use it.
19 */
20extern void (*init_arch_irq)(void);
21extern void init_FIQ(void);
22extern int show_fiq_list(struct seq_file *, void *);
Linus Torvalds1da177e2005-04-16 15:20:36 -070023
24/*
Thomas Gleixner4a2581a2006-07-01 22:30:09 +010025 * This is for easy migration, but should be changed in the source
Linus Torvalds1da177e2005-04-16 15:20:36 -070026 */
Linus Torvalds0cd61b62006-10-06 10:53:39 -070027#define do_bad_IRQ(irq,desc) \
Thomas Gleixner4a2581a2006-07-01 22:30:09 +010028do { \
29 spin_lock(&desc->lock); \
Linus Torvalds0cd61b62006-10-06 10:53:39 -070030 handle_bad_irq(irq, desc); \
Thomas Gleixner4a2581a2006-07-01 22:30:09 +010031 spin_unlock(&desc->lock); \
32} while(0)
33
Linus Torvalds1da177e2005-04-16 15:20:36 -070034#endif