1/*
2 *  linux/include/asm-arm/fiq.h
3 *
4 * Support for FIQ on ARM architectures.
5 * Written by Philip Blundell <philb@gnu.org>, 1998
6 * Re-written by Russell King
7 */
8
9#ifndef __ASM_FIQ_H
10#define __ASM_FIQ_H
11
12#include <asm/ptrace.h>
13
14struct fiq_handler {
15	struct fiq_handler *next;
16	/* Name
17	 */
18	const char *name;
19	/* Called to ask driver to relinquish/
20	 * reacquire FIQ
21	 * return zero to accept, or -<errno>
22	 */
23	int (*fiq_op)(void *, int relinquish);
24	/* data for the relinquish/reacquire functions
25	 */
26	void *dev_id;
27};
28
29extern int claim_fiq(struct fiq_handler *f);
30extern void release_fiq(struct fiq_handler *f);
31extern void set_fiq_handler(void *start, unsigned int length);
32extern void set_fiq_regs(struct pt_regs *regs);
33extern void get_fiq_regs(struct pt_regs *regs);
34extern void enable_fiq(int fiq);
35extern void disable_fiq(int fiq);
36
37#endif
38