patch-2.1.96 linux/drivers/scsi/advansys.c
Next file: linux/drivers/scsi/aha1542.c
Previous file: linux/drivers/scsi/a3000.c
Back to the patch index
Back to the overall index
- Lines: 58
- Date:
Mon Apr 13 13:32:24 1998
- Orig file:
v2.1.95/linux/drivers/scsi/advansys.c
- Orig date:
Thu Feb 12 20:56:10 1998
diff -u --recursive --new-file v2.1.95/linux/drivers/scsi/advansys.c linux/drivers/scsi/advansys.c
@@ -668,6 +668,9 @@
#include <linux/blk.h>
#include <linux/stat.h>
#endif /* version >= v1.3.0 */
+#if LINUX_VERSION_CODE >= ASC_LINUX_VERSION(2,1,95)
+#include <asm/spinlock.h>
+#endif
#include "scsi.h"
#include "hosts.h"
#include "sd.h"
@@ -3841,8 +3844,11 @@
#endif /* version >= v1.3.0 */
#if LINUX_VERSION_CODE < ASC_LINUX_VERSION(1,3,70)
STATIC void advansys_interrupt(int, struct pt_regs *);
-#else /* version >= v1.3.70 */
+#elif LINUX_VERSION_CODE < ASC_LINUX_VERSION(2,1,95)
+STATIC void advansys_interrupt(int, void *, struct pt_regs *);
+#else /* version >= 2.1.95 */
STATIC void advansys_interrupt(int, void *, struct pt_regs *);
+STATIC void do_advansys_interrupt(int, void *, struct pt_regs *);
#endif /* version >= v1.3.70 */
#if LINUX_VERSION_CODE >= ASC_LINUX_VERSION(1,3,89)
STATIC void advansys_select_queue_depths(struct Scsi_Host *,
@@ -4880,10 +4886,14 @@
#if LINUX_VERSION_CODE < ASC_LINUX_VERSION(1,3,70)
if ((ret = request_irq(shp->irq, advansys_interrupt,
SA_INTERRUPT, "advansys")) != 0)
-#else /* version >= v1.3.70 */
+#elif LINUX_VERSION_CODE < ASC_LINUX_VERSION(2,1,95)
if ((ret = request_irq(shp->irq, advansys_interrupt,
SA_INTERRUPT | (share_irq == TRUE ? SA_SHIRQ : 0),
"advansys", boardp)) != 0)
+#else /* version >= 2.1.95 */
+ if ((ret = request_irq(shp->irq, do_advansys_interrupt,
+ SA_INTERRUPT | (share_irq == TRUE ? SA_SHIRQ : 0),
+ "advansys", boardp)) != 0)
#endif /* version >= v1.3.70 */
{
ASC_PRINT2(
@@ -6204,6 +6214,18 @@
ASC_DBG(1, "advansys_interrupt: end\n");
return;
}
+
+#if LINUX_VERSION_CODE >= ASC_LINUX_VERSION(2,1,95)
+static void
+do_advansys_interrupt(int irq, void *dev_id, struct pt_regs *regs)
+{
+ unsigned long flags;
+
+ spin_lock_irqsave(&io_request_lock, flags);
+ advansys_interrupt(irq, dev_id, regs);
+ spin_unlock_irqrestore(&io_request_lock, flags);
+}
+#endif
#if LINUX_VERSION_CODE >= ASC_LINUX_VERSION(1,3,89)
/*
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov