• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2010 Google, Inc.
3  *
4  * This software is licensed under the terms of the GNU General Public
5  * License version 2, as published by the Free Software Foundation, and
6  * may be copied, distributed, and modified under those terms.
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11  * GNU General Public License for more details.
12  */
13 
14 #ifndef __ASM_FIQ_GLUE_H
15 #define __ASM_FIQ_GLUE_H
16 
17 struct fiq_glue_handler {
18 	void (*fiq)(struct fiq_glue_handler *h, void *regs, void *svc_sp);
19 	void (*resume)(struct fiq_glue_handler *h);
20 };
21 typedef void (*fiq_return_handler_t)(void);
22 
23 int fiq_glue_register_handler(struct fiq_glue_handler *handler);
24 int fiq_glue_set_return_handler(fiq_return_handler_t fiq_return);
25 int fiq_glue_clear_return_handler(fiq_return_handler_t fiq_return);
26 
27 #ifdef CONFIG_FIQ_GLUE
28 void fiq_glue_resume(void);
29 #else
fiq_glue_resume(void)30 static inline void fiq_glue_resume(void) {}
31 #endif
32 
33 #endif
34