aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@g5.osdl.org>2006-10-05 19:32:01 -0400
committerLinus Torvalds <torvalds@g5.osdl.org>2006-10-05 19:32:01 -0400
commit44aefd2706bb6f5b65ba2c38cd89e7609e2b43d3 (patch)
tree93824f573767da634fbc82c388b6d33cc454212b /drivers/scsi
parentc1a26e7d40fb814716950122353a1a556844286b (diff)
parent7d12e780e003f93433d49ce78cfedf4b4c52adc5 (diff)
Merge git://git.infradead.org/~dhowells/irq-2.6
* git://git.infradead.org/~dhowells/irq-2.6: IRQ: Maintain regs pointer globally rather than passing to IRQ handlers IRQ: Typedef the IRQ handler function type IRQ: Typedef the IRQ flow handler function type
Diffstat (limited to 'drivers/scsi')
-rw-r--r--drivers/scsi/3w-9xxx.c2
-rw-r--r--drivers/scsi/3w-xxxx.c3
-rw-r--r--drivers/scsi/53c700.c2
-rw-r--r--drivers/scsi/53c700.h2
-rw-r--r--drivers/scsi/53c7xx.c6
-rw-r--r--drivers/scsi/BusLogic.c2
-rw-r--r--drivers/scsi/BusLogic.h2
-rw-r--r--drivers/scsi/NCR5380.c6
-rw-r--r--drivers/scsi/NCR5380.h2
-rw-r--r--drivers/scsi/NCR53C9x.c6
-rw-r--r--drivers/scsi/NCR53C9x.h2
-rw-r--r--drivers/scsi/NCR53c406a.c11
-rw-r--r--drivers/scsi/NCR_D700.c4
-rw-r--r--drivers/scsi/NCR_Q720.c4
-rw-r--r--drivers/scsi/a100u2w.c2
-rw-r--r--drivers/scsi/a2091.c2
-rw-r--r--drivers/scsi/a3000.c2
-rw-r--r--drivers/scsi/aacraid/rx.c4
-rw-r--r--drivers/scsi/aacraid/sa.c2
-rw-r--r--drivers/scsi/advansys.c4
-rw-r--r--drivers/scsi/aha152x.c6
-rw-r--r--drivers/scsi/aha1542.c12
-rw-r--r--drivers/scsi/aha1740.c3
-rw-r--r--drivers/scsi/aic7xxx/aic79xx_osm.c2
-rw-r--r--drivers/scsi/aic7xxx/aic79xx_osm.h2
-rw-r--r--drivers/scsi/aic7xxx/aic7xxx_osm.c2
-rw-r--r--drivers/scsi/aic7xxx/aic7xxx_osm.h2
-rw-r--r--drivers/scsi/aic7xxx_old.c12
-rw-r--r--drivers/scsi/aic94xx/aic94xx_hwi.c3
-rw-r--r--drivers/scsi/aic94xx/aic94xx_hwi.h2
-rw-r--r--drivers/scsi/amiga7xx.h2
-rw-r--r--drivers/scsi/arcmsr/arcmsr_hba.c3
-rw-r--r--drivers/scsi/arm/acornscsi.c5
-rw-r--r--drivers/scsi/arm/cumana_2.c3
-rw-r--r--drivers/scsi/arm/eesox.c3
-rw-r--r--drivers/scsi/arm/powertec.c4
-rw-r--r--drivers/scsi/atari_NCR5380.c2
-rw-r--r--drivers/scsi/atari_dma_emul.c4
-rw-r--r--drivers/scsi/atari_scsi.c10
-rw-r--r--drivers/scsi/atp870u.c2
-rw-r--r--drivers/scsi/bvme6000.h2
-rw-r--r--drivers/scsi/dc395x.c3
-rw-r--r--drivers/scsi/dec_esp.c12
-rw-r--r--drivers/scsi/dpt_i2o.c2
-rw-r--r--drivers/scsi/dpti.h2
-rw-r--r--drivers/scsi/eata.c5
-rw-r--r--drivers/scsi/eata_pio.c7
-rw-r--r--drivers/scsi/esp.c4
-rw-r--r--drivers/scsi/fd_mcs.c4
-rw-r--r--drivers/scsi/fdomain.c6
-rw-r--r--drivers/scsi/gdth.c6
-rw-r--r--drivers/scsi/gvp11.c2
-rw-r--r--drivers/scsi/hptiop.c2
-rw-r--r--drivers/scsi/ibmmca.c3
-rw-r--r--drivers/scsi/ibmvscsi/rpa_vscsi.c5
-rw-r--r--drivers/scsi/in2000.c2
-rw-r--r--drivers/scsi/initio.c2
-rw-r--r--drivers/scsi/ipr.c3
-rw-r--r--drivers/scsi/ips.c4
-rw-r--r--drivers/scsi/lpfc/lpfc_crtn.h2
-rw-r--r--drivers/scsi/lpfc/lpfc_sli.c2
-rw-r--r--drivers/scsi/mac53c94.c10
-rw-r--r--drivers/scsi/mac_esp.c14
-rw-r--r--drivers/scsi/megaraid.c6
-rw-r--r--drivers/scsi/megaraid.h4
-rw-r--r--drivers/scsi/megaraid/megaraid_mbox.c4
-rw-r--r--drivers/scsi/megaraid/megaraid_sas.c2
-rw-r--r--drivers/scsi/mesh.c8
-rw-r--r--drivers/scsi/mvme147.c2
-rw-r--r--drivers/scsi/mvme16x.h2
-rw-r--r--drivers/scsi/ncr53c8xx.c2
-rw-r--r--drivers/scsi/ncr53c8xx.h2
-rw-r--r--drivers/scsi/nsp32.c4
-rw-r--r--drivers/scsi/pcmcia/nsp_cs.c2
-rw-r--r--drivers/scsi/pcmcia/nsp_cs.h2
-rw-r--r--drivers/scsi/pcmcia/sym53c500_cs.c2
-rw-r--r--drivers/scsi/psi240i.c7
-rw-r--r--drivers/scsi/qla1280.c2
-rw-r--r--drivers/scsi/qla2xxx/qla_def.h2
-rw-r--r--drivers/scsi/qla2xxx/qla_gbl.h6
-rw-r--r--drivers/scsi/qla2xxx/qla_inline.h2
-rw-r--r--drivers/scsi/qla2xxx/qla_isr.c9
-rw-r--r--drivers/scsi/qla4xxx/ql4_glbl.h2
-rw-r--r--drivers/scsi/qla4xxx/ql4_isr.c3
-rw-r--r--drivers/scsi/qlogicfas408.c6
-rw-r--r--drivers/scsi/qlogicfas408.h2
-rw-r--r--drivers/scsi/qlogicpti.c4
-rw-r--r--drivers/scsi/seagate.c11
-rw-r--r--drivers/scsi/sgiwd93.c2
-rw-r--r--drivers/scsi/stex.c2
-rw-r--r--drivers/scsi/sun3_NCR5380.c2
-rw-r--r--drivers/scsi/sun3_scsi.c6
-rw-r--r--drivers/scsi/sun3_scsi_vme.c6
-rw-r--r--drivers/scsi/sym53c416.c3
-rw-r--r--drivers/scsi/sym53c8xx_2/sym_glue.c2
-rw-r--r--drivers/scsi/tmscsim.c6
-rw-r--r--drivers/scsi/u14-34f.c5
-rw-r--r--drivers/scsi/ultrastor.c13
-rw-r--r--drivers/scsi/wd7000.c2
99 files changed, 185 insertions, 220 deletions
diff --git a/drivers/scsi/3w-9xxx.c b/drivers/scsi/3w-9xxx.c
index da173159cedb..5f8c26cd66ca 100644
--- a/drivers/scsi/3w-9xxx.c
+++ b/drivers/scsi/3w-9xxx.c
@@ -1192,7 +1192,7 @@ out:
1192} /* End twa_initialize_device_extension() */ 1192} /* End twa_initialize_device_extension() */
1193 1193
1194/* This function is the interrupt service routine */ 1194/* This function is the interrupt service routine */
1195static irqreturn_t twa_interrupt(int irq, void *dev_instance, struct pt_regs *regs) 1195static irqreturn_t twa_interrupt(int irq, void *dev_instance)
1196{ 1196{
1197 int request_id, error = 0; 1197 int request_id, error = 0;
1198 u32 status_reg_value; 1198 u32 status_reg_value;
diff --git a/drivers/scsi/3w-xxxx.c b/drivers/scsi/3w-xxxx.c
index 2d4cb6721fa6..99a259c5a0c0 100644
--- a/drivers/scsi/3w-xxxx.c
+++ b/drivers/scsi/3w-xxxx.c
@@ -2078,8 +2078,7 @@ static int tw_scsi_queue(struct scsi_cmnd *SCpnt, void (*done)(struct scsi_cmnd
2078} /* End tw_scsi_queue() */ 2078} /* End tw_scsi_queue() */
2079 2079
2080/* This function is the interrupt service routine */ 2080/* This function is the interrupt service routine */
2081static irqreturn_t tw_interrupt(int irq, void *dev_instance, 2081static irqreturn_t tw_interrupt(int irq, void *dev_instance)
2082 struct pt_regs *regs)
2083{ 2082{
2084 int request_id; 2083 int request_id;
2085 u32 status_reg_value; 2084 u32 status_reg_value;
diff --git a/drivers/scsi/53c700.c b/drivers/scsi/53c700.c
index 15ce40a7053a..562432d017b0 100644
--- a/drivers/scsi/53c700.c
+++ b/drivers/scsi/53c700.c
@@ -1462,7 +1462,7 @@ NCR_700_start_command(struct scsi_cmnd *SCp)
1462} 1462}
1463 1463
1464irqreturn_t 1464irqreturn_t
1465NCR_700_intr(int irq, void *dev_id, struct pt_regs *regs) 1465NCR_700_intr(int irq, void *dev_id)
1466{ 1466{
1467 struct Scsi_Host *host = (struct Scsi_Host *)dev_id; 1467 struct Scsi_Host *host = (struct Scsi_Host *)dev_id;
1468 struct NCR_700_Host_Parameters *hostdata = 1468 struct NCR_700_Host_Parameters *hostdata =
diff --git a/drivers/scsi/53c700.h b/drivers/scsi/53c700.h
index 97ebe71b701b..f5c3caf344a7 100644
--- a/drivers/scsi/53c700.h
+++ b/drivers/scsi/53c700.h
@@ -57,7 +57,7 @@ struct NCR_700_Host_Parameters;
57struct Scsi_Host *NCR_700_detect(struct scsi_host_template *, 57struct Scsi_Host *NCR_700_detect(struct scsi_host_template *,
58 struct NCR_700_Host_Parameters *, struct device *); 58 struct NCR_700_Host_Parameters *, struct device *);
59int NCR_700_release(struct Scsi_Host *host); 59int NCR_700_release(struct Scsi_Host *host);
60irqreturn_t NCR_700_intr(int, void *, struct pt_regs *); 60irqreturn_t NCR_700_intr(int, void *);
61 61
62 62
63enum NCR_700_Host_State { 63enum NCR_700_Host_State {
diff --git a/drivers/scsi/53c7xx.c b/drivers/scsi/53c7xx.c
index acf292736b4e..640536ef77dc 100644
--- a/drivers/scsi/53c7xx.c
+++ b/drivers/scsi/53c7xx.c
@@ -323,7 +323,7 @@ static int shutdown (struct Scsi_Host *host);
323static void abnormal_finished (struct NCR53c7x0_cmd *cmd, int result); 323static void abnormal_finished (struct NCR53c7x0_cmd *cmd, int result);
324static int disable (struct Scsi_Host *host); 324static int disable (struct Scsi_Host *host);
325static int NCR53c7xx_run_tests (struct Scsi_Host *host); 325static int NCR53c7xx_run_tests (struct Scsi_Host *host);
326static irqreturn_t NCR53c7x0_intr(int irq, void *dev_id, struct pt_regs * regs); 326static irqreturn_t NCR53c7x0_intr(int irq, void *dev_id);
327static void NCR53c7x0_intfly (struct Scsi_Host *host); 327static void NCR53c7x0_intfly (struct Scsi_Host *host);
328static int ncr_halt (struct Scsi_Host *host); 328static int ncr_halt (struct Scsi_Host *host);
329static void intr_phase_mismatch (struct Scsi_Host *host, struct NCR53c7x0_cmd 329static void intr_phase_mismatch (struct Scsi_Host *host, struct NCR53c7x0_cmd
@@ -4227,7 +4227,7 @@ restart:
4227} 4227}
4228 4228
4229/* 4229/*
4230 * Function : static irqreturn_t NCR53c7x0_intr (int irq, void *dev_id, struct pt_regs * regs) 4230 * Function : static irqreturn_t NCR53c7x0_intr (int irq, void *dev_id)
4231 * 4231 *
4232 * Purpose : handle NCR53c7x0 interrupts for all NCR devices sharing 4232 * Purpose : handle NCR53c7x0 interrupts for all NCR devices sharing
4233 * the same IRQ line. 4233 * the same IRQ line.
@@ -4241,7 +4241,7 @@ restart:
4241 */ 4241 */
4242 4242
4243static irqreturn_t 4243static irqreturn_t
4244NCR53c7x0_intr (int irq, void *dev_id, struct pt_regs * regs) 4244NCR53c7x0_intr (int irq, void *dev_id)
4245{ 4245{
4246 NCR53c7x0_local_declare(); 4246 NCR53c7x0_local_declare();
4247 struct Scsi_Host *host; /* Host we are looking at */ 4247 struct Scsi_Host *host; /* Host we are looking at */
diff --git a/drivers/scsi/BusLogic.c b/drivers/scsi/BusLogic.c
index 4ea49fd7965e..7c59bba98798 100644
--- a/drivers/scsi/BusLogic.c
+++ b/drivers/scsi/BusLogic.c
@@ -2653,7 +2653,7 @@ static void BusLogic_ProcessCompletedCCBs(struct BusLogic_HostAdapter *HostAdapt
2653 Adapters. 2653 Adapters.
2654*/ 2654*/
2655 2655
2656static irqreturn_t BusLogic_InterruptHandler(int IRQ_Channel, void *DeviceIdentifier, struct pt_regs *InterruptRegisters) 2656static irqreturn_t BusLogic_InterruptHandler(int IRQ_Channel, void *DeviceIdentifier)
2657{ 2657{
2658 struct BusLogic_HostAdapter *HostAdapter = (struct BusLogic_HostAdapter *) DeviceIdentifier; 2658 struct BusLogic_HostAdapter *HostAdapter = (struct BusLogic_HostAdapter *) DeviceIdentifier;
2659 unsigned long ProcessorFlags; 2659 unsigned long ProcessorFlags;
diff --git a/drivers/scsi/BusLogic.h b/drivers/scsi/BusLogic.h
index d6d1d5613c8a..cca6d45eee4d 100644
--- a/drivers/scsi/BusLogic.h
+++ b/drivers/scsi/BusLogic.h
@@ -1347,7 +1347,7 @@ static int BusLogic_BIOSDiskParameters(struct scsi_device *, struct block_device
1347static int BusLogic_ProcDirectoryInfo(struct Scsi_Host *, char *, char **, off_t, int, int); 1347static int BusLogic_ProcDirectoryInfo(struct Scsi_Host *, char *, char **, off_t, int, int);
1348static int BusLogic_SlaveConfigure(struct scsi_device *); 1348static int BusLogic_SlaveConfigure(struct scsi_device *);
1349static void BusLogic_QueueCompletedCCB(struct BusLogic_CCB *); 1349static void BusLogic_QueueCompletedCCB(struct BusLogic_CCB *);
1350static irqreturn_t BusLogic_InterruptHandler(int, void *, struct pt_regs *); 1350static irqreturn_t BusLogic_InterruptHandler(int, void *);
1351static int BusLogic_ResetHostAdapter(struct BusLogic_HostAdapter *, boolean HardReset); 1351static int BusLogic_ResetHostAdapter(struct BusLogic_HostAdapter *, boolean HardReset);
1352static void BusLogic_Message(enum BusLogic_MessageLevel, char *, struct BusLogic_HostAdapter *, ...); 1352static void BusLogic_Message(enum BusLogic_MessageLevel, char *, struct BusLogic_HostAdapter *, ...);
1353static int __init BusLogic_Setup(char *); 1353static int __init BusLogic_Setup(char *);
diff --git a/drivers/scsi/NCR5380.c b/drivers/scsi/NCR5380.c
index 616810ad17d8..a6aa91072880 100644
--- a/drivers/scsi/NCR5380.c
+++ b/drivers/scsi/NCR5380.c
@@ -558,8 +558,7 @@ static int probe_irq __initdata = 0;
558 * used by the IRQ probe code. 558 * used by the IRQ probe code.
559 */ 559 */
560 560
561static irqreturn_t __init probe_intr(int irq, void *dev_id, 561static irqreturn_t __init probe_intr(int irq, void *dev_id)
562 struct pt_regs *regs)
563{ 562{
564 probe_irq = irq; 563 probe_irq = irq;
565 return IRQ_HANDLED; 564 return IRQ_HANDLED;
@@ -1148,7 +1147,6 @@ static void NCR5380_main(void *p)
1148 * NCR5380_intr - generic NCR5380 irq handler 1147 * NCR5380_intr - generic NCR5380 irq handler
1149 * @irq: interrupt number 1148 * @irq: interrupt number
1150 * @dev_id: device info 1149 * @dev_id: device info
1151 * @regs: registers (unused)
1152 * 1150 *
1153 * Handle interrupts, reestablishing I_T_L or I_T_L_Q nexuses 1151 * Handle interrupts, reestablishing I_T_L or I_T_L_Q nexuses
1154 * from the disconnected queue, and restarting NCR5380_main() 1152 * from the disconnected queue, and restarting NCR5380_main()
@@ -1157,7 +1155,7 @@ static void NCR5380_main(void *p)
1157 * Locks: takes the needed instance locks 1155 * Locks: takes the needed instance locks
1158 */ 1156 */
1159 1157
1160static irqreturn_t NCR5380_intr(int irq, void *dev_id, struct pt_regs *regs) 1158static irqreturn_t NCR5380_intr(int irq, void *dev_id)
1161{ 1159{
1162 NCR5380_local_declare(); 1160 NCR5380_local_declare();
1163 struct Scsi_Host *instance = (struct Scsi_Host *)dev_id; 1161 struct Scsi_Host *instance = (struct Scsi_Host *)dev_id;
diff --git a/drivers/scsi/NCR5380.h b/drivers/scsi/NCR5380.h
index c3462e358d1c..1bc73de496b0 100644
--- a/drivers/scsi/NCR5380.h
+++ b/drivers/scsi/NCR5380.h
@@ -296,7 +296,7 @@ static int NCR5380_init(struct Scsi_Host *instance, int flags);
296static void NCR5380_exit(struct Scsi_Host *instance); 296static void NCR5380_exit(struct Scsi_Host *instance);
297static void NCR5380_information_transfer(struct Scsi_Host *instance); 297static void NCR5380_information_transfer(struct Scsi_Host *instance);
298#ifndef DONT_USE_INTR 298#ifndef DONT_USE_INTR
299static irqreturn_t NCR5380_intr(int irq, void *dev_id, struct pt_regs *regs); 299static irqreturn_t NCR5380_intr(int irq, void *dev_id);
300#endif 300#endif
301static void NCR5380_main(void *ptr); 301static void NCR5380_main(void *ptr);
302static void NCR5380_print_options(struct Scsi_Host *instance); 302static void NCR5380_print_options(struct Scsi_Host *instance);
diff --git a/drivers/scsi/NCR53C9x.c b/drivers/scsi/NCR53C9x.c
index bdc6bb262bce..3c912ee29da0 100644
--- a/drivers/scsi/NCR53C9x.c
+++ b/drivers/scsi/NCR53C9x.c
@@ -96,7 +96,7 @@ enum {
96static struct NCR_ESP *espchain; 96static struct NCR_ESP *espchain;
97int nesps = 0, esps_in_use = 0, esps_running = 0; 97int nesps = 0, esps_in_use = 0, esps_running = 0;
98 98
99irqreturn_t esp_intr(int irq, void *dev_id, struct pt_regs *pregs); 99irqreturn_t esp_intr(int irq, void *dev_id);
100 100
101/* Debugging routines */ 101/* Debugging routines */
102static struct esp_cmdstrings { 102static struct esp_cmdstrings {
@@ -3533,7 +3533,7 @@ state_machine:
3533} 3533}
3534 3534
3535#ifndef CONFIG_SMP 3535#ifndef CONFIG_SMP
3536irqreturn_t esp_intr(int irq, void *dev_id, struct pt_regs *pregs) 3536irqreturn_t esp_intr(int irq, void *dev_id)
3537{ 3537{
3538 struct NCR_ESP *esp; 3538 struct NCR_ESP *esp;
3539 unsigned long flags; 3539 unsigned long flags;
@@ -3570,7 +3570,7 @@ repeat:
3570} 3570}
3571#else 3571#else
3572/* For SMP we only service one ESP on the list list at our IRQ level! */ 3572/* For SMP we only service one ESP on the list list at our IRQ level! */
3573irqreturn_t esp_intr(int irq, void *dev_id, struct pt_regs *pregs) 3573irqreturn_t esp_intr(int irq, void *dev_id)
3574{ 3574{
3575 struct NCR_ESP *esp; 3575 struct NCR_ESP *esp;
3576 unsigned long flags; 3576 unsigned long flags;
diff --git a/drivers/scsi/NCR53C9x.h b/drivers/scsi/NCR53C9x.h
index 481653c977cf..521e3f842cfd 100644
--- a/drivers/scsi/NCR53C9x.h
+++ b/drivers/scsi/NCR53C9x.h
@@ -656,7 +656,7 @@ extern struct NCR_ESP *esp_allocate(struct scsi_host_template *, void *);
656extern void esp_deallocate(struct NCR_ESP *); 656extern void esp_deallocate(struct NCR_ESP *);
657extern void esp_release(void); 657extern void esp_release(void);
658extern void esp_initialize(struct NCR_ESP *); 658extern void esp_initialize(struct NCR_ESP *);
659extern irqreturn_t esp_intr(int, void *, struct pt_regs *); 659extern irqreturn_t esp_intr(int, void *);
660extern const char *esp_info(struct Scsi_Host *); 660extern const char *esp_info(struct Scsi_Host *);
661extern int esp_queue(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *)); 661extern int esp_queue(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *));
662extern int esp_abort(Scsi_Cmnd *); 662extern int esp_abort(Scsi_Cmnd *);
diff --git a/drivers/scsi/NCR53c406a.c b/drivers/scsi/NCR53c406a.c
index 8472c5359023..3896278594c7 100644
--- a/drivers/scsi/NCR53c406a.c
+++ b/drivers/scsi/NCR53c406a.c
@@ -168,8 +168,8 @@ enum Phase {
168}; 168};
169 169
170/* Static function prototypes */ 170/* Static function prototypes */
171static void NCR53c406a_intr(int, void *, struct pt_regs *); 171static void NCR53c406a_intr(int, void *);
172static irqreturn_t do_NCR53c406a_intr(int, void *, struct pt_regs *); 172static irqreturn_t do_NCR53c406a_intr(int, void *);
173static void chip_init(void); 173static void chip_init(void);
174static void calc_port_addr(void); 174static void calc_port_addr(void);
175#ifndef IRQ_LEV 175#ifndef IRQ_LEV
@@ -761,19 +761,18 @@ static int NCR53c406a_biosparm(struct scsi_device *disk,
761 return 0; 761 return 0;
762} 762}
763 763
764static irqreturn_t do_NCR53c406a_intr(int unused, void *dev_id, 764static irqreturn_t do_NCR53c406a_intr(int unused, void *dev_id)
765 struct pt_regs *regs)
766{ 765{
767 unsigned long flags; 766 unsigned long flags;
768 struct Scsi_Host *dev = dev_id; 767 struct Scsi_Host *dev = dev_id;
769 768
770 spin_lock_irqsave(dev->host_lock, flags); 769 spin_lock_irqsave(dev->host_lock, flags);
771 NCR53c406a_intr(0, dev_id, regs); 770 NCR53c406a_intr(0, dev_id);
772 spin_unlock_irqrestore(dev->host_lock, flags); 771 spin_unlock_irqrestore(dev->host_lock, flags);
773 return IRQ_HANDLED; 772 return IRQ_HANDLED;
774} 773}
775 774
776static void NCR53c406a_intr(int unused, void *dev_id, struct pt_regs *regs) 775static void NCR53c406a_intr(int unused, void *dev_id)
777{ 776{
778 DEB(unsigned char fifo_size; 777 DEB(unsigned char fifo_size;
779 ) 778 )
diff --git a/drivers/scsi/NCR_D700.c b/drivers/scsi/NCR_D700.c
index d05681f9d81a..9859cd17fc57 100644
--- a/drivers/scsi/NCR_D700.c
+++ b/drivers/scsi/NCR_D700.c
@@ -226,14 +226,14 @@ NCR_D700_probe_one(struct NCR_D700_private *p, int siop, int irq,
226} 226}
227 227
228static int 228static int
229NCR_D700_intr(int irq, void *data, struct pt_regs *regs) 229NCR_D700_intr(int irq, void *data)
230{ 230{
231 struct NCR_D700_private *p = (struct NCR_D700_private *)data; 231 struct NCR_D700_private *p = (struct NCR_D700_private *)data;
232 int i, found = 0; 232 int i, found = 0;
233 233
234 for (i = 0; i < 2; i++) 234 for (i = 0; i < 2; i++)
235 if (p->hosts[i] && 235 if (p->hosts[i] &&
236 NCR_700_intr(irq, p->hosts[i], regs) == IRQ_HANDLED) 236 NCR_700_intr(irq, p->hosts[i]) == IRQ_HANDLED)
237 found++; 237 found++;
238 238
239 return found ? IRQ_HANDLED : IRQ_NONE; 239 return found ? IRQ_HANDLED : IRQ_NONE;
diff --git a/drivers/scsi/NCR_Q720.c b/drivers/scsi/NCR_Q720.c
index c39ffbb86e39..778844c3544a 100644
--- a/drivers/scsi/NCR_Q720.c
+++ b/drivers/scsi/NCR_Q720.c
@@ -54,7 +54,7 @@ static struct scsi_host_template NCR_Q720_tpnt = {
54}; 54};
55 55
56static irqreturn_t 56static irqreturn_t
57NCR_Q720_intr(int irq, void *data, struct pt_regs * regs) 57NCR_Q720_intr(int irq, void *data)
58{ 58{
59 struct NCR_Q720_private *p = (struct NCR_Q720_private *)data; 59 struct NCR_Q720_private *p = (struct NCR_Q720_private *)data;
60 __u8 sir = (readb(p->mem_base + 0x0d) & 0xf0) >> 4; 60 __u8 sir = (readb(p->mem_base + 0x0d) & 0xf0) >> 4;
@@ -68,7 +68,7 @@ NCR_Q720_intr(int irq, void *data, struct pt_regs * regs)
68 68
69 while((siop = ffz(sir)) < p->siops) { 69 while((siop = ffz(sir)) < p->siops) {
70 sir |= 1<<siop; 70 sir |= 1<<siop;
71 ncr53c8xx_intr(irq, p->hosts[siop], regs); 71 ncr53c8xx_intr(irq, p->hosts[siop]);
72 } 72 }
73 return IRQ_HANDLED; 73 return IRQ_HANDLED;
74} 74}
diff --git a/drivers/scsi/a100u2w.c b/drivers/scsi/a100u2w.c
index 2684150917e6..2650a5d0a161 100644
--- a/drivers/scsi/a100u2w.c
+++ b/drivers/scsi/a100u2w.c
@@ -1013,7 +1013,7 @@ static void inia100SCBPost(BYTE * pHcb, BYTE * pScb)
1013/* 1013/*
1014 * Interrupt handler (main routine of the driver) 1014 * Interrupt handler (main routine of the driver)
1015 */ 1015 */
1016static irqreturn_t inia100_intr(int irqno, void *devid, struct pt_regs *regs) 1016static irqreturn_t inia100_intr(int irqno, void *devid)
1017{ 1017{
1018 struct Scsi_Host *host = (struct Scsi_Host *)devid; 1018 struct Scsi_Host *host = (struct Scsi_Host *)devid;
1019 ORC_HCS *pHcb = (ORC_HCS *)host->hostdata; 1019 ORC_HCS *pHcb = (ORC_HCS *)host->hostdata;
diff --git a/drivers/scsi/a2091.c b/drivers/scsi/a2091.c
index 085406928605..f77016d31cab 100644
--- a/drivers/scsi/a2091.c
+++ b/drivers/scsi/a2091.c
@@ -24,7 +24,7 @@
24#define DMA(ptr) ((a2091_scsiregs *)((ptr)->base)) 24#define DMA(ptr) ((a2091_scsiregs *)((ptr)->base))
25#define HDATA(ptr) ((struct WD33C93_hostdata *)((ptr)->hostdata)) 25#define HDATA(ptr) ((struct WD33C93_hostdata *)((ptr)->hostdata))
26 26
27static irqreturn_t a2091_intr (int irq, void *_instance, struct pt_regs *fp) 27static irqreturn_t a2091_intr (int irq, void *_instance)
28{ 28{
29 unsigned long flags; 29 unsigned long flags;
30 unsigned int status; 30 unsigned int status;
diff --git a/drivers/scsi/a3000.c b/drivers/scsi/a3000.c
index 7bf46d40b561..1299bc8edef1 100644
--- a/drivers/scsi/a3000.c
+++ b/drivers/scsi/a3000.c
@@ -26,7 +26,7 @@
26 26
27static struct Scsi_Host *a3000_host = NULL; 27static struct Scsi_Host *a3000_host = NULL;
28 28
29static irqreturn_t a3000_intr (int irq, void *dummy, struct pt_regs *fp) 29static irqreturn_t a3000_intr (int irq, void *dummy)
30{ 30{
31 unsigned long flags; 31 unsigned long flags;
32 unsigned int status = DMA(a3000_host)->ISTR; 32 unsigned int status = DMA(a3000_host)->ISTR;
diff --git a/drivers/scsi/aacraid/rx.c b/drivers/scsi/aacraid/rx.c
index a1d214d770eb..dcc8b0ea7a9d 100644
--- a/drivers/scsi/aacraid/rx.c
+++ b/drivers/scsi/aacraid/rx.c
@@ -46,11 +46,11 @@
46 46
47#include "aacraid.h" 47#include "aacraid.h"
48 48
49static irqreturn_t aac_rx_intr(int irq, void *dev_id, struct pt_regs *regs) 49static irqreturn_t aac_rx_intr(int irq, void *dev_id)
50{ 50{
51 struct aac_dev *dev = dev_id; 51 struct aac_dev *dev = dev_id;
52 52
53 dprintk((KERN_DEBUG "aac_rx_intr(%d,%p,%p)\n", irq, dev_id, regs)); 53 dprintk((KERN_DEBUG "aac_rx_intr(%d,%p)\n", irq, dev_id));
54 if (dev->new_comm_interface) { 54 if (dev->new_comm_interface) {
55 u32 Index = rx_readl(dev, MUnit.OutboundQueue); 55 u32 Index = rx_readl(dev, MUnit.OutboundQueue);
56 if (Index == 0xFFFFFFFFL) 56 if (Index == 0xFFFFFFFFL)
diff --git a/drivers/scsi/aacraid/sa.c b/drivers/scsi/aacraid/sa.c
index f906ead239dd..511b0a938fb1 100644
--- a/drivers/scsi/aacraid/sa.c
+++ b/drivers/scsi/aacraid/sa.c
@@ -46,7 +46,7 @@
46 46
47#include "aacraid.h" 47#include "aacraid.h"
48 48
49static irqreturn_t aac_sa_intr(int irq, void *dev_id, struct pt_regs *regs) 49static irqreturn_t aac_sa_intr(int irq, void *dev_id)
50{ 50{
51 struct aac_dev *dev = dev_id; 51 struct aac_dev *dev = dev_id;
52 unsigned short intstat, mask; 52 unsigned short intstat, mask;
diff --git a/drivers/scsi/advansys.c b/drivers/scsi/advansys.c
index 773f02e3b10b..83695416b2c9 100644
--- a/drivers/scsi/advansys.c
+++ b/drivers/scsi/advansys.c
@@ -3999,7 +3999,7 @@ STATIC PortAddr _asc_def_iop_base[];
3999 * advansys.h contains function prototypes for functions global to Linux. 3999 * advansys.h contains function prototypes for functions global to Linux.
4000 */ 4000 */
4001 4001
4002STATIC irqreturn_t advansys_interrupt(int, void *, struct pt_regs *); 4002STATIC irqreturn_t advansys_interrupt(int, void *);
4003STATIC int advansys_slave_configure(struct scsi_device *); 4003STATIC int advansys_slave_configure(struct scsi_device *);
4004STATIC void asc_scsi_done_list(struct scsi_cmnd *); 4004STATIC void asc_scsi_done_list(struct scsi_cmnd *);
4005STATIC int asc_execute_scsi_cmnd(struct scsi_cmnd *); 4005STATIC int asc_execute_scsi_cmnd(struct scsi_cmnd *);
@@ -5997,7 +5997,7 @@ static struct scsi_host_template driver_template = {
5997 * an AdvanSys adapter. 5997 * an AdvanSys adapter.
5998 */ 5998 */
5999STATIC irqreturn_t 5999STATIC irqreturn_t
6000advansys_interrupt(int irq, void *dev_id, struct pt_regs *regs) 6000advansys_interrupt(int irq, void *dev_id)
6001{ 6001{
6002 ulong flags; 6002 ulong flags;
6003 int i; 6003 int i;
diff --git a/drivers/scsi/aha152x.c b/drivers/scsi/aha152x.c
index fb6a476eb873..e04c2bc1932b 100644
--- a/drivers/scsi/aha152x.c
+++ b/drivers/scsi/aha152x.c
@@ -673,7 +673,7 @@ static struct {
673}; 673};
674 674
675/* setup & interrupt */ 675/* setup & interrupt */
676static irqreturn_t intr(int irq, void *dev_id, struct pt_regs *); 676static irqreturn_t intr(int irq, void *dev_id);
677static void reset_ports(struct Scsi_Host *shpnt); 677static void reset_ports(struct Scsi_Host *shpnt);
678static void aha152x_error(struct Scsi_Host *shpnt, char *msg); 678static void aha152x_error(struct Scsi_Host *shpnt, char *msg);
679static void done(struct Scsi_Host *shpnt, int error); 679static void done(struct Scsi_Host *shpnt, int error);
@@ -757,7 +757,7 @@ static inline Scsi_Cmnd *remove_SC(Scsi_Cmnd **SC, Scsi_Cmnd *SCp)
757 return ptr; 757 return ptr;
758} 758}
759 759
760static irqreturn_t swintr(int irqno, void *dev_id, struct pt_regs *regs) 760static irqreturn_t swintr(int irqno, void *dev_id)
761{ 761{
762 struct Scsi_Host *shpnt = (struct Scsi_Host *)dev_id; 762 struct Scsi_Host *shpnt = (struct Scsi_Host *)dev_id;
763 763
@@ -1463,7 +1463,7 @@ static void run(void)
1463 * Interrupt handler 1463 * Interrupt handler
1464 * 1464 *
1465 */ 1465 */
1466static irqreturn_t intr(int irqno, void *dev_id, struct pt_regs *regs) 1466static irqreturn_t intr(int irqno, void *dev_id)
1467{ 1467{
1468 struct Scsi_Host *shpnt = (struct Scsi_Host *)dev_id; 1468 struct Scsi_Host *shpnt = (struct Scsi_Host *)dev_id;
1469 unsigned long flags; 1469 unsigned long flags;
diff --git a/drivers/scsi/aha1542.c b/drivers/scsi/aha1542.c
index 24f0f5461792..d7a61a6bdaae 100644
--- a/drivers/scsi/aha1542.c
+++ b/drivers/scsi/aha1542.c
@@ -174,9 +174,8 @@ static DEFINE_SPINLOCK(aha1542_lock);
174 174
175static void setup_mailboxes(int base_io, struct Scsi_Host *shpnt); 175static void setup_mailboxes(int base_io, struct Scsi_Host *shpnt);
176static int aha1542_restart(struct Scsi_Host *shost); 176static int aha1542_restart(struct Scsi_Host *shost);
177static void aha1542_intr_handle(struct Scsi_Host *shost, void *dev_id, struct pt_regs *regs); 177static void aha1542_intr_handle(struct Scsi_Host *shost, void *dev_id);
178static irqreturn_t do_aha1542_intr_handle(int irq, void *dev_id, 178static irqreturn_t do_aha1542_intr_handle(int irq, void *dev_id);
179 struct pt_regs *regs);
180 179
181#define aha1542_intr_reset(base) outb(IRST, CONTROL(base)) 180#define aha1542_intr_reset(base) outb(IRST, CONTROL(base))
182 181
@@ -416,8 +415,7 @@ fail:
416} 415}
417 416
418/* A quick wrapper for do_aha1542_intr_handle to grab the spin lock */ 417/* A quick wrapper for do_aha1542_intr_handle to grab the spin lock */
419static irqreturn_t do_aha1542_intr_handle(int irq, void *dev_id, 418static irqreturn_t do_aha1542_intr_handle(int irq, void *dev_id)
420 struct pt_regs *regs)
421{ 419{
422 unsigned long flags; 420 unsigned long flags;
423 struct Scsi_Host *shost; 421 struct Scsi_Host *shost;
@@ -427,13 +425,13 @@ static irqreturn_t do_aha1542_intr_handle(int irq, void *dev_id,
427 panic("Splunge!"); 425 panic("Splunge!");
428 426
429 spin_lock_irqsave(shost->host_lock, flags); 427 spin_lock_irqsave(shost->host_lock, flags);
430 aha1542_intr_handle(shost, dev_id, regs); 428 aha1542_intr_handle(shost, dev_id);
431 spin_unlock_irqrestore(shost->host_lock, flags); 429 spin_unlock_irqrestore(shost->host_lock, flags);
432 return IRQ_HANDLED; 430 return IRQ_HANDLED;
433} 431}
434 432
435/* A "high" level interrupt handler */ 433/* A "high" level interrupt handler */
436static void aha1542_intr_handle(struct Scsi_Host *shost, void *dev_id, struct pt_regs *regs) 434static void aha1542_intr_handle(struct Scsi_Host *shost, void *dev_id)
437{ 435{
438 void (*my_done) (Scsi_Cmnd *) = NULL; 436 void (*my_done) (Scsi_Cmnd *) = NULL;
439 int errstatus, mbi, mbo, mbistatus; 437 int errstatus, mbi, mbo, mbistatus;
diff --git a/drivers/scsi/aha1740.c b/drivers/scsi/aha1740.c
index 6b35ed8301e0..c3c38a7e8d32 100644
--- a/drivers/scsi/aha1740.c
+++ b/drivers/scsi/aha1740.c
@@ -223,8 +223,7 @@ static int aha1740_test_port(unsigned int base)
223} 223}
224 224
225/* A "high" level interrupt handler */ 225/* A "high" level interrupt handler */
226static irqreturn_t aha1740_intr_handle(int irq, void *dev_id, 226static irqreturn_t aha1740_intr_handle(int irq, void *dev_id)
227 struct pt_regs *regs)
228{ 227{
229 struct Scsi_Host *host = (struct Scsi_Host *) dev_id; 228 struct Scsi_Host *host = (struct Scsi_Host *) dev_id;
230 void (*my_done)(Scsi_Cmnd *); 229 void (*my_done)(Scsi_Cmnd *);
diff --git a/drivers/scsi/aic7xxx/aic79xx_osm.c b/drivers/scsi/aic7xxx/aic79xx_osm.c
index 1faa008b5b81..f8e60486167d 100644
--- a/drivers/scsi/aic7xxx/aic79xx_osm.c
+++ b/drivers/scsi/aic7xxx/aic79xx_osm.c
@@ -1557,7 +1557,7 @@ ahd_linux_run_command(struct ahd_softc *ahd, struct ahd_linux_device *dev,
1557 * SCSI controller interrupt handler. 1557 * SCSI controller interrupt handler.
1558 */ 1558 */
1559irqreturn_t 1559irqreturn_t
1560ahd_linux_isr(int irq, void *dev_id, struct pt_regs * regs) 1560ahd_linux_isr(int irq, void *dev_id)
1561{ 1561{
1562 struct ahd_softc *ahd; 1562 struct ahd_softc *ahd;
1563 u_long flags; 1563 u_long flags;
diff --git a/drivers/scsi/aic7xxx/aic79xx_osm.h b/drivers/scsi/aic7xxx/aic79xx_osm.h
index 601340d84410..fb3d4dd54413 100644
--- a/drivers/scsi/aic7xxx/aic79xx_osm.h
+++ b/drivers/scsi/aic7xxx/aic79xx_osm.h
@@ -862,7 +862,7 @@ int ahd_platform_abort_scbs(struct ahd_softc *ahd, int target,
862 char channel, int lun, u_int tag, 862 char channel, int lun, u_int tag,
863 role_t role, uint32_t status); 863 role_t role, uint32_t status);
864irqreturn_t 864irqreturn_t
865 ahd_linux_isr(int irq, void *dev_id, struct pt_regs * regs); 865 ahd_linux_isr(int irq, void *dev_id);
866void ahd_done(struct ahd_softc*, struct scb*); 866void ahd_done(struct ahd_softc*, struct scb*);
867void ahd_send_async(struct ahd_softc *, char channel, 867void ahd_send_async(struct ahd_softc *, char channel,
868 u_int target, u_int lun, ac_code); 868 u_int target, u_int lun, ac_code);
diff --git a/drivers/scsi/aic7xxx/aic7xxx_osm.c b/drivers/scsi/aic7xxx/aic7xxx_osm.c
index 339b85cb61cd..43ab753d2739 100644
--- a/drivers/scsi/aic7xxx/aic7xxx_osm.c
+++ b/drivers/scsi/aic7xxx/aic7xxx_osm.c
@@ -1608,7 +1608,7 @@ ahc_linux_run_command(struct ahc_softc *ahc, struct ahc_linux_device *dev,
1608 * SCSI controller interrupt handler. 1608 * SCSI controller interrupt handler.
1609 */ 1609 */
1610irqreturn_t 1610irqreturn_t
1611ahc_linux_isr(int irq, void *dev_id, struct pt_regs * regs) 1611ahc_linux_isr(int irq, void *dev_id)
1612{ 1612{
1613 struct ahc_softc *ahc; 1613 struct ahc_softc *ahc;
1614 u_long flags; 1614 u_long flags;
diff --git a/drivers/scsi/aic7xxx/aic7xxx_osm.h b/drivers/scsi/aic7xxx/aic7xxx_osm.h
index d42a71ee076d..a87a4ce090df 100644
--- a/drivers/scsi/aic7xxx/aic7xxx_osm.h
+++ b/drivers/scsi/aic7xxx/aic7xxx_osm.h
@@ -830,7 +830,7 @@ int ahc_platform_abort_scbs(struct ahc_softc *ahc, int target,
830 char channel, int lun, u_int tag, 830 char channel, int lun, u_int tag,
831 role_t role, uint32_t status); 831 role_t role, uint32_t status);
832irqreturn_t 832irqreturn_t
833 ahc_linux_isr(int irq, void *dev_id, struct pt_regs * regs); 833 ahc_linux_isr(int irq, void *dev_id);
834void ahc_platform_flushwork(struct ahc_softc *ahc); 834void ahc_platform_flushwork(struct ahc_softc *ahc);
835void ahc_done(struct ahc_softc*, struct scb*); 835void ahc_done(struct ahc_softc*, struct scb*);
836void ahc_send_async(struct ahc_softc *, char channel, 836void ahc_send_async(struct ahc_softc *, char channel,
diff --git a/drivers/scsi/aic7xxx_old.c b/drivers/scsi/aic7xxx_old.c
index 3eae8062a02e..7f0adf9c4c7e 100644
--- a/drivers/scsi/aic7xxx_old.c
+++ b/drivers/scsi/aic7xxx_old.c
@@ -6345,7 +6345,7 @@ aic7xxx_handle_command_completion_intr(struct aic7xxx_host *p)
6345 * SCSI controller interrupt handler. 6345 * SCSI controller interrupt handler.
6346 *-F*************************************************************************/ 6346 *-F*************************************************************************/
6347static void 6347static void
6348aic7xxx_isr(int irq, void *dev_id, struct pt_regs *regs) 6348aic7xxx_isr(int irq, void *dev_id)
6349{ 6349{
6350 struct aic7xxx_host *p; 6350 struct aic7xxx_host *p;
6351 unsigned char intstat; 6351 unsigned char intstat;
@@ -6477,7 +6477,7 @@ aic7xxx_isr(int irq, void *dev_id, struct pt_regs *regs)
6477 * anything like it, please inform the Gross Hack Police immediately 6477 * anything like it, please inform the Gross Hack Police immediately
6478 *-F*************************************************************************/ 6478 *-F*************************************************************************/
6479static irqreturn_t 6479static irqreturn_t
6480do_aic7xxx_isr(int irq, void *dev_id, struct pt_regs *regs) 6480do_aic7xxx_isr(int irq, void *dev_id)
6481{ 6481{
6482 unsigned long cpu_flags; 6482 unsigned long cpu_flags;
6483 struct aic7xxx_host *p; 6483 struct aic7xxx_host *p;
@@ -6489,7 +6489,7 @@ do_aic7xxx_isr(int irq, void *dev_id, struct pt_regs *regs)
6489 p->flags |= AHC_IN_ISR; 6489 p->flags |= AHC_IN_ISR;
6490 do 6490 do
6491 { 6491 {
6492 aic7xxx_isr(irq, dev_id, regs); 6492 aic7xxx_isr(irq, dev_id);
6493 } while ( (aic_inb(p, INTSTAT) & INT_PEND) ); 6493 } while ( (aic_inb(p, INTSTAT) & INT_PEND) );
6494 aic7xxx_done_cmds_complete(p); 6494 aic7xxx_done_cmds_complete(p);
6495 aic7xxx_run_waiting_queues(p); 6495 aic7xxx_run_waiting_queues(p);
@@ -10377,7 +10377,7 @@ static int __aic7xxx_bus_device_reset(struct scsi_cmnd *cmd)
10377 10377
10378 hscb = scb->hscb; 10378 hscb = scb->hscb;
10379 10379
10380 aic7xxx_isr(p->irq, (void *)p, NULL); 10380 aic7xxx_isr(p->irq, (void *)p);
10381 aic7xxx_done_cmds_complete(p); 10381 aic7xxx_done_cmds_complete(p);
10382 /* If the command was already complete or just completed, then we didn't 10382 /* If the command was already complete or just completed, then we didn't
10383 * do a reset, return FAILED */ 10383 * do a reset, return FAILED */
@@ -10608,7 +10608,7 @@ static int __aic7xxx_abort(struct scsi_cmnd *cmd)
10608 else 10608 else
10609 return FAILED; 10609 return FAILED;
10610 10610
10611 aic7xxx_isr(p->irq, (void *)p, NULL); 10611 aic7xxx_isr(p->irq, (void *)p);
10612 aic7xxx_done_cmds_complete(p); 10612 aic7xxx_done_cmds_complete(p);
10613 /* If the command was already complete or just completed, then we didn't 10613 /* If the command was already complete or just completed, then we didn't
10614 * do a reset, return FAILED */ 10614 * do a reset, return FAILED */
@@ -10863,7 +10863,7 @@ static int aic7xxx_reset(struct scsi_cmnd *cmd)
10863 10863
10864 while((aic_inb(p, INTSTAT) & INT_PEND) && !(p->flags & AHC_IN_ISR)) 10864 while((aic_inb(p, INTSTAT) & INT_PEND) && !(p->flags & AHC_IN_ISR))
10865 { 10865 {
10866 aic7xxx_isr(p->irq, p, (void *)NULL ); 10866 aic7xxx_isr(p->irq, p);
10867 pause_sequencer(p); 10867 pause_sequencer(p);
10868 } 10868 }
10869 aic7xxx_done_cmds_complete(p); 10869 aic7xxx_done_cmds_complete(p);
diff --git a/drivers/scsi/aic94xx/aic94xx_hwi.c b/drivers/scsi/aic94xx/aic94xx_hwi.c
index 1d8c5e5f442e..3c2d7a379931 100644
--- a/drivers/scsi/aic94xx/aic94xx_hwi.c
+++ b/drivers/scsi/aic94xx/aic94xx_hwi.c
@@ -996,11 +996,10 @@ static inline void asd_hst_pcix_isr(struct asd_ha_struct *asd_ha)
996 * asd_hw_isr -- host adapter interrupt service routine 996 * asd_hw_isr -- host adapter interrupt service routine
997 * @irq: ignored 997 * @irq: ignored
998 * @dev_id: pointer to host adapter structure 998 * @dev_id: pointer to host adapter structure
999 * @regs: ignored
1000 * 999 *
1001 * The ISR processes done list entries and level 3 error handling. 1000 * The ISR processes done list entries and level 3 error handling.
1002 */ 1001 */
1003irqreturn_t asd_hw_isr(int irq, void *dev_id, struct pt_regs *regs) 1002irqreturn_t asd_hw_isr(int irq, void *dev_id)
1004{ 1003{
1005 struct asd_ha_struct *asd_ha = dev_id; 1004 struct asd_ha_struct *asd_ha = dev_id;
1006 u32 chimint = asd_read_reg_dword(asd_ha, CHIMINT); 1005 u32 chimint = asd_read_reg_dword(asd_ha, CHIMINT);
diff --git a/drivers/scsi/aic94xx/aic94xx_hwi.h b/drivers/scsi/aic94xx/aic94xx_hwi.h
index 8498144aa5e1..14319d1d6804 100644
--- a/drivers/scsi/aic94xx/aic94xx_hwi.h
+++ b/drivers/scsi/aic94xx/aic94xx_hwi.h
@@ -371,7 +371,7 @@ static inline void asd_ascb_free_list(struct asd_ascb *ascb_list)
371/* ---------- Function declarations ---------- */ 371/* ---------- Function declarations ---------- */
372 372
373int asd_init_hw(struct asd_ha_struct *asd_ha); 373int asd_init_hw(struct asd_ha_struct *asd_ha);
374irqreturn_t asd_hw_isr(int irq, void *dev_id, struct pt_regs *regs); 374irqreturn_t asd_hw_isr(int irq, void *dev_id);
375 375
376 376
377struct asd_ascb *asd_ascb_alloc_list(struct asd_ha_struct 377struct asd_ascb *asd_ascb_alloc_list(struct asd_ha_struct
diff --git a/drivers/scsi/amiga7xx.h b/drivers/scsi/amiga7xx.h
index 1b637592d5ae..7cd63a996886 100644
--- a/drivers/scsi/amiga7xx.h
+++ b/drivers/scsi/amiga7xx.h
@@ -8,7 +8,7 @@ int NCR53c7xx_queue_command(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *));
8int NCR53c7xx_abort(Scsi_Cmnd *); 8int NCR53c7xx_abort(Scsi_Cmnd *);
9int NCR53c7x0_release (struct Scsi_Host *); 9int NCR53c7x0_release (struct Scsi_Host *);
10int NCR53c7xx_reset(Scsi_Cmnd *, unsigned int); 10int NCR53c7xx_reset(Scsi_Cmnd *, unsigned int);
11void NCR53c7x0_intr(int irq, void *dev_id, struct pt_regs * regs); 11void NCR53c7x0_intr(int irq, void *dev_id);
12 12
13#ifndef CMD_PER_LUN 13#ifndef CMD_PER_LUN
14#define CMD_PER_LUN 3 14#define CMD_PER_LUN 3
diff --git a/drivers/scsi/arcmsr/arcmsr_hba.c b/drivers/scsi/arcmsr/arcmsr_hba.c
index 475f978ff8f0..086cc97eee8c 100644
--- a/drivers/scsi/arcmsr/arcmsr_hba.c
+++ b/drivers/scsi/arcmsr/arcmsr_hba.c
@@ -147,8 +147,7 @@ static struct pci_driver arcmsr_pci_driver = {
147 .shutdown = arcmsr_shutdown 147 .shutdown = arcmsr_shutdown
148}; 148};
149 149
150static irqreturn_t arcmsr_do_interrupt(int irq, void *dev_id, 150static irqreturn_t arcmsr_do_interrupt(int irq, void *dev_id)
151 struct pt_regs *regs)
152{ 151{
153 irqreturn_t handle_state; 152 irqreturn_t handle_state;
154 struct AdapterControlBlock *acb; 153 struct AdapterControlBlock *acb;
diff --git a/drivers/scsi/arm/acornscsi.c b/drivers/scsi/arm/acornscsi.c
index 0525d672e1e6..9cf902b7a126 100644
--- a/drivers/scsi/arm/acornscsi.c
+++ b/drivers/scsi/arm/acornscsi.c
@@ -2461,14 +2461,13 @@ intr_ret_t acornscsi_sbicintr(AS_Host *host, int in_irq)
2461} 2461}
2462 2462
2463/* 2463/*
2464 * Prototype: void acornscsi_intr(int irq, void *dev_id, struct pt_regs *regs) 2464 * Prototype: void acornscsi_intr(int irq, void *dev_id)
2465 * Purpose : handle interrupts from Acorn SCSI card 2465 * Purpose : handle interrupts from Acorn SCSI card
2466 * Params : irq - interrupt number 2466 * Params : irq - interrupt number
2467 * dev_id - device specific data (AS_Host structure) 2467 * dev_id - device specific data (AS_Host structure)
2468 * regs - processor registers when interrupt occurred
2469 */ 2468 */
2470static irqreturn_t 2469static irqreturn_t
2471acornscsi_intr(int irq, void *dev_id, struct pt_regs *regs) 2470acornscsi_intr(int irq, void *dev_id)
2472{ 2471{
2473 AS_Host *host = (AS_Host *)dev_id; 2472 AS_Host *host = (AS_Host *)dev_id;
2474 intr_ret_t ret; 2473 intr_ret_t ret;
diff --git a/drivers/scsi/arm/cumana_2.c b/drivers/scsi/arm/cumana_2.c
index 719af0dcc0e5..19edd9c853d9 100644
--- a/drivers/scsi/arm/cumana_2.c
+++ b/drivers/scsi/arm/cumana_2.c
@@ -137,10 +137,9 @@ cumanascsi_2_terminator_ctl(struct Scsi_Host *host, int on_off)
137 * Purpose : handle interrupts from Cumana SCSI 2 card 137 * Purpose : handle interrupts from Cumana SCSI 2 card
138 * Params : irq - interrupt number 138 * Params : irq - interrupt number
139 * dev_id - user-defined (Scsi_Host structure) 139 * dev_id - user-defined (Scsi_Host structure)
140 * regs - processor registers at interrupt
141 */ 140 */
142static irqreturn_t 141static irqreturn_t
143cumanascsi_2_intr(int irq, void *dev_id, struct pt_regs *regs) 142cumanascsi_2_intr(int irq, void *dev_id)
144{ 143{
145 struct cumanascsi2_info *info = dev_id; 144 struct cumanascsi2_info *info = dev_id;
146 145
diff --git a/drivers/scsi/arm/eesox.c b/drivers/scsi/arm/eesox.c
index dcbb4b2b3fe0..3f876fb75469 100644
--- a/drivers/scsi/arm/eesox.c
+++ b/drivers/scsi/arm/eesox.c
@@ -138,10 +138,9 @@ eesoxscsi_terminator_ctl(struct Scsi_Host *host, int on_off)
138 * Purpose : handle interrupts from EESOX SCSI card 138 * Purpose : handle interrupts from EESOX SCSI card
139 * Params : irq - interrupt number 139 * Params : irq - interrupt number
140 * dev_id - user-defined (Scsi_Host structure) 140 * dev_id - user-defined (Scsi_Host structure)
141 * regs - processor registers at interrupt
142 */ 141 */
143static irqreturn_t 142static irqreturn_t
144eesoxscsi_intr(int irq, void *dev_id, struct pt_regs *regs) 143eesoxscsi_intr(int irq, void *dev_id)
145{ 144{
146 struct eesoxscsi_info *info = dev_id; 145 struct eesoxscsi_info *info = dev_id;
147 146
diff --git a/drivers/scsi/arm/powertec.c b/drivers/scsi/arm/powertec.c
index b2c346a47052..ce159c15bc86 100644
--- a/drivers/scsi/arm/powertec.c
+++ b/drivers/scsi/arm/powertec.c
@@ -112,10 +112,8 @@ powertecscsi_terminator_ctl(struct Scsi_Host *host, int on_off)
112 * Purpose : handle interrupts from Powertec SCSI card 112 * Purpose : handle interrupts from Powertec SCSI card
113 * Params : irq - interrupt number 113 * Params : irq - interrupt number
114 * dev_id - user-defined (Scsi_Host structure) 114 * dev_id - user-defined (Scsi_Host structure)
115 * regs - processor registers at interrupt
116 */ 115 */
117static irqreturn_t 116static irqreturn_t powertecscsi_intr(int irq, void *dev_id)
118powertecscsi_intr(int irq, void *dev_id, struct pt_regs *regs)
119{ 117{
120 struct powertec_info *info = dev_id; 118 struct powertec_info *info = dev_id;
121 119
diff --git a/drivers/scsi/atari_NCR5380.c b/drivers/scsi/atari_NCR5380.c
index e397129c90d1..0f920c84ac0f 100644
--- a/drivers/scsi/atari_NCR5380.c
+++ b/drivers/scsi/atari_NCR5380.c
@@ -1262,7 +1262,7 @@ static void NCR5380_dma_complete( struct Scsi_Host *instance )
1262 * 1262 *
1263 */ 1263 */
1264 1264
1265static irqreturn_t NCR5380_intr (int irq, void *dev_id, struct pt_regs *regs) 1265static irqreturn_t NCR5380_intr (int irq, void *dev_id)
1266{ 1266{
1267 struct Scsi_Host *instance = first_instance; 1267 struct Scsi_Host *instance = first_instance;
1268 int done = 1, handled = 0; 1268 int done = 1, handled = 0;
diff --git a/drivers/scsi/atari_dma_emul.c b/drivers/scsi/atari_dma_emul.c
index 8d5d2a5da961..cdc710ea00fa 100644
--- a/drivers/scsi/atari_dma_emul.c
+++ b/drivers/scsi/atari_dma_emul.c
@@ -110,7 +110,7 @@ static inline void set_restdata_reg(unsigned char *cur_addr)
110} 110}
111 111
112/* 112/*
113 * void hades_dma_emulator(int irq, void *dummy, struct pt_regs *fp) 113 * void hades_dma_emulator(int irq, void *dummy)
114 * 114 *
115 * This code emulates TT SCSI DMA on the Hades. 115 * This code emulates TT SCSI DMA on the Hades.
116 * 116 *
@@ -140,7 +140,7 @@ static inline void set_restdata_reg(unsigned char *cur_addr)
140 * increased with one. 140 * increased with one.
141 */ 141 */
142 142
143static irqreturn_t hades_dma_emulator(int irq, void *dummy, struct pt_regs *fp) 143static irqreturn_t hades_dma_emulator(int irq, void *dummy)
144{ 144{
145 unsigned long dma_base; 145 unsigned long dma_base;
146 register unsigned long dma_cnt asm ("d3"); 146 register unsigned long dma_cnt asm ("d3");
diff --git a/drivers/scsi/atari_scsi.c b/drivers/scsi/atari_scsi.c
index e1be4a4387cd..dfb1bcfae82e 100644
--- a/drivers/scsi/atari_scsi.c
+++ b/drivers/scsi/atari_scsi.c
@@ -194,8 +194,8 @@ static int falcon_classify_cmd( Scsi_Cmnd *cmd );
194static unsigned long atari_dma_xfer_len( unsigned long wanted_len, 194static unsigned long atari_dma_xfer_len( unsigned long wanted_len,
195 Scsi_Cmnd *cmd, int write_flag ); 195 Scsi_Cmnd *cmd, int write_flag );
196#endif 196#endif
197static irqreturn_t scsi_tt_intr( int irq, void *dummy, struct pt_regs *fp); 197static irqreturn_t scsi_tt_intr( int irq, void *dummy);
198static irqreturn_t scsi_falcon_intr( int irq, void *dummy, struct pt_regs *fp); 198static irqreturn_t scsi_falcon_intr( int irq, void *dummy);
199static void falcon_release_lock_if_possible( struct NCR5380_hostdata * 199static void falcon_release_lock_if_possible( struct NCR5380_hostdata *
200 hostdata ); 200 hostdata );
201static void falcon_get_lock( void ); 201static void falcon_get_lock( void );
@@ -285,7 +285,7 @@ static int scsi_dma_is_ignored_buserr( unsigned char dma_stat )
285 * end-of-DMA, both SCSI ints are triggered simultaneously, so the NCR int has 285 * end-of-DMA, both SCSI ints are triggered simultaneously, so the NCR int has
286 * to clear the DMA int pending bit before it allows other level 6 interrupts. 286 * to clear the DMA int pending bit before it allows other level 6 interrupts.
287 */ 287 */
288static void scsi_dma_buserr (int irq, void *dummy, struct pt_regs *fp) 288static void scsi_dma_buserr (int irq, void *dummy)
289{ 289{
290 unsigned char dma_stat = tt_scsi_dma.dma_ctrl; 290 unsigned char dma_stat = tt_scsi_dma.dma_ctrl;
291 291
@@ -314,7 +314,7 @@ static void scsi_dma_buserr (int irq, void *dummy, struct pt_regs *fp)
314#endif 314#endif
315 315
316 316
317static irqreturn_t scsi_tt_intr (int irq, void *dummy, struct pt_regs *fp) 317static irqreturn_t scsi_tt_intr (int irq, void *dummy)
318{ 318{
319#ifdef REAL_DMA 319#ifdef REAL_DMA
320 int dma_stat; 320 int dma_stat;
@@ -406,7 +406,7 @@ static irqreturn_t scsi_tt_intr (int irq, void *dummy, struct pt_regs *fp)
406} 406}
407 407
408 408
409static irqreturn_t scsi_falcon_intr (int irq, void *dummy, struct pt_regs *fp) 409static irqreturn_t scsi_falcon_intr (int irq, void *dummy)
410{ 410{
411#ifdef REAL_DMA 411#ifdef REAL_DMA
412 int dma_stat; 412 int dma_stat;
diff --git a/drivers/scsi/atp870u.c b/drivers/scsi/atp870u.c
index 0ec41f34f462..fec58cc47f1c 100644
--- a/drivers/scsi/atp870u.c
+++ b/drivers/scsi/atp870u.c
@@ -44,7 +44,7 @@ static void send_s870(struct atp_unit *dev,unsigned char c);
44static void is885(struct atp_unit *dev, unsigned int wkport,unsigned char c); 44static void is885(struct atp_unit *dev, unsigned int wkport,unsigned char c);
45static void tscam_885(void); 45static void tscam_885(void);
46 46
47static irqreturn_t atp870u_intr_handle(int irq, void *dev_id, struct pt_regs *regs) 47static irqreturn_t atp870u_intr_handle(int irq, void *dev_id)
48{ 48{
49 unsigned long flags; 49 unsigned long flags;
50 unsigned short int tmpcip, id; 50 unsigned short int tmpcip, id;
diff --git a/drivers/scsi/bvme6000.h b/drivers/scsi/bvme6000.h
index 7c9c0366cc08..ea3e4b2b9220 100644
--- a/drivers/scsi/bvme6000.h
+++ b/drivers/scsi/bvme6000.h
@@ -9,7 +9,7 @@ int NCR53c7xx_queue_command(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *));
9int NCR53c7xx_abort(Scsi_Cmnd *); 9int NCR53c7xx_abort(Scsi_Cmnd *);
10int NCR53c7x0_release (struct Scsi_Host *); 10int NCR53c7x0_release (struct Scsi_Host *);
11int NCR53c7xx_reset(Scsi_Cmnd *, unsigned int); 11int NCR53c7xx_reset(Scsi_Cmnd *, unsigned int);
12void NCR53c7x0_intr(int irq, void *dev_id, struct pt_regs * regs); 12void NCR53c7x0_intr(int irq, void *dev_id);
13 13
14#ifndef CMD_PER_LUN 14#ifndef CMD_PER_LUN
15#define CMD_PER_LUN 3 15#define CMD_PER_LUN 3
diff --git a/drivers/scsi/dc395x.c b/drivers/scsi/dc395x.c
index c6118d99385e..81e3ee51d897 100644
--- a/drivers/scsi/dc395x.c
+++ b/drivers/scsi/dc395x.c
@@ -1813,8 +1813,7 @@ static void dc395x_handle_interrupt(struct AdapterCtlBlk *acb,
1813} 1813}
1814 1814
1815 1815
1816static irqreturn_t dc395x_interrupt(int irq, void *dev_id, 1816static irqreturn_t dc395x_interrupt(int irq, void *dev_id)
1817 struct pt_regs *regs)
1818{ 1817{
1819 struct AdapterCtlBlk *acb = (struct AdapterCtlBlk *)dev_id; 1818 struct AdapterCtlBlk *acb = (struct AdapterCtlBlk *)dev_id;
1820 u16 scsi_status; 1819 u16 scsi_status;
diff --git a/drivers/scsi/dec_esp.c b/drivers/scsi/dec_esp.c
index eb32062f7e68..c29ccbc44693 100644
--- a/drivers/scsi/dec_esp.c
+++ b/drivers/scsi/dec_esp.c
@@ -94,9 +94,9 @@ volatile unsigned char pmaz_cmd_buffer[16];
94 * via PIO. 94 * via PIO.
95 */ 95 */
96 96
97static irqreturn_t scsi_dma_merr_int(int, void *, struct pt_regs *); 97static irqreturn_t scsi_dma_merr_int(int, void *);
98static irqreturn_t scsi_dma_err_int(int, void *, struct pt_regs *); 98static irqreturn_t scsi_dma_err_int(int, void *);
99static irqreturn_t scsi_dma_int(int, void *, struct pt_regs *); 99static irqreturn_t scsi_dma_int(int, void *);
100 100
101static int dec_esp_detect(struct scsi_host_template * tpnt); 101static int dec_esp_detect(struct scsi_host_template * tpnt);
102 102
@@ -307,7 +307,7 @@ err_dealloc:
307} 307}
308 308
309/************************************************************* DMA Functions */ 309/************************************************************* DMA Functions */
310static irqreturn_t scsi_dma_merr_int(int irq, void *dev_id, struct pt_regs *regs) 310static irqreturn_t scsi_dma_merr_int(int irq, void *dev_id)
311{ 311{
312 printk("Got unexpected SCSI DMA Interrupt! < "); 312 printk("Got unexpected SCSI DMA Interrupt! < ");
313 printk("SCSI_DMA_MEMRDERR "); 313 printk("SCSI_DMA_MEMRDERR ");
@@ -316,14 +316,14 @@ static irqreturn_t scsi_dma_merr_int(int irq, void *dev_id, struct pt_regs *regs
316 return IRQ_HANDLED; 316 return IRQ_HANDLED;
317} 317}
318 318
319static irqreturn_t scsi_dma_err_int(int irq, void *dev_id, struct pt_regs *regs) 319static irqreturn_t scsi_dma_err_int(int irq, void *dev_id)
320{ 320{
321 /* empty */ 321 /* empty */
322 322
323 return IRQ_HANDLED; 323 return IRQ_HANDLED;
324} 324}
325 325
326static irqreturn_t scsi_dma_int(int irq, void *dev_id, struct pt_regs *regs) 326static irqreturn_t scsi_dma_int(int irq, void *dev_id)
327{ 327{
328 u32 scsi_next_ptr; 328 u32 scsi_next_ptr;
329 329
diff --git a/drivers/scsi/dpt_i2o.c b/drivers/scsi/dpt_i2o.c
index b20b37661d6f..60b1b434eba7 100644
--- a/drivers/scsi/dpt_i2o.c
+++ b/drivers/scsi/dpt_i2o.c
@@ -1989,7 +1989,7 @@ static int adpt_ioctl(struct inode *inode, struct file *file, uint cmd,
1989} 1989}
1990 1990
1991 1991
1992static irqreturn_t adpt_isr(int irq, void *dev_id, struct pt_regs *regs) 1992static irqreturn_t adpt_isr(int irq, void *dev_id)
1993{ 1993{
1994 struct scsi_cmnd* cmd; 1994 struct scsi_cmnd* cmd;
1995 adpt_hba* pHba = dev_id; 1995 adpt_hba* pHba = dev_id;
diff --git a/drivers/scsi/dpti.h b/drivers/scsi/dpti.h
index 289983264929..fd79068c5869 100644
--- a/drivers/scsi/dpti.h
+++ b/drivers/scsi/dpti.h
@@ -263,7 +263,7 @@ struct sg_simple_element {
263static void adpt_i2o_sys_shutdown(void); 263static void adpt_i2o_sys_shutdown(void);
264static int adpt_init(void); 264static int adpt_init(void);
265static int adpt_i2o_build_sys_table(void); 265static int adpt_i2o_build_sys_table(void);
266static irqreturn_t adpt_isr(int irq, void *dev_id, struct pt_regs *regs); 266static irqreturn_t adpt_isr(int irq, void *dev_id);
267#ifdef REBOOT_NOTIFIER 267#ifdef REBOOT_NOTIFIER
268static int adpt_reboot_event(struct notifier_block *n, ulong code, void *p); 268static int adpt_reboot_event(struct notifier_block *n, ulong code, void *p);
269#endif 269#endif
diff --git a/drivers/scsi/eata.c b/drivers/scsi/eata.c
index a5ff43b1b263..2d38025861a5 100644
--- a/drivers/scsi/eata.c
+++ b/drivers/scsi/eata.c
@@ -875,7 +875,7 @@ static unsigned long io_port[] = {
875/* But transfer orientation from the 16 bit data register is Little Endian */ 875/* But transfer orientation from the 16 bit data register is Little Endian */
876#define REG2H(x) le16_to_cpu(x) 876#define REG2H(x) le16_to_cpu(x)
877 877
878static irqreturn_t do_interrupt_handler(int, void *, struct pt_regs *); 878static irqreturn_t do_interrupt_handler(int, void *);
879static void flush_dev(struct scsi_device *, unsigned long, struct hostdata *, 879static void flush_dev(struct scsi_device *, unsigned long, struct hostdata *,
880 unsigned int); 880 unsigned int);
881static int do_trace = 0; 881static int do_trace = 0;
@@ -2555,8 +2555,7 @@ static irqreturn_t ihdlr(int irq, struct Scsi_Host *shost)
2555 return IRQ_NONE; 2555 return IRQ_NONE;
2556} 2556}
2557 2557
2558static irqreturn_t do_interrupt_handler(int irq, void *shap, 2558static irqreturn_t do_interrupt_handler(int irq, void *shap)
2559 struct pt_regs *regs)
2560{ 2559{
2561 struct Scsi_Host *shost; 2560 struct Scsi_Host *shost;
2562 unsigned int j; 2561 unsigned int j;
diff --git a/drivers/scsi/eata_pio.c b/drivers/scsi/eata_pio.c
index d312633db92b..811d8840707e 100644
--- a/drivers/scsi/eata_pio.c
+++ b/drivers/scsi/eata_pio.c
@@ -194,10 +194,9 @@ static void IncStat(struct scsi_pointer *SCp, unsigned int Increment)
194 } 194 }
195} 195}
196 196
197static irqreturn_t eata_pio_int_handler(int irq, void *dev_id, struct pt_regs *regs); 197static irqreturn_t eata_pio_int_handler(int irq, void *dev_id);
198 198
199static irqreturn_t do_eata_pio_int_handler(int irq, void *dev_id, 199static irqreturn_t do_eata_pio_int_handler(int irq, void *dev_id)
200 struct pt_regs *regs)
201{ 200{
202 unsigned long flags; 201 unsigned long flags;
203 struct Scsi_Host *dev = dev_id; 202 struct Scsi_Host *dev = dev_id;
@@ -209,7 +208,7 @@ static irqreturn_t do_eata_pio_int_handler(int irq, void *dev_id,
209 return ret; 208 return ret;
210} 209}
211 210
212static irqreturn_t eata_pio_int_handler(int irq, void *dev_id, struct pt_regs *regs) 211static irqreturn_t eata_pio_int_handler(int irq, void *dev_id)
213{ 212{
214 unsigned int eata_stat = 0xfffff; 213 unsigned int eata_stat = 0xfffff;
215 struct scsi_cmnd *cmd; 214 struct scsi_cmnd *cmd;
diff --git a/drivers/scsi/esp.c b/drivers/scsi/esp.c
index 5630868c1b25..2c2fe80bc42a 100644
--- a/drivers/scsi/esp.c
+++ b/drivers/scsi/esp.c
@@ -184,7 +184,7 @@ enum {
184}; 184};
185 185
186/* Forward declarations. */ 186/* Forward declarations. */
187static irqreturn_t esp_intr(int irq, void *dev_id, struct pt_regs *pregs); 187static irqreturn_t esp_intr(int irq, void *dev_id);
188 188
189/* Debugging routines */ 189/* Debugging routines */
190struct esp_cmdstrings { 190struct esp_cmdstrings {
@@ -4282,7 +4282,7 @@ state_machine:
4282} 4282}
4283 4283
4284/* Service only the ESP described by dev_id. */ 4284/* Service only the ESP described by dev_id. */
4285static irqreturn_t esp_intr(int irq, void *dev_id, struct pt_regs *pregs) 4285static irqreturn_t esp_intr(int irq, void *dev_id)
4286{ 4286{
4287 struct esp *esp = dev_id; 4287 struct esp *esp = dev_id;
4288 unsigned long flags; 4288 unsigned long flags;
diff --git a/drivers/scsi/fd_mcs.c b/drivers/scsi/fd_mcs.c
index dde3edf35c03..ef8285c326e4 100644
--- a/drivers/scsi/fd_mcs.c
+++ b/drivers/scsi/fd_mcs.c
@@ -281,7 +281,7 @@ static struct fd_mcs_adapters_struct fd_mcs_adapters[] = {
281 281
282#define FD_BRDS ARRAY_SIZE(fd_mcs_adapters) 282#define FD_BRDS ARRAY_SIZE(fd_mcs_adapters)
283 283
284static irqreturn_t fd_mcs_intr(int irq, void *dev_id, struct pt_regs *regs); 284static irqreturn_t fd_mcs_intr(int irq, void *dev_id);
285 285
286static unsigned long addresses[] = { 0xc8000, 0xca000, 0xce000, 0xde000 }; 286static unsigned long addresses[] = { 0xc8000, 0xca000, 0xce000, 0xde000 };
287static unsigned short ports[] = { 0x140, 0x150, 0x160, 0x170 }; 287static unsigned short ports[] = { 0x140, 0x150, 0x160, 0x170 };
@@ -617,7 +617,7 @@ static void my_done(struct Scsi_Host *shpnt, int error)
617} 617}
618 618
619/* only my_done needs to be protected */ 619/* only my_done needs to be protected */
620static irqreturn_t fd_mcs_intr(int irq, void *dev_id, struct pt_regs *regs) 620static irqreturn_t fd_mcs_intr(int irq, void *dev_id)
621{ 621{
622 unsigned long flags; 622 unsigned long flags;
623 int status; 623 int status;
diff --git a/drivers/scsi/fdomain.c b/drivers/scsi/fdomain.c
index b0694dcce246..41b05fc45380 100644
--- a/drivers/scsi/fdomain.c
+++ b/drivers/scsi/fdomain.c
@@ -403,8 +403,7 @@ static volatile int in_interrupt_flag;
403static int FIFO_Size = 0x2000; /* 8k FIFO for 403static int FIFO_Size = 0x2000; /* 8k FIFO for
404 pre-tmc18c30 chips */ 404 pre-tmc18c30 chips */
405 405
406static irqreturn_t do_fdomain_16x0_intr( int irq, void *dev_id, 406static irqreturn_t do_fdomain_16x0_intr( int irq, void *dev_id );
407 struct pt_regs * regs );
408/* Allow insmod parameters to be like LILO parameters. For example: 407/* Allow insmod parameters to be like LILO parameters. For example:
409 insmod fdomain fdomain=0x140,11 */ 408 insmod fdomain fdomain=0x140,11 */
410static char * fdomain = NULL; 409static char * fdomain = NULL;
@@ -1094,8 +1093,7 @@ static void my_done(int error)
1094#endif 1093#endif
1095} 1094}
1096 1095
1097static irqreturn_t do_fdomain_16x0_intr(int irq, void *dev_id, 1096static irqreturn_t do_fdomain_16x0_intr(int irq, void *dev_id)
1098 struct pt_regs * regs )
1099{ 1097{
1100 unsigned long flags; 1098 unsigned long flags;
1101 int status; 1099 int status;
diff --git a/drivers/scsi/gdth.c b/drivers/scsi/gdth.c
index 0f3eb22b979a..4bc14ad92e22 100644
--- a/drivers/scsi/gdth.c
+++ b/drivers/scsi/gdth.c
@@ -424,7 +424,7 @@
424 424
425static void gdth_delay(int milliseconds); 425static void gdth_delay(int milliseconds);
426static void gdth_eval_mapping(ulong32 size, ulong32 *cyls, int *heads, int *secs); 426static void gdth_eval_mapping(ulong32 size, ulong32 *cyls, int *heads, int *secs);
427static irqreturn_t gdth_interrupt(int irq, void *dev_id, struct pt_regs *regs); 427static irqreturn_t gdth_interrupt(int irq, void *dev_id);
428static int gdth_sync_event(int hanum,int service,unchar index,Scsi_Cmnd *scp); 428static int gdth_sync_event(int hanum,int service,unchar index,Scsi_Cmnd *scp);
429static int gdth_async_event(int hanum); 429static int gdth_async_event(int hanum);
430static void gdth_log_event(gdth_evt_data *dvr, char *buffer); 430static void gdth_log_event(gdth_evt_data *dvr, char *buffer);
@@ -1804,7 +1804,7 @@ static int gdth_wait(int hanum,int index,ulong32 time)
1804 1804
1805 gdth_from_wait = TRUE; 1805 gdth_from_wait = TRUE;
1806 do { 1806 do {
1807 gdth_interrupt((int)ha->irq,ha,NULL); 1807 gdth_interrupt((int)ha->irq,ha);
1808 if (wait_hanum==hanum && wait_index==index) { 1808 if (wait_hanum==hanum && wait_index==index) {
1809 answer_found = TRUE; 1809 answer_found = TRUE;
1810 break; 1810 break;
@@ -3406,7 +3406,7 @@ static void gdth_clear_events(void)
3406 3406
3407/* SCSI interface functions */ 3407/* SCSI interface functions */
3408 3408
3409static irqreturn_t gdth_interrupt(int irq,void *dev_id,struct pt_regs *regs) 3409static irqreturn_t gdth_interrupt(int irq,void *dev_id)
3410{ 3410{
3411 gdth_ha_str *ha2 = (gdth_ha_str *)dev_id; 3411 gdth_ha_str *ha2 = (gdth_ha_str *)dev_id;
3412 register gdth_ha_str *ha; 3412 register gdth_ha_str *ha;
diff --git a/drivers/scsi/gvp11.c b/drivers/scsi/gvp11.c
index 18dbe5c27dac..2f6c1137a6e5 100644
--- a/drivers/scsi/gvp11.c
+++ b/drivers/scsi/gvp11.c
@@ -24,7 +24,7 @@
24#define DMA(ptr) ((gvp11_scsiregs *)((ptr)->base)) 24#define DMA(ptr) ((gvp11_scsiregs *)((ptr)->base))
25#define HDATA(ptr) ((struct WD33C93_hostdata *)((ptr)->hostdata)) 25#define HDATA(ptr) ((struct WD33C93_hostdata *)((ptr)->hostdata))
26 26
27static irqreturn_t gvp11_intr (int irq, void *_instance, struct pt_regs *fp) 27static irqreturn_t gvp11_intr (int irq, void *_instance)
28{ 28{
29 unsigned long flags; 29 unsigned long flags;
30 unsigned int status; 30 unsigned int status;
diff --git a/drivers/scsi/hptiop.c b/drivers/scsi/hptiop.c
index 28bfb8f9f81d..bec83cbee59a 100644
--- a/drivers/scsi/hptiop.c
+++ b/drivers/scsi/hptiop.c
@@ -431,7 +431,7 @@ void hptiop_iop_request_callback(struct hptiop_hba *hba, u32 tag)
431 writel(tag, &hba->iop->outbound_queue); 431 writel(tag, &hba->iop->outbound_queue);
432} 432}
433 433
434static irqreturn_t hptiop_intr(int irq, void *dev_id, struct pt_regs *regs) 434static irqreturn_t hptiop_intr(int irq, void *dev_id)
435{ 435{
436 struct hptiop_hba *hba = dev_id; 436 struct hptiop_hba *hba = dev_id;
437 int handled; 437 int handled;
diff --git a/drivers/scsi/ibmmca.c b/drivers/scsi/ibmmca.c
index 2be1dc5d852a..0e57fb6964d5 100644
--- a/drivers/scsi/ibmmca.c
+++ b/drivers/scsi/ibmmca.c
@@ -497,8 +497,7 @@ static int option_setup(char *);
497static int ldn_access_load(int, int); 497static int ldn_access_load(int, int);
498static int ldn_access_total_read_write(int); 498static int ldn_access_total_read_write(int);
499 499
500static irqreturn_t interrupt_handler(int irq, void *dev_id, 500static irqreturn_t interrupt_handler(int irq, void *dev_id)
501 struct pt_regs *regs)
502{ 501{
503 int host_index, ihost_index; 502 int host_index, ihost_index;
504 unsigned int intr_reg; 503 unsigned int intr_reg;
diff --git a/drivers/scsi/ibmvscsi/rpa_vscsi.c b/drivers/scsi/ibmvscsi/rpa_vscsi.c
index 01b8ac641eb8..227c0f2f4d74 100644
--- a/drivers/scsi/ibmvscsi/rpa_vscsi.c
+++ b/drivers/scsi/ibmvscsi/rpa_vscsi.c
@@ -45,14 +45,11 @@ static unsigned int partition_number = -1;
45 * ibmvscsi_handle_event: - Interrupt handler for crq events 45 * ibmvscsi_handle_event: - Interrupt handler for crq events
46 * @irq: number of irq to handle, not used 46 * @irq: number of irq to handle, not used
47 * @dev_instance: ibmvscsi_host_data of host that received interrupt 47 * @dev_instance: ibmvscsi_host_data of host that received interrupt
48 * @regs: pt_regs with registers
49 * 48 *
50 * Disables interrupts and schedules srp_task 49 * Disables interrupts and schedules srp_task
51 * Always returns IRQ_HANDLED 50 * Always returns IRQ_HANDLED
52 */ 51 */
53static irqreturn_t ibmvscsi_handle_event(int irq, 52static irqreturn_t ibmvscsi_handle_event(int irq, void *dev_instance)
54 void *dev_instance,
55 struct pt_regs *regs)
56{ 53{
57 struct ibmvscsi_host_data *hostdata = 54 struct ibmvscsi_host_data *hostdata =
58 (struct ibmvscsi_host_data *)dev_instance; 55 (struct ibmvscsi_host_data *)dev_instance;
diff --git a/drivers/scsi/in2000.c b/drivers/scsi/in2000.c
index 59a4097f1254..312190a69389 100644
--- a/drivers/scsi/in2000.c
+++ b/drivers/scsi/in2000.c
@@ -829,7 +829,7 @@ static void transfer_bytes(Scsi_Cmnd * cmd, int data_in_dir)
829 * but it _does_ need to be able to compile and run in an SMP kernel.) 829 * but it _does_ need to be able to compile and run in an SMP kernel.)
830 */ 830 */
831 831
832static irqreturn_t in2000_intr(int irqnum, void *dev_id, struct pt_regs *ptregs) 832static irqreturn_t in2000_intr(int irqnum, void *dev_id)
833{ 833{
834 struct Scsi_Host *instance = dev_id; 834 struct Scsi_Host *instance = dev_id;
835 struct IN2000_hostdata *hostdata; 835 struct IN2000_hostdata *hostdata;
diff --git a/drivers/scsi/initio.c b/drivers/scsi/initio.c
index 9e10dac61cfd..911f2ff4a1f2 100644
--- a/drivers/scsi/initio.c
+++ b/drivers/scsi/initio.c
@@ -2748,7 +2748,7 @@ int tul_wait_done_disc(HCS * pCurHcb)
2748 return (tul_bad_seq(pCurHcb)); 2748 return (tul_bad_seq(pCurHcb));
2749} 2749}
2750 2750
2751static irqreturn_t i91u_intr(int irqno, void *dev_id, struct pt_regs *regs) 2751static irqreturn_t i91u_intr(int irqno, void *dev_id)
2752{ 2752{
2753 struct Scsi_Host *dev = dev_id; 2753 struct Scsi_Host *dev = dev_id;
2754 unsigned long flags; 2754 unsigned long flags;
diff --git a/drivers/scsi/ipr.c b/drivers/scsi/ipr.c
index e1fe9494125b..2dde821025f3 100644
--- a/drivers/scsi/ipr.c
+++ b/drivers/scsi/ipr.c
@@ -3880,12 +3880,11 @@ static irqreturn_t ipr_handle_other_interrupt(struct ipr_ioa_cfg *ioa_cfg,
3880 * ipr_isr - Interrupt service routine 3880 * ipr_isr - Interrupt service routine
3881 * @irq: irq number 3881 * @irq: irq number
3882 * @devp: pointer to ioa config struct 3882 * @devp: pointer to ioa config struct
3883 * @regs: pt_regs struct
3884 * 3883 *
3885 * Return value: 3884 * Return value:
3886 * IRQ_NONE / IRQ_HANDLED 3885 * IRQ_NONE / IRQ_HANDLED
3887 **/ 3886 **/
3888static irqreturn_t ipr_isr(int irq, void *devp, struct pt_regs *regs) 3887static irqreturn_t ipr_isr(int irq, void *devp)
3889{ 3888{
3890 struct ipr_ioa_cfg *ioa_cfg = (struct ipr_ioa_cfg *)devp; 3889 struct ipr_ioa_cfg *ioa_cfg = (struct ipr_ioa_cfg *)devp;
3891 unsigned long lock_flags = 0; 3890 unsigned long lock_flags = 0;
diff --git a/drivers/scsi/ips.c b/drivers/scsi/ips.c
index 9a9ab297cf17..f06a06ae6092 100644
--- a/drivers/scsi/ips.c
+++ b/drivers/scsi/ips.c
@@ -248,7 +248,7 @@ static int ips_eh_abort(struct scsi_cmnd *);
248static int ips_eh_reset(struct scsi_cmnd *); 248static int ips_eh_reset(struct scsi_cmnd *);
249static int ips_queue(struct scsi_cmnd *, void (*)(struct scsi_cmnd *)); 249static int ips_queue(struct scsi_cmnd *, void (*)(struct scsi_cmnd *));
250static const char *ips_info(struct Scsi_Host *); 250static const char *ips_info(struct Scsi_Host *);
251static irqreturn_t do_ipsintr(int, void *, struct pt_regs *); 251static irqreturn_t do_ipsintr(int, void *);
252static int ips_hainit(ips_ha_t *); 252static int ips_hainit(ips_ha_t *);
253static int ips_map_status(ips_ha_t *, ips_scb_t *, ips_stat_t *); 253static int ips_map_status(ips_ha_t *, ips_scb_t *, ips_stat_t *);
254static int ips_send_wait(ips_ha_t *, ips_scb_t *, int, int); 254static int ips_send_wait(ips_ha_t *, ips_scb_t *, int, int);
@@ -1328,7 +1328,7 @@ ips_slave_configure(struct scsi_device * SDptr)
1328/* */ 1328/* */
1329/****************************************************************************/ 1329/****************************************************************************/
1330static irqreturn_t 1330static irqreturn_t
1331do_ipsintr(int irq, void *dev_id, struct pt_regs * regs) 1331do_ipsintr(int irq, void *dev_id)
1332{ 1332{
1333 ips_ha_t *ha; 1333 ips_ha_t *ha;
1334 unsigned long cpu_flags; 1334 unsigned long cpu_flags;
diff --git a/drivers/scsi/lpfc/lpfc_crtn.h b/drivers/scsi/lpfc/lpfc_crtn.h
index 3d684496acde..1251788ce2a3 100644
--- a/drivers/scsi/lpfc/lpfc_crtn.h
+++ b/drivers/scsi/lpfc/lpfc_crtn.h
@@ -120,7 +120,7 @@ int lpfc_sli_queue_setup(struct lpfc_hba *);
120 120
121void lpfc_handle_eratt(struct lpfc_hba *); 121void lpfc_handle_eratt(struct lpfc_hba *);
122void lpfc_handle_latt(struct lpfc_hba *); 122void lpfc_handle_latt(struct lpfc_hba *);
123irqreturn_t lpfc_intr_handler(int, void *, struct pt_regs *); 123irqreturn_t lpfc_intr_handler(int, void *);
124 124
125void lpfc_read_rev(struct lpfc_hba *, LPFC_MBOXQ_t *); 125void lpfc_read_rev(struct lpfc_hba *, LPFC_MBOXQ_t *);
126void lpfc_config_ring(struct lpfc_hba *, int, LPFC_MBOXQ_t *); 126void lpfc_config_ring(struct lpfc_hba *, int, LPFC_MBOXQ_t *);
diff --git a/drivers/scsi/lpfc/lpfc_sli.c b/drivers/scsi/lpfc/lpfc_sli.c
index 70f4d5a1348e..24a1779b9af4 100644
--- a/drivers/scsi/lpfc/lpfc_sli.c
+++ b/drivers/scsi/lpfc/lpfc_sli.c
@@ -3119,7 +3119,7 @@ lpfc_sli_flush_mbox_queue(struct lpfc_hba * phba)
3119} 3119}
3120 3120
3121irqreturn_t 3121irqreturn_t
3122lpfc_intr_handler(int irq, void *dev_id, struct pt_regs * regs) 3122lpfc_intr_handler(int irq, void *dev_id)
3123{ 3123{
3124 struct lpfc_hba *phba; 3124 struct lpfc_hba *phba;
3125 uint32_t ha_copy; 3125 uint32_t ha_copy;
diff --git a/drivers/scsi/mac53c94.c b/drivers/scsi/mac53c94.c
index 6422de72bf43..753d88306cd1 100644
--- a/drivers/scsi/mac53c94.c
+++ b/drivers/scsi/mac53c94.c
@@ -60,8 +60,8 @@ struct fsc_state {
60 60
61static void mac53c94_init(struct fsc_state *); 61static void mac53c94_init(struct fsc_state *);
62static void mac53c94_start(struct fsc_state *); 62static void mac53c94_start(struct fsc_state *);
63static void mac53c94_interrupt(int, void *, struct pt_regs *); 63static void mac53c94_interrupt(int, void *);
64static irqreturn_t do_mac53c94_interrupt(int, void *, struct pt_regs *); 64static irqreturn_t do_mac53c94_interrupt(int, void *);
65static void cmd_done(struct fsc_state *, int result); 65static void cmd_done(struct fsc_state *, int result);
66static void set_dma_cmds(struct fsc_state *, struct scsi_cmnd *); 66static void set_dma_cmds(struct fsc_state *, struct scsi_cmnd *);
67 67
@@ -177,18 +177,18 @@ static void mac53c94_start(struct fsc_state *state)
177 set_dma_cmds(state, cmd); 177 set_dma_cmds(state, cmd);
178} 178}
179 179
180static irqreturn_t do_mac53c94_interrupt(int irq, void *dev_id, struct pt_regs *ptregs) 180static irqreturn_t do_mac53c94_interrupt(int irq, void *dev_id)
181{ 181{
182 unsigned long flags; 182 unsigned long flags;
183 struct Scsi_Host *dev = ((struct fsc_state *) dev_id)->current_req->device->host; 183 struct Scsi_Host *dev = ((struct fsc_state *) dev_id)->current_req->device->host;
184 184
185 spin_lock_irqsave(dev->host_lock, flags); 185 spin_lock_irqsave(dev->host_lock, flags);
186 mac53c94_interrupt(irq, dev_id, ptregs); 186 mac53c94_interrupt(irq, dev_id);
187 spin_unlock_irqrestore(dev->host_lock, flags); 187 spin_unlock_irqrestore(dev->host_lock, flags);
188 return IRQ_HANDLED; 188 return IRQ_HANDLED;
189} 189}
190 190
191static void mac53c94_interrupt(int irq, void *dev_id, struct pt_regs *ptregs) 191static void mac53c94_interrupt(int irq, void *dev_id)
192{ 192{
193 struct fsc_state *state = (struct fsc_state *) dev_id; 193 struct fsc_state *state = (struct fsc_state *) dev_id;
194 struct mac53c94_regs __iomem *regs = state->regs; 194 struct mac53c94_regs __iomem *regs = state->regs;
diff --git a/drivers/scsi/mac_esp.c b/drivers/scsi/mac_esp.c
index 118206d68c6c..3586fac9be9a 100644
--- a/drivers/scsi/mac_esp.c
+++ b/drivers/scsi/mac_esp.c
@@ -44,7 +44,7 @@
44/* #define DEBUG_MAC_ESP */ 44/* #define DEBUG_MAC_ESP */
45 45
46extern void esp_handle(struct NCR_ESP *esp); 46extern void esp_handle(struct NCR_ESP *esp);
47extern void mac_esp_intr(int irq, void *dev_id, struct pt_regs *pregs); 47extern void mac_esp_intr(int irq, void *dev_id);
48 48
49static int dma_bytes_sent(struct NCR_ESP * esp, int fifo_count); 49static int dma_bytes_sent(struct NCR_ESP * esp, int fifo_count);
50static int dma_can_transfer(struct NCR_ESP * esp, Scsi_Cmnd *sp); 50static int dma_can_transfer(struct NCR_ESP * esp, Scsi_Cmnd *sp);
@@ -88,7 +88,7 @@ static int setup_hostid = -1;
88 * set up properly! 88 * set up properly!
89 */ 89 */
90 90
91void mac_esp_intr(int irq, void *dev_id, struct pt_regs *pregs) 91void mac_esp_intr(int irq, void *dev_id)
92{ 92{
93 struct NCR_ESP *esp = (struct NCR_ESP *) dev_id; 93 struct NCR_ESP *esp = (struct NCR_ESP *) dev_id;
94 int irq_p = 0; 94 int irq_p = 0;
@@ -122,24 +122,24 @@ void mac_esp_intr(int irq, void *dev_id, struct pt_regs *pregs)
122 * acknowledge on the various machines 122 * acknowledge on the various machines
123 */ 123 */
124 124
125void scsi_esp_polled(int irq, void *dev_id, struct pt_regs *pregs) 125void scsi_esp_polled(int irq, void *dev_id)
126{ 126{
127 if (esp_initialized == 0) 127 if (esp_initialized == 0)
128 return; 128 return;
129 129
130 mac_esp_intr(irq, dev_id, pregs); 130 mac_esp_intr(irq, dev_id);
131} 131}
132 132
133void fake_intr(int irq, void *dev_id, struct pt_regs *pregs) 133void fake_intr(int irq, void *dev_id)
134{ 134{
135#ifdef DEBUG_MAC_ESP 135#ifdef DEBUG_MAC_ESP
136 printk("mac_esp: got irq\n"); 136 printk("mac_esp: got irq\n");
137#endif 137#endif
138 138
139 mac_esp_intr(irq, dev_id, pregs); 139 mac_esp_intr(irq, dev_id);
140} 140}
141 141
142irqreturn_t fake_drq(int irq, void *dev_id, struct pt_regs *pregs) 142irqreturn_t fake_drq(int irq, void *dev_id)
143{ 143{
144 printk("mac_esp: got drq\n"); 144 printk("mac_esp: got drq\n");
145 return IRQ_HANDLED; 145 return IRQ_HANDLED;
diff --git a/drivers/scsi/megaraid.c b/drivers/scsi/megaraid.c
index b87bef69ba0f..86099fde1b2a 100644
--- a/drivers/scsi/megaraid.c
+++ b/drivers/scsi/megaraid.c
@@ -1256,14 +1256,13 @@ bug_blocked_mailbox:
1256 * megaraid_isr_iomapped() 1256 * megaraid_isr_iomapped()
1257 * @irq - irq 1257 * @irq - irq
1258 * @devp - pointer to our soft state 1258 * @devp - pointer to our soft state
1259 * @regs - unused
1260 * 1259 *
1261 * Interrupt service routine for io-mapped controllers. 1260 * Interrupt service routine for io-mapped controllers.
1262 * Find out if our device is interrupting. If yes, acknowledge the interrupt 1261 * Find out if our device is interrupting. If yes, acknowledge the interrupt
1263 * and service the completed commands. 1262 * and service the completed commands.
1264 */ 1263 */
1265static irqreturn_t 1264static irqreturn_t
1266megaraid_isr_iomapped(int irq, void *devp, struct pt_regs *regs) 1265megaraid_isr_iomapped(int irq, void *devp)
1267{ 1266{
1268 adapter_t *adapter = devp; 1267 adapter_t *adapter = devp;
1269 unsigned long flags; 1268 unsigned long flags;
@@ -1333,14 +1332,13 @@ megaraid_isr_iomapped(int irq, void *devp, struct pt_regs *regs)
1333 * megaraid_isr_memmapped() 1332 * megaraid_isr_memmapped()
1334 * @irq - irq 1333 * @irq - irq
1335 * @devp - pointer to our soft state 1334 * @devp - pointer to our soft state
1336 * @regs - unused
1337 * 1335 *
1338 * Interrupt service routine for memory-mapped controllers. 1336 * Interrupt service routine for memory-mapped controllers.
1339 * Find out if our device is interrupting. If yes, acknowledge the interrupt 1337 * Find out if our device is interrupting. If yes, acknowledge the interrupt
1340 * and service the completed commands. 1338 * and service the completed commands.
1341 */ 1339 */
1342static irqreturn_t 1340static irqreturn_t
1343megaraid_isr_memmapped(int irq, void *devp, struct pt_regs *regs) 1341megaraid_isr_memmapped(int irq, void *devp)
1344{ 1342{
1345 adapter_t *adapter = devp; 1343 adapter_t *adapter = devp;
1346 unsigned long flags; 1344 unsigned long flags;
diff --git a/drivers/scsi/megaraid.h b/drivers/scsi/megaraid.h
index 4b75fe619d9c..66529f11d23c 100644
--- a/drivers/scsi/megaraid.h
+++ b/drivers/scsi/megaraid.h
@@ -991,8 +991,8 @@ static scb_t * mega_build_cmd(adapter_t *, Scsi_Cmnd *, int *);
991static void __mega_runpendq(adapter_t *); 991static void __mega_runpendq(adapter_t *);
992static int issue_scb_block(adapter_t *, u_char *); 992static int issue_scb_block(adapter_t *, u_char *);
993 993
994static irqreturn_t megaraid_isr_memmapped(int, void *, struct pt_regs *); 994static irqreturn_t megaraid_isr_memmapped(int, void *);
995static irqreturn_t megaraid_isr_iomapped(int, void *, struct pt_regs *); 995static irqreturn_t megaraid_isr_iomapped(int, void *);
996 996
997static void mega_free_scb(adapter_t *, scb_t *); 997static void mega_free_scb(adapter_t *, scb_t *);
998 998
diff --git a/drivers/scsi/megaraid/megaraid_mbox.c b/drivers/scsi/megaraid/megaraid_mbox.c
index 266b3910846b..c0edb662d863 100644
--- a/drivers/scsi/megaraid/megaraid_mbox.c
+++ b/drivers/scsi/megaraid/megaraid_mbox.c
@@ -120,7 +120,7 @@ static void megaraid_mbox_prepare_pthru(adapter_t *, scb_t *,
120static void megaraid_mbox_prepare_epthru(adapter_t *, scb_t *, 120static void megaraid_mbox_prepare_epthru(adapter_t *, scb_t *,
121 struct scsi_cmnd *); 121 struct scsi_cmnd *);
122 122
123static irqreturn_t megaraid_isr(int, void *, struct pt_regs *); 123static irqreturn_t megaraid_isr(int, void *);
124 124
125static void megaraid_mbox_dpc(unsigned long); 125static void megaraid_mbox_dpc(unsigned long);
126 126
@@ -2231,7 +2231,7 @@ megaraid_ack_sequence(adapter_t *adapter)
2231 * Interrupt service routine for memory-mapped mailbox controllers. 2231 * Interrupt service routine for memory-mapped mailbox controllers.
2232 */ 2232 */
2233static irqreturn_t 2233static irqreturn_t
2234megaraid_isr(int irq, void *devp, struct pt_regs *regs) 2234megaraid_isr(int irq, void *devp)
2235{ 2235{
2236 adapter_t *adapter = devp; 2236 adapter_t *adapter = devp;
2237 int handled; 2237 int handled;
diff --git a/drivers/scsi/megaraid/megaraid_sas.c b/drivers/scsi/megaraid/megaraid_sas.c
index 977b6e8d8525..7e4262f2af96 100644
--- a/drivers/scsi/megaraid/megaraid_sas.c
+++ b/drivers/scsi/megaraid/megaraid_sas.c
@@ -1293,7 +1293,7 @@ megasas_deplete_reply_queue(struct megasas_instance *instance, u8 alt_status)
1293/** 1293/**
1294 * megasas_isr - isr entry point 1294 * megasas_isr - isr entry point
1295 */ 1295 */
1296static irqreturn_t megasas_isr(int irq, void *devp, struct pt_regs *regs) 1296static irqreturn_t megasas_isr(int irq, void *devp)
1297{ 1297{
1298 return megasas_deplete_reply_queue((struct megasas_instance *)devp, 1298 return megasas_deplete_reply_queue((struct megasas_instance *)devp,
1299 DID_OK); 1299 DID_OK);
diff --git a/drivers/scsi/mesh.c b/drivers/scsi/mesh.c
index 683fc7ae4b8f..c773e35dace7 100644
--- a/drivers/scsi/mesh.c
+++ b/drivers/scsi/mesh.c
@@ -185,7 +185,7 @@ struct mesh_state {
185 * Driver is too messy, we need a few prototypes... 185 * Driver is too messy, we need a few prototypes...
186 */ 186 */
187static void mesh_done(struct mesh_state *ms, int start_next); 187static void mesh_done(struct mesh_state *ms, int start_next);
188static void mesh_interrupt(int irq, void *dev_id, struct pt_regs *ptregs); 188static void mesh_interrupt(int irq, void *dev_id);
189static void cmd_complete(struct mesh_state *ms); 189static void cmd_complete(struct mesh_state *ms);
190static void set_dma_cmds(struct mesh_state *ms, struct scsi_cmnd *cmd); 190static void set_dma_cmds(struct mesh_state *ms, struct scsi_cmnd *cmd);
191static void halt_dma(struct mesh_state *ms); 191static void halt_dma(struct mesh_state *ms);
@@ -1015,13 +1015,13 @@ static void handle_reset(struct mesh_state *ms)
1015 out_8(&mr->sequence, SEQ_ENBRESEL); 1015 out_8(&mr->sequence, SEQ_ENBRESEL);
1016} 1016}
1017 1017
1018static irqreturn_t do_mesh_interrupt(int irq, void *dev_id, struct pt_regs *ptregs) 1018static irqreturn_t do_mesh_interrupt(int irq, void *dev_id)
1019{ 1019{
1020 unsigned long flags; 1020 unsigned long flags;
1021 struct Scsi_Host *dev = ((struct mesh_state *)dev_id)->host; 1021 struct Scsi_Host *dev = ((struct mesh_state *)dev_id)->host;
1022 1022
1023 spin_lock_irqsave(dev->host_lock, flags); 1023 spin_lock_irqsave(dev->host_lock, flags);
1024 mesh_interrupt(irq, dev_id, ptregs); 1024 mesh_interrupt(irq, dev_id);
1025 spin_unlock_irqrestore(dev->host_lock, flags); 1025 spin_unlock_irqrestore(dev->host_lock, flags);
1026 return IRQ_HANDLED; 1026 return IRQ_HANDLED;
1027} 1027}
@@ -1661,7 +1661,7 @@ static int mesh_queue(struct scsi_cmnd *cmd, void (*done)(struct scsi_cmnd *))
1661 * handler (do_mesh_interrupt) or by other functions in 1661 * handler (do_mesh_interrupt) or by other functions in
1662 * exceptional circumstances 1662 * exceptional circumstances
1663 */ 1663 */
1664static void mesh_interrupt(int irq, void *dev_id, struct pt_regs *ptregs) 1664static void mesh_interrupt(int irq, void *dev_id)
1665{ 1665{
1666 struct mesh_state *ms = (struct mesh_state *) dev_id; 1666 struct mesh_state *ms = (struct mesh_state *) dev_id;
1667 volatile struct mesh_regs __iomem *mr = ms->mesh; 1667 volatile struct mesh_regs __iomem *mr = ms->mesh;
diff --git a/drivers/scsi/mvme147.c b/drivers/scsi/mvme147.c
index 9b991b746d1e..1ddd7a11a958 100644
--- a/drivers/scsi/mvme147.c
+++ b/drivers/scsi/mvme147.c
@@ -20,7 +20,7 @@
20 20
21static struct Scsi_Host *mvme147_host = NULL; 21static struct Scsi_Host *mvme147_host = NULL;
22 22
23static irqreturn_t mvme147_intr (int irq, void *dummy, struct pt_regs *fp) 23static irqreturn_t mvme147_intr (int irq, void *dummy)
24{ 24{
25 if (irq == MVME147_IRQ_SCSI_PORT) 25 if (irq == MVME147_IRQ_SCSI_PORT)
26 wd33c93_intr (mvme147_host); 26 wd33c93_intr (mvme147_host);
diff --git a/drivers/scsi/mvme16x.h b/drivers/scsi/mvme16x.h
index c7a12533fb2c..73e33b37a3f8 100644
--- a/drivers/scsi/mvme16x.h
+++ b/drivers/scsi/mvme16x.h
@@ -9,7 +9,7 @@ int NCR53c7xx_queue_command(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *));
9int NCR53c7xx_abort(Scsi_Cmnd *); 9int NCR53c7xx_abort(Scsi_Cmnd *);
10int NCR53c7x0_release (struct Scsi_Host *); 10int NCR53c7x0_release (struct Scsi_Host *);
11int NCR53c7xx_reset(Scsi_Cmnd *, unsigned int); 11int NCR53c7xx_reset(Scsi_Cmnd *, unsigned int);
12void NCR53c7x0_intr(int irq, void *dev_id, struct pt_regs * regs); 12void NCR53c7x0_intr(int irq, void *dev_id);
13 13
14#ifndef CMD_PER_LUN 14#ifndef CMD_PER_LUN
15#define CMD_PER_LUN 3 15#define CMD_PER_LUN 3
diff --git a/drivers/scsi/ncr53c8xx.c b/drivers/scsi/ncr53c8xx.c
index b28712df0b77..6cc2bc2f62be 100644
--- a/drivers/scsi/ncr53c8xx.c
+++ b/drivers/scsi/ncr53c8xx.c
@@ -8111,7 +8111,7 @@ printk("ncr53c8xx : command successfully queued\n");
8111 return sts; 8111 return sts;
8112} 8112}
8113 8113
8114irqreturn_t ncr53c8xx_intr(int irq, void *dev_id, struct pt_regs * regs) 8114irqreturn_t ncr53c8xx_intr(int irq, void *dev_id)
8115{ 8115{
8116 unsigned long flags; 8116 unsigned long flags;
8117 struct Scsi_Host *shost = (struct Scsi_Host *)dev_id; 8117 struct Scsi_Host *shost = (struct Scsi_Host *)dev_id;
diff --git a/drivers/scsi/ncr53c8xx.h b/drivers/scsi/ncr53c8xx.h
index 78818b6684f8..cb8b7701431e 100644
--- a/drivers/scsi/ncr53c8xx.h
+++ b/drivers/scsi/ncr53c8xx.h
@@ -1322,7 +1322,7 @@ struct ncr_device {
1322 1322
1323extern struct Scsi_Host *ncr_attach(struct scsi_host_template *tpnt, int unit, struct ncr_device *device); 1323extern struct Scsi_Host *ncr_attach(struct scsi_host_template *tpnt, int unit, struct ncr_device *device);
1324extern int ncr53c8xx_release(struct Scsi_Host *host); 1324extern int ncr53c8xx_release(struct Scsi_Host *host);
1325irqreturn_t ncr53c8xx_intr(int irq, void *dev_id, struct pt_regs * regs); 1325irqreturn_t ncr53c8xx_intr(int irq, void *dev_id);
1326extern int ncr53c8xx_init(void); 1326extern int ncr53c8xx_init(void);
1327extern void ncr53c8xx_exit(void); 1327extern void ncr53c8xx_exit(void);
1328 1328
diff --git a/drivers/scsi/nsp32.c b/drivers/scsi/nsp32.c
index 1c624ce81897..7c13f6f4a4c6 100644
--- a/drivers/scsi/nsp32.c
+++ b/drivers/scsi/nsp32.c
@@ -256,7 +256,7 @@ static void nsp32_sack_negate (nsp32_hw_data *);
256static void nsp32_do_bus_reset(nsp32_hw_data *); 256static void nsp32_do_bus_reset(nsp32_hw_data *);
257 257
258/* hardware interrupt handler */ 258/* hardware interrupt handler */
259static irqreturn_t do_nsp32_isr(int, void *, struct pt_regs *); 259static irqreturn_t do_nsp32_isr(int, void *);
260 260
261/* initialize hardware */ 261/* initialize hardware */
262static int nsp32hw_init(nsp32_hw_data *); 262static int nsp32hw_init(nsp32_hw_data *);
@@ -1201,7 +1201,7 @@ static int nsp32hw_init(nsp32_hw_data *data)
1201 1201
1202 1202
1203/* interrupt routine */ 1203/* interrupt routine */
1204static irqreturn_t do_nsp32_isr(int irq, void *dev_id, struct pt_regs *regs) 1204static irqreturn_t do_nsp32_isr(int irq, void *dev_id)
1205{ 1205{
1206 nsp32_hw_data *data = dev_id; 1206 nsp32_hw_data *data = dev_id;
1207 unsigned int base = data->BaseAddress; 1207 unsigned int base = data->BaseAddress;
diff --git a/drivers/scsi/pcmcia/nsp_cs.c b/drivers/scsi/pcmcia/nsp_cs.c
index 053303d36118..b1d346049525 100644
--- a/drivers/scsi/pcmcia/nsp_cs.c
+++ b/drivers/scsi/pcmcia/nsp_cs.c
@@ -948,7 +948,7 @@ static int nsp_nexus(Scsi_Cmnd *SCpnt)
948/* 948/*
949 * interrupt handler 949 * interrupt handler
950 */ 950 */
951static irqreturn_t nspintr(int irq, void *dev_id, struct pt_regs *regs) 951static irqreturn_t nspintr(int irq, void *dev_id)
952{ 952{
953 unsigned int base; 953 unsigned int base;
954 unsigned char irq_status, irq_phase, phase; 954 unsigned char irq_status, irq_phase, phase;
diff --git a/drivers/scsi/pcmcia/nsp_cs.h b/drivers/scsi/pcmcia/nsp_cs.h
index 8908b8e5b78a..a88714f4c05b 100644
--- a/drivers/scsi/pcmcia/nsp_cs.h
+++ b/drivers/scsi/pcmcia/nsp_cs.h
@@ -346,7 +346,7 @@ static int nsp_reselected (Scsi_Cmnd *SCpnt);
346static struct Scsi_Host *nsp_detect(struct scsi_host_template *sht); 346static struct Scsi_Host *nsp_detect(struct scsi_host_template *sht);
347 347
348/* Interrupt handler */ 348/* Interrupt handler */
349//static irqreturn_t nspintr(int irq, void *dev_id, struct pt_regs *regs); 349//static irqreturn_t nspintr(int irq, void *dev_id);
350 350
351/* Module entry point*/ 351/* Module entry point*/
352static int __init nsp_cs_init(void); 352static int __init nsp_cs_init(void);
diff --git a/drivers/scsi/pcmcia/sym53c500_cs.c b/drivers/scsi/pcmcia/sym53c500_cs.c
index 0b65099acb1a..72fe5d055de1 100644
--- a/drivers/scsi/pcmcia/sym53c500_cs.c
+++ b/drivers/scsi/pcmcia/sym53c500_cs.c
@@ -363,7 +363,7 @@ SYM53C500_pio_write(int fast_pio, int base, unsigned char *request, unsigned int
363} 363}
364 364
365static irqreturn_t 365static irqreturn_t
366SYM53C500_intr(int irq, void *dev_id, struct pt_regs *regs) 366SYM53C500_intr(int irq, void *dev_id)
367{ 367{
368 unsigned long flags; 368 unsigned long flags;
369 struct Scsi_Host *dev = dev_id; 369 struct Scsi_Host *dev = dev_id;
diff --git a/drivers/scsi/psi240i.c b/drivers/scsi/psi240i.c
index 5c2cdf523c3b..a720c9265e66 100644
--- a/drivers/scsi/psi240i.c
+++ b/drivers/scsi/psi240i.c
@@ -247,12 +247,11 @@ static ULONG DecodeError (struct Scsi_Host *pshost, UCHAR status)
247 * 247 *
248 * Parameters: irq - Hardware IRQ number. 248 * Parameters: irq - Hardware IRQ number.
249 * dev_id - 249 * dev_id -
250 * regs -
251 * 250 *
252 * Returns: TRUE if drive is not ready in time. 251 * Returns: TRUE if drive is not ready in time.
253 * 252 *
254 ****************************************************************/ 253 ****************************************************************/
255static void Irq_Handler (int irq, void *dev_id, struct pt_regs *regs) 254static void Irq_Handler (int irq, void *dev_id)
256 { 255 {
257 struct Scsi_Host *shost; // Pointer to host data block 256 struct Scsi_Host *shost; // Pointer to host data block
258 PADAPTER240I padapter; // Pointer to adapter control structure 257 PADAPTER240I padapter; // Pointer to adapter control structure
@@ -368,13 +367,13 @@ irqerror:;
368 SCpnt->scsi_done (SCpnt); 367 SCpnt->scsi_done (SCpnt);
369 } 368 }
370 369
371static irqreturn_t do_Irq_Handler (int irq, void *dev_id, struct pt_regs *regs) 370static irqreturn_t do_Irq_Handler (int irq, void *dev_id)
372{ 371{
373 unsigned long flags; 372 unsigned long flags;
374 struct Scsi_Host *dev = dev_id; 373 struct Scsi_Host *dev = dev_id;
375 374
376 spin_lock_irqsave(dev->host_lock, flags); 375 spin_lock_irqsave(dev->host_lock, flags);
377 Irq_Handler(irq, dev_id, regs); 376 Irq_Handler(irq, dev_id);
378 spin_unlock_irqrestore(dev->host_lock, flags); 377 spin_unlock_irqrestore(dev->host_lock, flags);
379 return IRQ_HANDLED; 378 return IRQ_HANDLED;
380} 379}
diff --git a/drivers/scsi/qla1280.c b/drivers/scsi/qla1280.c
index 9f33e5946c0d..2521d548dd59 100644
--- a/drivers/scsi/qla1280.c
+++ b/drivers/scsi/qla1280.c
@@ -1113,7 +1113,7 @@ qla1280_enable_intrs(struct scsi_qla_host *ha)
1113 * Handles the H/W interrupt 1113 * Handles the H/W interrupt
1114 **************************************************************************/ 1114 **************************************************************************/
1115static irqreturn_t 1115static irqreturn_t
1116qla1280_intr_handler(int irq, void *dev_id, struct pt_regs *regs) 1116qla1280_intr_handler(int irq, void *dev_id)
1117{ 1117{
1118 struct scsi_qla_host *ha; 1118 struct scsi_qla_host *ha;
1119 struct device_reg __iomem *reg; 1119 struct device_reg __iomem *reg;
diff --git a/drivers/scsi/qla2xxx/qla_def.h b/drivers/scsi/qla2xxx/qla_def.h
index c37a30aa2146..bab33f6d0bdb 100644
--- a/drivers/scsi/qla2xxx/qla_def.h
+++ b/drivers/scsi/qla2xxx/qla_def.h
@@ -2009,7 +2009,7 @@ struct isp_operations {
2009 char * (*pci_info_str) (struct scsi_qla_host *, char *); 2009 char * (*pci_info_str) (struct scsi_qla_host *, char *);
2010 char * (*fw_version_str) (struct scsi_qla_host *, char *); 2010 char * (*fw_version_str) (struct scsi_qla_host *, char *);
2011 2011
2012 irqreturn_t (*intr_handler) (int, void *, struct pt_regs *); 2012 irq_handler_t intr_handler;
2013 void (*enable_intrs) (struct scsi_qla_host *); 2013 void (*enable_intrs) (struct scsi_qla_host *);
2014 void (*disable_intrs) (struct scsi_qla_host *); 2014 void (*disable_intrs) (struct scsi_qla_host *);
2015 2015
diff --git a/drivers/scsi/qla2xxx/qla_gbl.h b/drivers/scsi/qla2xxx/qla_gbl.h
index 990b897560cc..7da69832d74c 100644
--- a/drivers/scsi/qla2xxx/qla_gbl.h
+++ b/drivers/scsi/qla2xxx/qla_gbl.h
@@ -217,9 +217,9 @@ qla2x00_set_idma_speed(scsi_qla_host_t *, uint16_t, uint16_t, uint16_t *);
217/* 217/*
218 * Global Function Prototypes in qla_isr.c source file. 218 * Global Function Prototypes in qla_isr.c source file.
219 */ 219 */
220extern irqreturn_t qla2100_intr_handler(int, void *, struct pt_regs *); 220extern irqreturn_t qla2100_intr_handler(int, void *);
221extern irqreturn_t qla2300_intr_handler(int, void *, struct pt_regs *); 221extern irqreturn_t qla2300_intr_handler(int, void *);
222extern irqreturn_t qla24xx_intr_handler(int, void *, struct pt_regs *); 222extern irqreturn_t qla24xx_intr_handler(int, void *);
223extern void qla2x00_process_response_queue(struct scsi_qla_host *); 223extern void qla2x00_process_response_queue(struct scsi_qla_host *);
224extern void qla24xx_process_response_queue(struct scsi_qla_host *); 224extern void qla24xx_process_response_queue(struct scsi_qla_host *);
225 225
diff --git a/drivers/scsi/qla2xxx/qla_inline.h b/drivers/scsi/qla2xxx/qla_inline.h
index 45007ee58067..d3023338628f 100644
--- a/drivers/scsi/qla2xxx/qla_inline.h
+++ b/drivers/scsi/qla2xxx/qla_inline.h
@@ -104,7 +104,7 @@ static __inline__ void qla2x00_poll(scsi_qla_host_t *);
104static inline void 104static inline void
105qla2x00_poll(scsi_qla_host_t *ha) 105qla2x00_poll(scsi_qla_host_t *ha)
106{ 106{
107 ha->isp_ops.intr_handler(0, ha, NULL); 107 ha->isp_ops.intr_handler(0, ha);
108} 108}
109 109
110static __inline__ void qla2x00_check_fabric_devices(scsi_qla_host_t *); 110static __inline__ void qla2x00_check_fabric_devices(scsi_qla_host_t *);
diff --git a/drivers/scsi/qla2xxx/qla_isr.c b/drivers/scsi/qla2xxx/qla_isr.c
index 5fa933cda992..626c7178a434 100644
--- a/drivers/scsi/qla2xxx/qla_isr.c
+++ b/drivers/scsi/qla2xxx/qla_isr.c
@@ -20,14 +20,13 @@ static void qla24xx_ms_entry(scsi_qla_host_t *, struct ct_entry_24xx *);
20 * qla2100_intr_handler() - Process interrupts for the ISP2100 and ISP2200. 20 * qla2100_intr_handler() - Process interrupts for the ISP2100 and ISP2200.
21 * @irq: 21 * @irq:
22 * @dev_id: SCSI driver HA context 22 * @dev_id: SCSI driver HA context
23 * @regs:
24 * 23 *
25 * Called by system whenever the host adapter generates an interrupt. 24 * Called by system whenever the host adapter generates an interrupt.
26 * 25 *
27 * Returns handled flag. 26 * Returns handled flag.
28 */ 27 */
29irqreturn_t 28irqreturn_t
30qla2100_intr_handler(int irq, void *dev_id, struct pt_regs *regs) 29qla2100_intr_handler(int irq, void *dev_id)
31{ 30{
32 scsi_qla_host_t *ha; 31 scsi_qla_host_t *ha;
33 struct device_reg_2xxx __iomem *reg; 32 struct device_reg_2xxx __iomem *reg;
@@ -100,14 +99,13 @@ qla2100_intr_handler(int irq, void *dev_id, struct pt_regs *regs)
100 * qla2300_intr_handler() - Process interrupts for the ISP23xx and ISP63xx. 99 * qla2300_intr_handler() - Process interrupts for the ISP23xx and ISP63xx.
101 * @irq: 100 * @irq:
102 * @dev_id: SCSI driver HA context 101 * @dev_id: SCSI driver HA context
103 * @regs:
104 * 102 *
105 * Called by system whenever the host adapter generates an interrupt. 103 * Called by system whenever the host adapter generates an interrupt.
106 * 104 *
107 * Returns handled flag. 105 * Returns handled flag.
108 */ 106 */
109irqreturn_t 107irqreturn_t
110qla2300_intr_handler(int irq, void *dev_id, struct pt_regs *regs) 108qla2300_intr_handler(int irq, void *dev_id)
111{ 109{
112 scsi_qla_host_t *ha; 110 scsi_qla_host_t *ha;
113 struct device_reg_2xxx __iomem *reg; 111 struct device_reg_2xxx __iomem *reg;
@@ -1338,14 +1336,13 @@ qla24xx_process_response_queue(struct scsi_qla_host *ha)
1338 * qla24xx_intr_handler() - Process interrupts for the ISP23xx and ISP63xx. 1336 * qla24xx_intr_handler() - Process interrupts for the ISP23xx and ISP63xx.
1339 * @irq: 1337 * @irq:
1340 * @dev_id: SCSI driver HA context 1338 * @dev_id: SCSI driver HA context
1341 * @regs:
1342 * 1339 *
1343 * Called by system whenever the host adapter generates an interrupt. 1340 * Called by system whenever the host adapter generates an interrupt.
1344 * 1341 *
1345 * Returns handled flag. 1342 * Returns handled flag.
1346 */ 1343 */
1347irqreturn_t 1344irqreturn_t
1348qla24xx_intr_handler(int irq, void *dev_id, struct pt_regs *regs) 1345qla24xx_intr_handler(int irq, void *dev_id)
1349{ 1346{
1350 scsi_qla_host_t *ha; 1347 scsi_qla_host_t *ha;
1351 struct device_reg_24xx __iomem *reg; 1348 struct device_reg_24xx __iomem *reg;
diff --git a/drivers/scsi/qla4xxx/ql4_glbl.h b/drivers/scsi/qla4xxx/ql4_glbl.h
index 77a997a82cbb..2c803edf2de8 100644
--- a/drivers/scsi/qla4xxx/ql4_glbl.h
+++ b/drivers/scsi/qla4xxx/ql4_glbl.h
@@ -13,7 +13,7 @@ int qla4xxx_send_command_to_isp(struct scsi_qla_host *ha, struct srb * srb);
13int qla4xxx_initialize_adapter(struct scsi_qla_host * ha, 13int qla4xxx_initialize_adapter(struct scsi_qla_host * ha,
14 uint8_t renew_ddb_list); 14 uint8_t renew_ddb_list);
15int qla4xxx_soft_reset(struct scsi_qla_host *ha); 15int qla4xxx_soft_reset(struct scsi_qla_host *ha);
16irqreturn_t qla4xxx_intr_handler(int irq, void *dev_id, struct pt_regs *regs); 16irqreturn_t qla4xxx_intr_handler(int irq, void *dev_id);
17 17
18void qla4xxx_free_ddb_list(struct scsi_qla_host * ha); 18void qla4xxx_free_ddb_list(struct scsi_qla_host * ha);
19void qla4xxx_process_aen(struct scsi_qla_host * ha, uint8_t process_aen); 19void qla4xxx_process_aen(struct scsi_qla_host * ha, uint8_t process_aen);
diff --git a/drivers/scsi/qla4xxx/ql4_isr.c b/drivers/scsi/qla4xxx/ql4_isr.c
index b584317608d1..1e283321a59d 100644
--- a/drivers/scsi/qla4xxx/ql4_isr.c
+++ b/drivers/scsi/qla4xxx/ql4_isr.c
@@ -610,9 +610,8 @@ void qla4xxx_interrupt_service_routine(struct scsi_qla_host * ha,
610 * qla4xxx_intr_handler - hardware interrupt handler. 610 * qla4xxx_intr_handler - hardware interrupt handler.
611 * @irq: Unused 611 * @irq: Unused
612 * @dev_id: Pointer to host adapter structure 612 * @dev_id: Pointer to host adapter structure
613 * @regs: Unused
614 **/ 613 **/
615irqreturn_t qla4xxx_intr_handler(int irq, void *dev_id, struct pt_regs *regs) 614irqreturn_t qla4xxx_intr_handler(int irq, void *dev_id)
616{ 615{
617 struct scsi_qla_host *ha; 616 struct scsi_qla_host *ha;
618 uint32_t intr_status; 617 uint32_t intr_status;
diff --git a/drivers/scsi/qlogicfas408.c b/drivers/scsi/qlogicfas408.c
index 52fb2ec3da70..1a7de3bd796f 100644
--- a/drivers/scsi/qlogicfas408.c
+++ b/drivers/scsi/qlogicfas408.c
@@ -405,7 +405,7 @@ static unsigned int ql_pcmd(Scsi_Cmnd * cmd)
405 * Interrupt handler 405 * Interrupt handler
406 */ 406 */
407 407
408static void ql_ihandl(int irq, void *dev_id, struct pt_regs *regs) 408static void ql_ihandl(int irq, void *dev_id)
409{ 409{
410 Scsi_Cmnd *icmd; 410 Scsi_Cmnd *icmd;
411 struct Scsi_Host *host = (struct Scsi_Host *)dev_id; 411 struct Scsi_Host *host = (struct Scsi_Host *)dev_id;
@@ -432,13 +432,13 @@ static void ql_ihandl(int irq, void *dev_id, struct pt_regs *regs)
432 (icmd->scsi_done) (icmd); 432 (icmd->scsi_done) (icmd);
433} 433}
434 434
435irqreturn_t qlogicfas408_ihandl(int irq, void *dev_id, struct pt_regs *regs) 435irqreturn_t qlogicfas408_ihandl(int irq, void *dev_id)
436{ 436{
437 unsigned long flags; 437 unsigned long flags;
438 struct Scsi_Host *host = dev_id; 438 struct Scsi_Host *host = dev_id;
439 439
440 spin_lock_irqsave(host->host_lock, flags); 440 spin_lock_irqsave(host->host_lock, flags);
441 ql_ihandl(irq, dev_id, regs); 441 ql_ihandl(irq, dev_id);
442 spin_unlock_irqrestore(host->host_lock, flags); 442 spin_unlock_irqrestore(host->host_lock, flags);
443 return IRQ_HANDLED; 443 return IRQ_HANDLED;
444} 444}
diff --git a/drivers/scsi/qlogicfas408.h b/drivers/scsi/qlogicfas408.h
index 4b3df2003660..8fd5555c75b1 100644
--- a/drivers/scsi/qlogicfas408.h
+++ b/drivers/scsi/qlogicfas408.h
@@ -102,7 +102,7 @@ struct qlogicfas408_priv {
102#define get_priv_by_cmd(x) (struct qlogicfas408_priv *)&((x)->device->host->hostdata[0]) 102#define get_priv_by_cmd(x) (struct qlogicfas408_priv *)&((x)->device->host->hostdata[0])
103#define get_priv_by_host(x) (struct qlogicfas408_priv *)&((x)->hostdata[0]) 103#define get_priv_by_host(x) (struct qlogicfas408_priv *)&((x)->hostdata[0])
104 104
105irqreturn_t qlogicfas408_ihandl(int irq, void *dev_id, struct pt_regs *regs); 105irqreturn_t qlogicfas408_ihandl(int irq, void *dev_id);
106int qlogicfas408_queuecommand(Scsi_Cmnd * cmd, void (*done) (Scsi_Cmnd *)); 106int qlogicfas408_queuecommand(Scsi_Cmnd * cmd, void (*done) (Scsi_Cmnd *));
107int qlogicfas408_biosparam(struct scsi_device * disk, 107int qlogicfas408_biosparam(struct scsi_device * disk,
108 struct block_device *dev, 108 struct block_device *dev,
diff --git a/drivers/scsi/qlogicpti.c b/drivers/scsi/qlogicpti.c
index 5b2f0741a55b..ed58bb489889 100644
--- a/drivers/scsi/qlogicpti.c
+++ b/drivers/scsi/qlogicpti.c
@@ -649,7 +649,7 @@ static int qlogicpti_verify_tmon(struct qlogicpti *qpti)
649 return 0; 649 return 0;
650} 650}
651 651
652static irqreturn_t qpti_intr(int irq, void *dev_id, struct pt_regs *regs); 652static irqreturn_t qpti_intr(int irq, void *dev_id);
653 653
654static void __init qpti_chain_add(struct qlogicpti *qpti) 654static void __init qpti_chain_add(struct qlogicpti *qpti)
655{ 655{
@@ -1297,7 +1297,7 @@ static struct scsi_cmnd *qlogicpti_intr_handler(struct qlogicpti *qpti)
1297 return done_queue; 1297 return done_queue;
1298} 1298}
1299 1299
1300static irqreturn_t qpti_intr(int irq, void *dev_id, struct pt_regs *regs) 1300static irqreturn_t qpti_intr(int irq, void *dev_id)
1301{ 1301{
1302 struct qlogicpti *qpti = dev_id; 1302 struct qlogicpti *qpti = dev_id;
1303 unsigned long flags; 1303 unsigned long flags;
diff --git a/drivers/scsi/seagate.c b/drivers/scsi/seagate.c
index 4e6666ceae26..8ff1f2866f7b 100644
--- a/drivers/scsi/seagate.c
+++ b/drivers/scsi/seagate.c
@@ -320,8 +320,8 @@ static Signature __initdata signatures[] = {
320 */ 320 */
321 321
322static int hostno = -1; 322static int hostno = -1;
323static void seagate_reconnect_intr (int, void *, struct pt_regs *); 323static void seagate_reconnect_intr (int, void *);
324static irqreturn_t do_seagate_reconnect_intr (int, void *, struct pt_regs *); 324static irqreturn_t do_seagate_reconnect_intr (int, void *);
325static int seagate_st0x_bus_reset(struct scsi_cmnd *); 325static int seagate_st0x_bus_reset(struct scsi_cmnd *);
326 326
327#ifdef FAST 327#ifdef FAST
@@ -619,19 +619,18 @@ static int should_reconnect = 0;
619 * asserting SEL. 619 * asserting SEL.
620 */ 620 */
621 621
622static irqreturn_t do_seagate_reconnect_intr(int irq, void *dev_id, 622static irqreturn_t do_seagate_reconnect_intr(int irq, void *dev_id)
623 struct pt_regs *regs)
624{ 623{
625 unsigned long flags; 624 unsigned long flags;
626 struct Scsi_Host *dev = dev_id; 625 struct Scsi_Host *dev = dev_id;
627 626
628 spin_lock_irqsave (dev->host_lock, flags); 627 spin_lock_irqsave (dev->host_lock, flags);
629 seagate_reconnect_intr (irq, dev_id, regs); 628 seagate_reconnect_intr (irq, dev_id);
630 spin_unlock_irqrestore (dev->host_lock, flags); 629 spin_unlock_irqrestore (dev->host_lock, flags);
631 return IRQ_HANDLED; 630 return IRQ_HANDLED;
632} 631}
633 632
634static void seagate_reconnect_intr (int irq, void *dev_id, struct pt_regs *regs) 633static void seagate_reconnect_intr (int irq, void *dev_id)
635{ 634{
636 int temp; 635 int temp;
637 struct scsi_cmnd *SCtmp; 636 struct scsi_cmnd *SCtmp;
diff --git a/drivers/scsi/sgiwd93.c b/drivers/scsi/sgiwd93.c
index 4f1db6f2aae8..e81f97a35bc8 100644
--- a/drivers/scsi/sgiwd93.c
+++ b/drivers/scsi/sgiwd93.c
@@ -84,7 +84,7 @@ static inline unsigned long read_wd33c93_count(const wd33c93_regs regs)
84 return value; 84 return value;
85} 85}
86 86
87static irqreturn_t sgiwd93_intr(int irq, void *dev_id, struct pt_regs *regs) 87static irqreturn_t sgiwd93_intr(int irq, void *dev_id)
88{ 88{
89 struct Scsi_Host * host = (struct Scsi_Host *) dev_id; 89 struct Scsi_Host * host = (struct Scsi_Host *) dev_id;
90 unsigned long flags; 90 unsigned long flags;
diff --git a/drivers/scsi/stex.c b/drivers/scsi/stex.c
index a54e6c1026b7..185c270bb043 100644
--- a/drivers/scsi/stex.c
+++ b/drivers/scsi/stex.c
@@ -871,7 +871,7 @@ update_status:
871 readl(base + IMR1); /* flush */ 871 readl(base + IMR1); /* flush */
872} 872}
873 873
874static irqreturn_t stex_intr(int irq, void *__hba, struct pt_regs *regs) 874static irqreturn_t stex_intr(int irq, void *__hba)
875{ 875{
876 struct st_hba *hba = __hba; 876 struct st_hba *hba = __hba;
877 void __iomem *base = hba->mmio_base; 877 void __iomem *base = hba->mmio_base;
diff --git a/drivers/scsi/sun3_NCR5380.c b/drivers/scsi/sun3_NCR5380.c
index 7f9bcef6adfa..5ec5af8e3379 100644
--- a/drivers/scsi/sun3_NCR5380.c
+++ b/drivers/scsi/sun3_NCR5380.c
@@ -1252,7 +1252,7 @@ static void NCR5380_dma_complete( struct Scsi_Host *instance )
1252 * 1252 *
1253 */ 1253 */
1254 1254
1255static irqreturn_t NCR5380_intr (int irq, void *dev_id, struct pt_regs *regs) 1255static irqreturn_t NCR5380_intr (int irq, void *dev_id)
1256{ 1256{
1257 struct Scsi_Host *instance = first_instance; 1257 struct Scsi_Host *instance = first_instance;
1258 int done = 1, handled = 0; 1258 int done = 1, handled = 0;
diff --git a/drivers/scsi/sun3_scsi.c b/drivers/scsi/sun3_scsi.c
index 44a99aeb8180..e625b4c5833a 100644
--- a/drivers/scsi/sun3_scsi.c
+++ b/drivers/scsi/sun3_scsi.c
@@ -102,7 +102,7 @@ static void NCR5380_print(struct Scsi_Host *instance);
102#define ENABLE_IRQ() enable_irq( IRQ_SUN3_SCSI ); 102#define ENABLE_IRQ() enable_irq( IRQ_SUN3_SCSI );
103 103
104 104
105static irqreturn_t scsi_sun3_intr(int irq, void *dummy, struct pt_regs *fp); 105static irqreturn_t scsi_sun3_intr(int irq, void *dummy);
106static inline unsigned char sun3scsi_read(int reg); 106static inline unsigned char sun3scsi_read(int reg);
107static inline void sun3scsi_write(int reg, int value); 107static inline void sun3scsi_write(int reg, int value);
108 108
@@ -371,7 +371,7 @@ const char * sun3scsi_info (struct Scsi_Host *spnt) {
371// safe bits for the CSR 371// safe bits for the CSR
372#define CSR_GOOD 0x060f 372#define CSR_GOOD 0x060f
373 373
374static irqreturn_t scsi_sun3_intr(int irq, void *dummy, struct pt_regs *fp) 374static irqreturn_t scsi_sun3_intr(int irq, void *dummy)
375{ 375{
376 unsigned short csr = dregs->csr; 376 unsigned short csr = dregs->csr;
377 int handled = 0; 377 int handled = 0;
@@ -388,7 +388,7 @@ static irqreturn_t scsi_sun3_intr(int irq, void *dummy, struct pt_regs *fp)
388 } 388 }
389 389
390 if(csr & (CSR_SDB_INT | CSR_DMA_INT)) { 390 if(csr & (CSR_SDB_INT | CSR_DMA_INT)) {
391 NCR5380_intr(irq, dummy, fp); 391 NCR5380_intr(irq, dummy);
392 handled = 1; 392 handled = 1;
393 } 393 }
394 394
diff --git a/drivers/scsi/sun3_scsi_vme.c b/drivers/scsi/sun3_scsi_vme.c
index f5742b84b27a..e8faab16567b 100644
--- a/drivers/scsi/sun3_scsi_vme.c
+++ b/drivers/scsi/sun3_scsi_vme.c
@@ -67,7 +67,7 @@ extern int sun3_map_test(unsigned long, char *);
67#define ENABLE_IRQ() 67#define ENABLE_IRQ()
68 68
69 69
70static irqreturn_t scsi_sun3_intr(int irq, void *dummy, struct pt_regs *fp); 70static irqreturn_t scsi_sun3_intr(int irq, void *dummy);
71static inline unsigned char sun3scsi_read(int reg); 71static inline unsigned char sun3scsi_read(int reg);
72static inline void sun3scsi_write(int reg, int value); 72static inline void sun3scsi_write(int reg, int value);
73 73
@@ -340,7 +340,7 @@ static const char * sun3scsi_info (struct Scsi_Host *spnt) {
340// safe bits for the CSR 340// safe bits for the CSR
341#define CSR_GOOD 0x060f 341#define CSR_GOOD 0x060f
342 342
343static irqreturn_t scsi_sun3_intr(int irq, void *dummy, struct pt_regs *fp) 343static irqreturn_t scsi_sun3_intr(int irq, void *dummy)
344{ 344{
345 unsigned short csr = dregs->csr; 345 unsigned short csr = dregs->csr;
346 int handled = 0; 346 int handled = 0;
@@ -371,7 +371,7 @@ static irqreturn_t scsi_sun3_intr(int irq, void *dummy, struct pt_regs *fp)
371 } 371 }
372 372
373 if(csr & (CSR_SDB_INT | CSR_DMA_INT)) { 373 if(csr & (CSR_SDB_INT | CSR_DMA_INT)) {
374 NCR5380_intr(irq, dummy, fp); 374 NCR5380_intr(irq, dummy);
375 handled = 1; 375 handled = 1;
376 } 376 }
377 377
diff --git a/drivers/scsi/sym53c416.c b/drivers/scsi/sym53c416.c
index 8640253d6215..32c883f1efa1 100644
--- a/drivers/scsi/sym53c416.c
+++ b/drivers/scsi/sym53c416.c
@@ -326,8 +326,7 @@ static __inline__ unsigned int sym53c416_write(int base, unsigned char *buffer,
326 return orig_len - len; 326 return orig_len - len;
327} 327}
328 328
329static irqreturn_t sym53c416_intr_handle(int irq, void *dev_id, 329static irqreturn_t sym53c416_intr_handle(int irq, void *dev_id)
330 struct pt_regs *regs)
331{ 330{
332 struct Scsi_Host *dev = dev_id; 331 struct Scsi_Host *dev = dev_id;
333 int base = 0; 332 int base = 0;
diff --git a/drivers/scsi/sym53c8xx_2/sym_glue.c b/drivers/scsi/sym53c8xx_2/sym_glue.c
index 739d3ef46a40..4d78c7e87cca 100644
--- a/drivers/scsi/sym53c8xx_2/sym_glue.c
+++ b/drivers/scsi/sym53c8xx_2/sym_glue.c
@@ -652,7 +652,7 @@ static int sym53c8xx_queue_command(struct scsi_cmnd *cmd,
652/* 652/*
653 * Linux entry point of the interrupt handler. 653 * Linux entry point of the interrupt handler.
654 */ 654 */
655static irqreturn_t sym53c8xx_intr(int irq, void *dev_id, struct pt_regs * regs) 655static irqreturn_t sym53c8xx_intr(int irq, void *dev_id)
656{ 656{
657 unsigned long flags; 657 unsigned long flags;
658 struct sym_hcb *np = (struct sym_hcb *)dev_id; 658 struct sym_hcb *np = (struct sym_hcb *)dev_id;
diff --git a/drivers/scsi/tmscsim.c b/drivers/scsi/tmscsim.c
index 028d5f641cc6..0f0ac925d319 100644
--- a/drivers/scsi/tmscsim.c
+++ b/drivers/scsi/tmscsim.c
@@ -700,7 +700,7 @@ dc390_InvalidCmd(struct dc390_acb* pACB)
700 700
701 701
702static irqreturn_t __inline__ 702static irqreturn_t __inline__
703DC390_Interrupt(int irq, void *dev_id, struct pt_regs *regs) 703DC390_Interrupt(int irq, void *dev_id)
704{ 704{
705 struct dc390_acb *pACB = (struct dc390_acb*)dev_id; 705 struct dc390_acb *pACB = (struct dc390_acb*)dev_id;
706 struct dc390_dcb *pDCB; 706 struct dc390_dcb *pDCB;
@@ -811,12 +811,12 @@ DC390_Interrupt(int irq, void *dev_id, struct pt_regs *regs)
811 return IRQ_HANDLED; 811 return IRQ_HANDLED;
812} 812}
813 813
814static irqreturn_t do_DC390_Interrupt( int irq, void *dev_id, struct pt_regs *regs) 814static irqreturn_t do_DC390_Interrupt( int irq, void *dev_id)
815{ 815{
816 irqreturn_t ret; 816 irqreturn_t ret;
817 DEBUG1(printk (KERN_INFO "DC390: Irq (%i) caught: ", irq)); 817 DEBUG1(printk (KERN_INFO "DC390: Irq (%i) caught: ", irq));
818 /* Locking is done in DC390_Interrupt */ 818 /* Locking is done in DC390_Interrupt */
819 ret = DC390_Interrupt(irq, dev_id, regs); 819 ret = DC390_Interrupt(irq, dev_id);
820 DEBUG1(printk (".. IRQ returned\n")); 820 DEBUG1(printk (".. IRQ returned\n"));
821 return ret; 821 return ret;
822} 822}
diff --git a/drivers/scsi/u14-34f.c b/drivers/scsi/u14-34f.c
index 57449611e714..3de08a15de40 100644
--- a/drivers/scsi/u14-34f.c
+++ b/drivers/scsi/u14-34f.c
@@ -634,7 +634,7 @@ static unsigned long io_port[] = {
634#define H2DEV(x) cpu_to_le32(x) 634#define H2DEV(x) cpu_to_le32(x)
635#define DEV2H(x) le32_to_cpu(x) 635#define DEV2H(x) le32_to_cpu(x)
636 636
637static irqreturn_t do_interrupt_handler(int, void *, struct pt_regs *); 637static irqreturn_t do_interrupt_handler(int, void *);
638static void flush_dev(struct scsi_device *, unsigned long, unsigned int, unsigned int); 638static void flush_dev(struct scsi_device *, unsigned long, unsigned int, unsigned int);
639static int do_trace = FALSE; 639static int do_trace = FALSE;
640static int setup_done = FALSE; 640static int setup_done = FALSE;
@@ -1932,8 +1932,7 @@ none:
1932 return IRQ_NONE; 1932 return IRQ_NONE;
1933} 1933}
1934 1934
1935static irqreturn_t do_interrupt_handler(int irq, void *shap, 1935static irqreturn_t do_interrupt_handler(int irq, void *shap) {
1936 struct pt_regs *regs) {
1937 unsigned int j; 1936 unsigned int j;
1938 unsigned long spin_flags; 1937 unsigned long spin_flags;
1939 irqreturn_t ret; 1938 irqreturn_t ret;
diff --git a/drivers/scsi/ultrastor.c b/drivers/scsi/ultrastor.c
index 0372aa9fa190..107f0fc34949 100644
--- a/drivers/scsi/ultrastor.c
+++ b/drivers/scsi/ultrastor.c
@@ -287,8 +287,8 @@ static const unsigned short ultrastor_ports_14f[] = {
287}; 287};
288#endif 288#endif
289 289
290static void ultrastor_interrupt(int, void *, struct pt_regs *); 290static void ultrastor_interrupt(int, void *);
291static irqreturn_t do_ultrastor_interrupt(int, void *, struct pt_regs *); 291static irqreturn_t do_ultrastor_interrupt(int, void *);
292static inline void build_sg_list(struct mscp *, struct scsi_cmnd *SCpnt); 292static inline void build_sg_list(struct mscp *, struct scsi_cmnd *SCpnt);
293 293
294 294
@@ -893,7 +893,7 @@ static int ultrastor_abort(struct scsi_cmnd *SCpnt)
893 893
894 spin_lock_irqsave(host->host_lock, flags); 894 spin_lock_irqsave(host->host_lock, flags);
895 /* FIXME: Ewww... need to think about passing host around properly */ 895 /* FIXME: Ewww... need to think about passing host around properly */
896 ultrastor_interrupt(0, NULL, NULL); 896 ultrastor_interrupt(0, NULL);
897 spin_unlock_irqrestore(host->host_lock, flags); 897 spin_unlock_irqrestore(host->host_lock, flags);
898 return SUCCESS; 898 return SUCCESS;
899 } 899 }
@@ -1039,7 +1039,7 @@ int ultrastor_biosparam(struct scsi_device *sdev, struct block_device *bdev,
1039 return 0; 1039 return 0;
1040} 1040}
1041 1041
1042static void ultrastor_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1042static void ultrastor_interrupt(int irq, void *dev_id)
1043{ 1043{
1044 unsigned int status; 1044 unsigned int status;
1045#if ULTRASTOR_MAX_CMDS > 1 1045#if ULTRASTOR_MAX_CMDS > 1
@@ -1171,14 +1171,13 @@ static void ultrastor_interrupt(int irq, void *dev_id, struct pt_regs *regs)
1171#endif 1171#endif
1172} 1172}
1173 1173
1174static irqreturn_t do_ultrastor_interrupt(int irq, void *dev_id, 1174static irqreturn_t do_ultrastor_interrupt(int irq, void *dev_id)
1175 struct pt_regs *regs)
1176{ 1175{
1177 unsigned long flags; 1176 unsigned long flags;
1178 struct Scsi_Host *dev = dev_id; 1177 struct Scsi_Host *dev = dev_id;
1179 1178
1180 spin_lock_irqsave(dev->host_lock, flags); 1179 spin_lock_irqsave(dev->host_lock, flags);
1181 ultrastor_interrupt(irq, dev_id, regs); 1180 ultrastor_interrupt(irq, dev_id);
1182 spin_unlock_irqrestore(dev->host_lock, flags); 1181 spin_unlock_irqrestore(dev->host_lock, flags);
1183 return IRQ_HANDLED; 1182 return IRQ_HANDLED;
1184} 1183}
diff --git a/drivers/scsi/wd7000.c b/drivers/scsi/wd7000.c
index a0b61af48f1c..331e1cf159b0 100644
--- a/drivers/scsi/wd7000.c
+++ b/drivers/scsi/wd7000.c
@@ -998,7 +998,7 @@ static int make_code(unsigned hosterr, unsigned scsierr)
998#define wd7000_intr_ack(host) outb (0, host->iobase + ASC_INTR_ACK) 998#define wd7000_intr_ack(host) outb (0, host->iobase + ASC_INTR_ACK)
999 999
1000 1000
1001static irqreturn_t wd7000_intr(int irq, void *dev_id, struct pt_regs *regs) 1001static irqreturn_t wd7000_intr(int irq, void *dev_id)
1002{ 1002{
1003 Adapter *host = (Adapter *) dev_id; 1003 Adapter *host = (Adapter *) dev_id;
1004 int flag, icmb, errstatus, icmb_status; 1004 int flag, icmb, errstatus, icmb_status;