s390_ext.h 1.0 KB

12345678910111213141516171819202122232425262728293031323334
  1. #ifndef _S390_EXTINT_H
  2. #define _S390_EXTINT_H
  3. /*
  4. * include/asm-s390/s390_ext.h
  5. *
  6. * S390 version
  7. * Copyright (C) 1999,2000 IBM Deutschland Entwicklung GmbH, IBM Corporation
  8. * Author(s): Holger Smolinski (Holger.Smolinski@de.ibm.com),
  9. * Martin Schwidefsky (schwidefsky@de.ibm.com)
  10. */
  11. typedef void (*ext_int_handler_t)(struct pt_regs *regs, __u16 code);
  12. /*
  13. * Warning: if you change ext_int_info_t you have to change the
  14. * external interrupt handler in entry.S too.
  15. */
  16. typedef struct ext_int_info_t {
  17. struct ext_int_info_t *next;
  18. ext_int_handler_t handler;
  19. __u16 code;
  20. } __attribute__ ((packed)) ext_int_info_t;
  21. extern ext_int_info_t *ext_int_hash[];
  22. int register_external_interrupt(__u16 code, ext_int_handler_t handler);
  23. int register_early_external_interrupt(__u16 code, ext_int_handler_t handler,
  24. ext_int_info_t *info);
  25. int unregister_external_interrupt(__u16 code, ext_int_handler_t handler);
  26. int unregister_early_external_interrupt(__u16 code, ext_int_handler_t handler,
  27. ext_int_info_t *info);
  28. #endif