patch-2.3.17 linux/include/asm-m68k/ide.h

Next file: linux/include/asm-m68k/init.h
Previous file: linux/include/asm-m68k/entry.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.3.16/linux/include/asm-m68k/ide.h linux/include/asm-m68k/ide.h
@@ -38,6 +38,7 @@
 #include <asm/irq.h>
 
 #ifdef CONFIG_ATARI
+#include <linux/interrupt.h>
 #include <asm/atari_stdma.h>
 #endif
 
@@ -63,7 +64,7 @@
 static __inline__ ide_ioreg_t ide_default_io_base(int index)
 {
 	if (MACH_IS_Q40)
-		return q40ide_default_io_base(index);
+		return (ide_ioreg_t)q40ide_default_io_base(index);
 	else return 0;
 }
 
@@ -82,7 +83,8 @@
 	if (MACH_IS_Q40)
 		return q40_ide_init_hwif_ports(hw, (q40ide_ioreg_t) data_port, (q40ide_ioreg_t) ctrl_port, irq);
 #endif
-	printk("ide_init_hwif_ports: must not be called\n");
+	if (data_port || ctrl_port)
+		printk("ide_init_hwif_ports: must not be called\n");
 }
 
 /*
@@ -104,10 +106,6 @@
 	} b;
 	} select_t;
 
-#ifdef CONFIG_MAC	/* MSch: Hack; wrapper for ide_intr */
-void mac_ide_intr(int irq, void *dev_id, struct pt_regs *regs);
-#endif
-
 static __inline__ int ide_request_irq(unsigned int irq, void (*handler)(int, void *, struct pt_regs *),
 			unsigned long flags, const char *device, void *dev_id)
 {
@@ -121,11 +119,7 @@
 #endif /* CONFIG_Q40*/
 #ifdef CONFIG_MAC
 	if (MACH_IS_MAC)
-#if 0	/* MSch Hack: maybe later we'll call ide_intr without a wrapper */
-	return nubus_request_irq(12, dev_id, handler);
-#else
-	return nubus_request_irq(12, dev_id, mac_ide_intr);
-#endif
+		return request_irq(irq, handler, 0, device, dev_id);
 #endif /* CONFIG_MAC */
 	return 0;
 }
@@ -142,7 +136,7 @@
 #endif /* CONFIG_Q40*/
 #ifdef CONFIG_MAC
 	if (MACH_IS_MAC)
-		nubus_free_irq(12);
+		free_irq(irq, dev_id);
 #endif /* CONFIG_MAC */
 }
 

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)