linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git] / arch / m68k / mac / config.c
index 85dda10..14f8d3f 100644 (file)
@@ -10,6 +10,7 @@
  * Miscellaneous linux stuff
  */
 
+#include <linux/config.h>
 #include <linux/module.h>
 #include <linux/types.h>
 #include <linux/mm.h>
@@ -88,11 +89,38 @@ extern void mac_debugging_long(int, long);
 
 static void mac_get_model(char *str);
 
+void mac_bang(int irq, void *vector, struct pt_regs *p)
+{
+       printk(KERN_INFO "Resetting ...\n");
+       mac_reset();
+}
+
 static void mac_sched_init(irqreturn_t (*vector)(int, void *, struct pt_regs *))
 {
        via_init_clock(vector);
 }
 
+#if 0
+void mac_waitbut (void)
+{
+       ;
+}
+#endif
+
+extern irqreturn_t mac_default_handler(int, void *, struct pt_regs *);
+
+irqreturn_t (*mac_handlers[8])(int, void *, struct pt_regs *)=
+{
+       mac_default_handler,
+       mac_default_handler,
+       mac_default_handler,
+       mac_default_handler,
+       mac_default_handler,
+       mac_default_handler,
+       mac_default_handler,
+       mac_default_handler
+};
+
 /*
  * Parse a Macintosh-specific record in the bootinfo
  */
@@ -168,7 +196,13 @@ void __init config_mac(void)
 
        mach_sched_init      = mac_sched_init;
        mach_init_IRQ        = mac_init_IRQ;
+       mach_request_irq     = mac_request_irq;
+       mach_free_irq        = mac_free_irq;
+       enable_irq           = mac_enable_irq;
+       disable_irq          = mac_disable_irq;
        mach_get_model   = mac_get_model;
+       mach_default_handler = &mac_handlers;
+       mach_get_irq_list    = show_mac_interrupts;
        mach_gettimeoffset   = mac_gettimeoffset;
 #warning move to adb/via init
 #if 0