| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | #ifndef _S390_EXTINT_H | 
 | 2 | #define _S390_EXTINT_H | 
 | 3 |  | 
 | 4 | /* | 
 | 5 |  *  include/asm-s390/s390_ext.h | 
 | 6 |  * | 
 | 7 |  *  S390 version | 
| Christian Borntraeger | ca08de0 | 2007-10-12 16:11:36 +0200 | [diff] [blame] | 8 |  *    Copyright IBM Corp. 1999,2007 | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 9 |  *    Author(s): Holger Smolinski (Holger.Smolinski@de.ibm.com), | 
 | 10 |  *               Martin Schwidefsky (schwidefsky@de.ibm.com) | 
 | 11 |  */ | 
 | 12 |  | 
| Christian Borntraeger | cb1863a | 2007-07-27 12:29:15 +0200 | [diff] [blame] | 13 | #include <linux/types.h> | 
 | 14 |  | 
| Heiko Carstens | 5a489b9 | 2006-10-06 16:38:35 +0200 | [diff] [blame] | 15 | typedef void (*ext_int_handler_t)(__u16 code); | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 16 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 17 | typedef struct ext_int_info_t { | 
 | 18 | 	struct ext_int_info_t *next; | 
 | 19 | 	ext_int_handler_t handler; | 
 | 20 | 	__u16 code; | 
| Christian Borntraeger | ca08de0 | 2007-10-12 16:11:36 +0200 | [diff] [blame] | 21 | } ext_int_info_t; | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 22 |  | 
 | 23 | extern ext_int_info_t *ext_int_hash[]; | 
 | 24 |  | 
 | 25 | int register_external_interrupt(__u16 code, ext_int_handler_t handler); | 
 | 26 | int register_early_external_interrupt(__u16 code, ext_int_handler_t handler, | 
 | 27 | 				      ext_int_info_t *info); | 
 | 28 | int unregister_external_interrupt(__u16 code, ext_int_handler_t handler); | 
 | 29 | int unregister_early_external_interrupt(__u16 code, ext_int_handler_t handler, | 
 | 30 | 					ext_int_info_t *info); | 
 | 31 |  | 
 | 32 | #endif |