sun3ints.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. /*
  2. * sun3ints.h -- Linux/Sun3 interrupt handling code definitions
  3. *
  4. * Erik Verbruggen (erik@bigmama.xtdnet.nl)
  5. *
  6. * This file is subject to the terms and conditions of the GNU General Public
  7. * License. See the file COPYING in the main directory of this archive for
  8. * more details.
  9. */
  10. #ifndef SUN3INTS_H
  11. #define SUN3INTS_H
  12. #include <linux/types.h>
  13. #include <linux/kernel.h>
  14. #include <linux/sched.h>
  15. #include <linux/kernel_stat.h>
  16. #include <linux/interrupt.h>
  17. #include <linux/seq_file.h>
  18. #include <asm/segment.h>
  19. #include <asm/intersil.h>
  20. #include <asm/oplib.h>
  21. #define SUN3_INT_VECS 192
  22. void sun3_enable_irq(unsigned int irq);
  23. void sun3_disable_irq(unsigned int irq);
  24. int sun3_request_irq(unsigned int irq,
  25. irqreturn_t (*handler)(int, void *, struct pt_regs *),
  26. unsigned long flags, const char *devname, void *dev_id
  27. );
  28. extern void sun3_init_IRQ (void);
  29. extern irqreturn_t (*sun3_default_handler[]) (int, void *, struct pt_regs *);
  30. extern void sun3_free_irq (unsigned int irq, void *dev_id);
  31. extern void sun3_enable_interrupts (void);
  32. extern void sun3_disable_interrupts (void);
  33. extern int show_sun3_interrupts(struct seq_file *, void *);
  34. extern irqreturn_t sun3_process_int(int, struct pt_regs *);
  35. extern volatile unsigned char* sun3_intreg;
  36. /* master list of VME vectors -- don't fuck with this */
  37. #define SUN3_VEC_FLOPPY 0x40
  38. #define SUN3_VEC_VMESCSI0 0x40
  39. #define SUN3_VEC_VMESCSI1 0x41
  40. #define SUN3_VEC_CG 0xA8
  41. #endif /* SUN3INTS_H */