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 11 #ifndef SUN3INTS_H 12 #define SUN3INTS_H 13 14 #include <linux/types.h> 15 #include <linux/kernel.h> 16 #include <linux/sched.h> 17 #include <linux/kernel_stat.h> 18 #include <linux/interrupt.h> 19 #include <asm/segment.h> 20 #include <asm/intersil.h> 21 #include <asm/oplib.h> 22 23 #define SUN3_INT_VECS 192 24 25 void sun3_enable_irq(unsigned int irq); 26 void sun3_disable_irq(unsigned int irq); 27 int sun3_request_irq(unsigned int irq, 28 void (*handler)(int, void *, struct pt_regs *), 29 unsigned long flags, const char *devname, void *dev_id 30 ); 31 extern void sun3_init_IRQ (void); 32 extern void (*sun3_default_handler[]) (int, void *, struct pt_regs *); 33 extern void (*sun3_inthandler[]) (int, void *, struct pt_regs *); 34 extern void sun3_free_irq (unsigned int irq, void *dev_id); 35 extern void sun3_enable_interrupts (void); 36 extern void sun3_disable_interrupts (void); 37 extern int sun3_get_irq_list(char *buf); 38 extern void sun3_process_int(int, struct pt_regs *); 39 extern volatile unsigned char* sun3_intreg; 40 41 /* master list of VME vectors -- don't fuck with this */ 42 #define SUN3_VEC_FLOPPY 0x40 43 #define SUN3_VEC_VMESCSI0 0x40 44 #define SUN3_VEC_VMESCSI1 0x41 45 #define SUN3_VEC_CG 0xA8 46 47 48 #endif /* SUN3INTS_H */ 49