aboutsummaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2006-10-05 09:55:46 -0400
committerDavid Howells <dhowells@warthog.cambridge.redhat.com>2006-10-05 10:10:12 -0400
commit7d12e780e003f93433d49ce78cfedf4b4c52adc5 (patch)
tree6748550400445c11a306b132009f3001e3525df8 /sound
parentda482792a6d1a3fbaaa25fae867b343fb4db3246 (diff)
IRQ: Maintain regs pointer globally rather than passing to IRQ handlers
Maintain a per-CPU global "struct pt_regs *" variable which can be used instead of passing regs around manually through all ~1800 interrupt handlers in the Linux kernel. The regs pointer is used in few places, but it potentially costs both stack space and code to pass it around. On the FRV arch, removing the regs parameter from all the genirq function results in a 20% speed up of the IRQ exit path (ie: from leaving timer_interrupt() to leaving do_IRQ()). Where appropriate, an arch may override the generic storage facility and do something different with the variable. On FRV, for instance, the address is maintained in GR28 at all times inside the kernel as part of general exception handling. Having looked over the code, it appears that the parameter may be handed down through up to twenty or so layers of functions. Consider a USB character device attached to a USB hub, attached to a USB controller that posts its interrupts through a cascaded auxiliary interrupt controller. A character device driver may want to pass regs to the sysrq handler through the input layer which adds another few layers of parameter passing. I've build this code with allyesconfig for x86_64 and i386. I've runtested the main part of the code on FRV and i386, though I can't test most of the drivers. I've also done partial conversion for powerpc and MIPS - these at least compile with minimal configurations. This will affect all archs. Mostly the changes should be relatively easy. Take do_IRQ(), store the regs pointer at the beginning, saving the old one: struct pt_regs *old_regs = set_irq_regs(regs); And put the old one back at the end: set_irq_regs(old_regs); Don't pass regs through to generic_handle_irq() or __do_IRQ(). In timer_interrupt(), this sort of change will be necessary: - update_process_times(user_mode(regs)); - profile_tick(CPU_PROFILING, regs); + update_process_times(user_mode(get_irq_regs())); + profile_tick(CPU_PROFILING); I'd like to move update_process_times()'s use of get_irq_regs() into itself, except that i386, alone of the archs, uses something other than user_mode(). Some notes on the interrupt handling in the drivers: (*) input_dev() is now gone entirely. The regs pointer is no longer stored in the input_dev struct. (*) finish_unlinks() in drivers/usb/host/ohci-q.c needs checking. It does something different depending on whether it's been supplied with a regs pointer or not. (*) Various IRQ handler function pointers have been moved to type irq_handler_t. Signed-Off-By: David Howells <dhowells@redhat.com> (cherry picked from 1b16e7ac850969f38b375e511e3fa2f474a33867 commit)
Diffstat (limited to 'sound')
-rw-r--r--sound/aoa/core/snd-aoa-gpio-feature.c4
-rw-r--r--sound/aoa/soundbus/i2sbus/i2sbus-core.c5
-rw-r--r--sound/aoa/soundbus/i2sbus/i2sbus-pcm.c4
-rw-r--r--sound/aoa/soundbus/i2sbus/i2sbus.h4
-rw-r--r--sound/arm/aaci.c2
-rw-r--r--sound/arm/pxa2xx-ac97.c2
-rw-r--r--sound/arm/pxa2xx-pcm.c2
-rw-r--r--sound/drivers/mpu401/mpu401_uart.c8
-rw-r--r--sound/drivers/mtpav.c2
-rw-r--r--sound/drivers/mts64.c2
-rw-r--r--sound/drivers/serial-u16550.c2
-rw-r--r--sound/drivers/vx/vx_core.c2
-rw-r--r--sound/isa/ad1816a/ad1816a_lib.c2
-rw-r--r--sound/isa/ad1848/ad1848_lib.c2
-rw-r--r--sound/isa/cs423x/cs4231_lib.c2
-rw-r--r--sound/isa/es1688/es1688_lib.c2
-rw-r--r--sound/isa/es18xx.c4
-rw-r--r--sound/isa/gus/gus_irq.c2
-rw-r--r--sound/isa/gus/gusmax.c6
-rw-r--r--sound/isa/gus/interwave.c6
-rw-r--r--sound/isa/opl3sa2.c6
-rw-r--r--sound/isa/opti9xx/opti92x-ad1848.c2
-rw-r--r--sound/isa/sb/es968.c3
-rw-r--r--sound/isa/sb/sb16_main.c4
-rw-r--r--sound/isa/sb/sb8.c2
-rw-r--r--sound/isa/sb/sb_common.c2
-rw-r--r--sound/isa/sgalaxy.c2
-rw-r--r--sound/isa/wavefront/wavefront.c4
-rw-r--r--sound/mips/au1x00.c2
-rw-r--r--sound/oss/ad1816.c2
-rw-r--r--sound/oss/ad1848.c4
-rw-r--r--sound/oss/ad1889.c2
-rw-r--r--sound/oss/btaudio.c2
-rw-r--r--sound/oss/cs46xx.c2
-rw-r--r--sound/oss/dmasound/dmasound_atari.c4
-rw-r--r--sound/oss/dmasound/dmasound_awacs.c14
-rw-r--r--sound/oss/dmasound/dmasound_paula.c4
-rw-r--r--sound/oss/dmasound/dmasound_q40.c8
-rw-r--r--sound/oss/emu10k1/irqmgr.c2
-rw-r--r--sound/oss/emu10k1/main.c2
-rw-r--r--sound/oss/es1371.c2
-rw-r--r--sound/oss/hal2.c2
-rw-r--r--sound/oss/i810_audio.c2
-rw-r--r--sound/oss/mpu401.c2
-rw-r--r--sound/oss/mpu401.h3
-rw-r--r--sound/oss/msnd_pinnacle.c2
-rw-r--r--sound/oss/nec_vrc5477.c2
-rw-r--r--sound/oss/nm256.h2
-rw-r--r--sound/oss/nm256_audio.c8
-rw-r--r--sound/oss/pas2_card.c2
-rw-r--r--sound/oss/sb_common.c4
-rw-r--r--sound/oss/sh_dac_audio.c2
-rw-r--r--sound/oss/swarm_cs4297a.c2
-rw-r--r--sound/oss/trident.c2
-rw-r--r--sound/oss/uart401.c2
-rw-r--r--sound/oss/uart6850.c2
-rw-r--r--sound/oss/via82cxxx_audio.c6
-rw-r--r--sound/oss/vidc.h2
-rw-r--r--sound/oss/vwsnd.c4
-rw-r--r--sound/oss/waveartist.c2
-rw-r--r--sound/parisc/harmony.c2
-rw-r--r--sound/pci/ad1889.c4
-rw-r--r--sound/pci/ali5451/ali5451.c4
-rw-r--r--sound/pci/als300.c6
-rw-r--r--sound/pci/als4000.c4
-rw-r--r--sound/pci/atiixp.c2
-rw-r--r--sound/pci/atiixp_modem.c2
-rw-r--r--sound/pci/au88x0/au88x0.h3
-rw-r--r--sound/pci/au88x0/au88x0_core.c4
-rw-r--r--sound/pci/azt3328.c4
-rw-r--r--sound/pci/bt87x.c2
-rw-r--r--sound/pci/ca0106/ca0106_main.c3
-rw-r--r--sound/pci/cmipci.c4
-rw-r--r--sound/pci/cs4281.c4
-rw-r--r--sound/pci/cs46xx/cs46xx_lib.c2
-rw-r--r--sound/pci/cs5535audio/cs5535audio.c3
-rw-r--r--sound/pci/echoaudio/echoaudio.c3
-rw-r--r--sound/pci/emu10k1/emu10k1x.c3
-rw-r--r--sound/pci/emu10k1/irq.c2
-rw-r--r--sound/pci/ens1370.c4
-rw-r--r--sound/pci/es1938.c6
-rw-r--r--sound/pci/es1968.c6
-rw-r--r--sound/pci/fm801.c4
-rw-r--r--sound/pci/hda/hda_intel.c2
-rw-r--r--sound/pci/ice1712/ice1712.c6
-rw-r--r--sound/pci/ice1712/ice1724.c4
-rw-r--r--sound/pci/intel8x0.c2
-rw-r--r--sound/pci/intel8x0m.c2
-rw-r--r--sound/pci/korg1212/korg1212.c2
-rw-r--r--sound/pci/maestro3.c3
-rw-r--r--sound/pci/mixart/mixart_core.c2
-rw-r--r--sound/pci/mixart/mixart_core.h2
-rw-r--r--sound/pci/nm256/nm256.c6
-rw-r--r--sound/pci/pcxhr/pcxhr_core.c2
-rw-r--r--sound/pci/pcxhr/pcxhr_core.h2
-rw-r--r--sound/pci/riptide/riptide.c5
-rw-r--r--sound/pci/rme32.c3
-rw-r--r--sound/pci/rme96.c3
-rw-r--r--sound/pci/rme9652/hdsp.c2
-rw-r--r--sound/pci/rme9652/hdspm.c3
-rw-r--r--sound/pci/rme9652/rme9652.c2
-rw-r--r--sound/pci/sonicvibes.c4
-rw-r--r--sound/pci/trident/trident_main.c7
-rw-r--r--sound/pci/via82xx.c6
-rw-r--r--sound/pci/via82xx_modem.c2
-rw-r--r--sound/pci/ymfpci/ymfpci_main.c4
-rw-r--r--sound/pcmcia/pdaudiocf/pdaudiocf.h2
-rw-r--r--sound/pcmcia/pdaudiocf/pdaudiocf_irq.c4
-rw-r--r--sound/ppc/pmac.c6
-rw-r--r--sound/ppc/tumbler.c2
-rw-r--r--sound/sparc/amd7930.c2
-rw-r--r--sound/sparc/cs4231.c2
-rw-r--r--sound/sparc/dbri.c3
-rw-r--r--sound/usb/usbaudio.c4
-rw-r--r--sound/usb/usbmidi.c4
-rw-r--r--sound/usb/usbmixer.c5
-rw-r--r--sound/usb/usx2y/usbusx2y.c4
-rw-r--r--sound/usb/usx2y/usbusx2yaudio.c10
-rw-r--r--sound/usb/usx2y/usx2yhwdeppcm.c6
119 files changed, 187 insertions, 217 deletions
diff --git a/sound/aoa/core/snd-aoa-gpio-feature.c b/sound/aoa/core/snd-aoa-gpio-feature.c
index 7c26089527f6..40eb47eccf9a 100644
--- a/sound/aoa/core/snd-aoa-gpio-feature.c
+++ b/sound/aoa/core/snd-aoa-gpio-feature.c
@@ -283,9 +283,7 @@ static void ftr_gpio_exit(struct gpio_runtime *rt)
283 mutex_destroy(&rt->line_out_notify.mutex); 283 mutex_destroy(&rt->line_out_notify.mutex);
284} 284}
285 285
286static irqreturn_t ftr_handle_notify_irq(int xx, 286static irqreturn_t ftr_handle_notify_irq(int xx, void *data)
287 void *data,
288 struct pt_regs *regs)
289{ 287{
290 struct gpio_notification *notif = data; 288 struct gpio_notification *notif = data;
291 289
diff --git a/sound/aoa/soundbus/i2sbus/i2sbus-core.c b/sound/aoa/soundbus/i2sbus/i2sbus-core.c
index 23190aa6bc7b..e593a1333fe3 100644
--- a/sound/aoa/soundbus/i2sbus/i2sbus-core.c
+++ b/sound/aoa/soundbus/i2sbus/i2sbus-core.c
@@ -93,7 +93,7 @@ static void i2sbus_release_dev(struct device *dev)
93 kfree(i2sdev); 93 kfree(i2sdev);
94} 94}
95 95
96static irqreturn_t i2sbus_bus_intr(int irq, void *devid, struct pt_regs *regs) 96static irqreturn_t i2sbus_bus_intr(int irq, void *devid)
97{ 97{
98 struct i2sbus_dev *dev = devid; 98 struct i2sbus_dev *dev = devid;
99 u32 intreg; 99 u32 intreg;
@@ -165,8 +165,7 @@ static int i2sbus_add_dev(struct macio_dev *macio,
165 static const char *rnames[] = { "i2sbus: %s (control)", 165 static const char *rnames[] = { "i2sbus: %s (control)",
166 "i2sbus: %s (tx)", 166 "i2sbus: %s (tx)",
167 "i2sbus: %s (rx)" }; 167 "i2sbus: %s (rx)" };
168 static irqreturn_t (*ints[])(int irq, void *devid, 168 static irq_handler_t ints[] = {
169 struct pt_regs *regs) = {
170 i2sbus_bus_intr, 169 i2sbus_bus_intr,
171 i2sbus_tx_intr, 170 i2sbus_tx_intr,
172 i2sbus_rx_intr 171 i2sbus_rx_intr
diff --git a/sound/aoa/soundbus/i2sbus/i2sbus-pcm.c b/sound/aoa/soundbus/i2sbus/i2sbus-pcm.c
index 3049015a04f1..5eff30b10201 100644
--- a/sound/aoa/soundbus/i2sbus/i2sbus-pcm.c
+++ b/sound/aoa/soundbus/i2sbus/i2sbus-pcm.c
@@ -642,13 +642,13 @@ static inline void handle_interrupt(struct i2sbus_dev *i2sdev, int in)
642 spin_unlock(&i2sdev->low_lock); 642 spin_unlock(&i2sdev->low_lock);
643} 643}
644 644
645irqreturn_t i2sbus_tx_intr(int irq, void *devid, struct pt_regs *regs) 645irqreturn_t i2sbus_tx_intr(int irq, void *devid)
646{ 646{
647 handle_interrupt((struct i2sbus_dev *)devid, 0); 647 handle_interrupt((struct i2sbus_dev *)devid, 0);
648 return IRQ_HANDLED; 648 return IRQ_HANDLED;
649} 649}
650 650
651irqreturn_t i2sbus_rx_intr(int irq, void *devid, struct pt_regs * regs) 651irqreturn_t i2sbus_rx_intr(int irq, void *devid)
652{ 652{
653 handle_interrupt((struct i2sbus_dev *)devid, 1); 653 handle_interrupt((struct i2sbus_dev *)devid, 1);
654 return IRQ_HANDLED; 654 return IRQ_HANDLED;
diff --git a/sound/aoa/soundbus/i2sbus/i2sbus.h b/sound/aoa/soundbus/i2sbus/i2sbus.h
index 0c69d209be50..ec20ee615d7f 100644
--- a/sound/aoa/soundbus/i2sbus/i2sbus.h
+++ b/sound/aoa/soundbus/i2sbus/i2sbus.h
@@ -97,9 +97,9 @@ i2sbus_attach_codec(struct soundbus_dev *dev, struct snd_card *card,
97extern void 97extern void
98i2sbus_detach_codec(struct soundbus_dev *dev, void *data); 98i2sbus_detach_codec(struct soundbus_dev *dev, void *data);
99extern irqreturn_t 99extern irqreturn_t
100i2sbus_tx_intr(int irq, void *devid, struct pt_regs *regs); 100i2sbus_tx_intr(int irq, void *devid);
101extern irqreturn_t 101extern irqreturn_t
102i2sbus_rx_intr(int irq, void *devid, struct pt_regs *regs); 102i2sbus_rx_intr(int irq, void *devid);
103 103
104/* control specific functions */ 104/* control specific functions */
105extern int i2sbus_control_init(struct macio_dev* dev, 105extern int i2sbus_control_init(struct macio_dev* dev,
diff --git a/sound/arm/aaci.c b/sound/arm/aaci.c
index 8435fdd1c87c..53675cf4de44 100644
--- a/sound/arm/aaci.c
+++ b/sound/arm/aaci.c
@@ -221,7 +221,7 @@ static void aaci_fifo_irq(struct aaci *aaci, u32 mask)
221 } 221 }
222} 222}
223 223
224static irqreturn_t aaci_irq(int irq, void *devid, struct pt_regs *regs) 224static irqreturn_t aaci_irq(int irq, void *devid)
225{ 225{
226 struct aaci *aaci = devid; 226 struct aaci *aaci = devid;
227 u32 mask; 227 u32 mask;
diff --git a/sound/arm/pxa2xx-ac97.c b/sound/arm/pxa2xx-ac97.c
index 599aff8290e8..dede954b2c65 100644
--- a/sound/arm/pxa2xx-ac97.c
+++ b/sound/arm/pxa2xx-ac97.c
@@ -152,7 +152,7 @@ static void pxa2xx_ac97_reset(struct snd_ac97 *ac97)
152 GCR |= GCR_SDONE_IE|GCR_CDONE_IE; 152 GCR |= GCR_SDONE_IE|GCR_CDONE_IE;
153} 153}
154 154
155static irqreturn_t pxa2xx_ac97_irq(int irq, void *dev_id, struct pt_regs *regs) 155static irqreturn_t pxa2xx_ac97_irq(int irq, void *dev_id)
156{ 156{
157 long status; 157 long status;
158 158
diff --git a/sound/arm/pxa2xx-pcm.c b/sound/arm/pxa2xx-pcm.c
index 4938ef10b813..e8cf904b8358 100644
--- a/sound/arm/pxa2xx-pcm.c
+++ b/sound/arm/pxa2xx-pcm.c
@@ -137,7 +137,7 @@ static int pxa2xx_pcm_trigger(struct snd_pcm_substream *substream, int cmd)
137 return ret; 137 return ret;
138} 138}
139 139
140static void pxa2xx_pcm_dma_irq(int dma_ch, void *dev_id, struct pt_regs *regs) 140static void pxa2xx_pcm_dma_irq(int dma_ch, void *dev_id)
141{ 141{
142 struct snd_pcm_substream *substream = dev_id; 142 struct snd_pcm_substream *substream = dev_id;
143 struct pxa2xx_runtime_data *rtd = substream->runtime->private_data; 143 struct pxa2xx_runtime_data *rtd = substream->runtime->private_data;
diff --git a/sound/drivers/mpu401/mpu401_uart.c b/sound/drivers/mpu401/mpu401_uart.c
index 4bf07ca9b17d..3daa9fa56c0b 100644
--- a/sound/drivers/mpu401/mpu401_uart.c
+++ b/sound/drivers/mpu401/mpu401_uart.c
@@ -125,12 +125,10 @@ static void _snd_mpu401_uart_interrupt(struct snd_mpu401 *mpu)
125 * snd_mpu401_uart_interrupt - generic MPU401-UART interrupt handler 125 * snd_mpu401_uart_interrupt - generic MPU401-UART interrupt handler
126 * @irq: the irq number 126 * @irq: the irq number
127 * @dev_id: mpu401 instance 127 * @dev_id: mpu401 instance
128 * @regs: the reigster
129 * 128 *
130 * Processes the interrupt for MPU401-UART i/o. 129 * Processes the interrupt for MPU401-UART i/o.
131 */ 130 */
132irqreturn_t snd_mpu401_uart_interrupt(int irq, void *dev_id, 131irqreturn_t snd_mpu401_uart_interrupt(int irq, void *dev_id)
133 struct pt_regs *regs)
134{ 132{
135 struct snd_mpu401 *mpu = dev_id; 133 struct snd_mpu401 *mpu = dev_id;
136 134
@@ -146,12 +144,10 @@ EXPORT_SYMBOL(snd_mpu401_uart_interrupt);
146 * snd_mpu401_uart_interrupt_tx - generic MPU401-UART transmit irq handler 144 * snd_mpu401_uart_interrupt_tx - generic MPU401-UART transmit irq handler
147 * @irq: the irq number 145 * @irq: the irq number
148 * @dev_id: mpu401 instance 146 * @dev_id: mpu401 instance
149 * @regs: the reigster
150 * 147 *
151 * Processes the interrupt for MPU401-UART output. 148 * Processes the interrupt for MPU401-UART output.
152 */ 149 */
153irqreturn_t snd_mpu401_uart_interrupt_tx(int irq, void *dev_id, 150irqreturn_t snd_mpu401_uart_interrupt_tx(int irq, void *dev_id)
154 struct pt_regs *regs)
155{ 151{
156 struct snd_mpu401 *mpu = dev_id; 152 struct snd_mpu401 *mpu = dev_id;
157 153
diff --git a/sound/drivers/mtpav.c b/sound/drivers/mtpav.c
index e064d6c5685b..a9ff391258e7 100644
--- a/sound/drivers/mtpav.c
+++ b/sound/drivers/mtpav.c
@@ -570,7 +570,7 @@ static void snd_mtpav_read_bytes(struct mtpav *mcrd)
570 } while (sbyt & SIGS_BYTE); 570 } while (sbyt & SIGS_BYTE);
571} 571}
572 572
573static irqreturn_t snd_mtpav_irqh(int irq, void *dev_id, struct pt_regs *regs) 573static irqreturn_t snd_mtpav_irqh(int irq, void *dev_id)
574{ 574{
575 struct mtpav *mcard = dev_id; 575 struct mtpav *mcard = dev_id;
576 576
diff --git a/sound/drivers/mts64.c b/sound/drivers/mts64.c
index ab8d4effcf9e..5327c6f841f4 100644
--- a/sound/drivers/mts64.c
+++ b/sound/drivers/mts64.c
@@ -838,7 +838,7 @@ static int __devinit snd_mts64_rawmidi_create(struct snd_card *card)
838/********************************************************************* 838/*********************************************************************
839 * parport stuff 839 * parport stuff
840 *********************************************************************/ 840 *********************************************************************/
841static void snd_mts64_interrupt(int irq, void *private, struct pt_regs *r) 841static void snd_mts64_interrupt(int irq, void *private)
842{ 842{
843 struct mts64 *mts = ((struct snd_card*)private)->private_data; 843 struct mts64 *mts = ((struct snd_card*)private)->private_data;
844 u16 ret; 844 u16 ret;
diff --git a/sound/drivers/serial-u16550.c b/sound/drivers/serial-u16550.c
index 52afb4bd2079..74028b2219c2 100644
--- a/sound/drivers/serial-u16550.c
+++ b/sound/drivers/serial-u16550.c
@@ -292,7 +292,7 @@ static void snd_uart16550_io_loop(snd_uart16550_t * uart)
292 * Note that some devices need OUT2 to be set before they will generate 292 * Note that some devices need OUT2 to be set before they will generate
293 * interrupts at all. (Possibly tied to an internal pull-up on CTS?) 293 * interrupts at all. (Possibly tied to an internal pull-up on CTS?)
294 */ 294 */
295static irqreturn_t snd_uart16550_interrupt(int irq, void *dev_id, struct pt_regs *regs) 295static irqreturn_t snd_uart16550_interrupt(int irq, void *dev_id)
296{ 296{
297 snd_uart16550_t *uart; 297 snd_uart16550_t *uart;
298 298
diff --git a/sound/drivers/vx/vx_core.c b/sound/drivers/vx/vx_core.c
index a60168268ddd..ed19bc17400b 100644
--- a/sound/drivers/vx/vx_core.c
+++ b/sound/drivers/vx/vx_core.c
@@ -537,7 +537,7 @@ static void vx_interrupt(unsigned long private_data)
537/** 537/**
538 * snd_vx_irq_handler - interrupt handler 538 * snd_vx_irq_handler - interrupt handler
539 */ 539 */
540irqreturn_t snd_vx_irq_handler(int irq, void *dev, struct pt_regs *regs) 540irqreturn_t snd_vx_irq_handler(int irq, void *dev)
541{ 541{
542 struct vx_core *chip = dev; 542 struct vx_core *chip = dev;
543 543
diff --git a/sound/isa/ad1816a/ad1816a_lib.c b/sound/isa/ad1816a/ad1816a_lib.c
index fd9b61eda0f3..b524e0d9ee44 100644
--- a/sound/isa/ad1816a/ad1816a_lib.c
+++ b/sound/isa/ad1816a/ad1816a_lib.c
@@ -315,7 +315,7 @@ static snd_pcm_uframes_t snd_ad1816a_capture_pointer(struct snd_pcm_substream *s
315} 315}
316 316
317 317
318static irqreturn_t snd_ad1816a_interrupt(int irq, void *dev_id, struct pt_regs *regs) 318static irqreturn_t snd_ad1816a_interrupt(int irq, void *dev_id)
319{ 319{
320 struct snd_ad1816a *chip = dev_id; 320 struct snd_ad1816a *chip = dev_id;
321 unsigned char status; 321 unsigned char status;
diff --git a/sound/isa/ad1848/ad1848_lib.c b/sound/isa/ad1848/ad1848_lib.c
index a6fbd5d1d62f..666b3bcc19f0 100644
--- a/sound/isa/ad1848/ad1848_lib.c
+++ b/sound/isa/ad1848/ad1848_lib.c
@@ -583,7 +583,7 @@ static int snd_ad1848_capture_prepare(struct snd_pcm_substream *substream)
583 return 0; 583 return 0;
584} 584}
585 585
586static irqreturn_t snd_ad1848_interrupt(int irq, void *dev_id, struct pt_regs *regs) 586static irqreturn_t snd_ad1848_interrupt(int irq, void *dev_id)
587{ 587{
588 struct snd_ad1848 *chip = dev_id; 588 struct snd_ad1848 *chip = dev_id;
589 589
diff --git a/sound/isa/cs423x/cs4231_lib.c b/sound/isa/cs423x/cs4231_lib.c
index fbb20176cca4..75c7c5f01989 100644
--- a/sound/isa/cs423x/cs4231_lib.c
+++ b/sound/isa/cs423x/cs4231_lib.c
@@ -920,7 +920,7 @@ static void snd_cs4231_overrange(struct snd_cs4231 *chip)
920 chip->capture_substream->runtime->overrange++; 920 chip->capture_substream->runtime->overrange++;
921} 921}
922 922
923irqreturn_t snd_cs4231_interrupt(int irq, void *dev_id, struct pt_regs *regs) 923irqreturn_t snd_cs4231_interrupt(int irq, void *dev_id)
924{ 924{
925 struct snd_cs4231 *chip = dev_id; 925 struct snd_cs4231 *chip = dev_id;
926 unsigned char status; 926 unsigned char status;
diff --git a/sound/isa/es1688/es1688_lib.c b/sound/isa/es1688/es1688_lib.c
index 7e985d3bc510..a2ab99f2ac35 100644
--- a/sound/isa/es1688/es1688_lib.c
+++ b/sound/isa/es1688/es1688_lib.c
@@ -479,7 +479,7 @@ static int snd_es1688_capture_trigger(struct snd_pcm_substream *substream,
479 return snd_es1688_trigger(chip, cmd, 0x0f); 479 return snd_es1688_trigger(chip, cmd, 0x0f);
480} 480}
481 481
482static irqreturn_t snd_es1688_interrupt(int irq, void *dev_id, struct pt_regs *regs) 482static irqreturn_t snd_es1688_interrupt(int irq, void *dev_id)
483{ 483{
484 struct snd_es1688 *chip = dev_id; 484 struct snd_es1688 *chip = dev_id;
485 485
diff --git a/sound/isa/es18xx.c b/sound/isa/es18xx.c
index 85818200333f..2398d2c55feb 100644
--- a/sound/isa/es18xx.c
+++ b/sound/isa/es18xx.c
@@ -754,7 +754,7 @@ static int snd_es18xx_playback_trigger(struct snd_pcm_substream *substream,
754 return snd_es18xx_playback2_trigger(chip, substream, cmd); 754 return snd_es18xx_playback2_trigger(chip, substream, cmd);
755} 755}
756 756
757static irqreturn_t snd_es18xx_interrupt(int irq, void *dev_id, struct pt_regs *regs) 757static irqreturn_t snd_es18xx_interrupt(int irq, void *dev_id)
758{ 758{
759 struct snd_es18xx *chip = dev_id; 759 struct snd_es18xx *chip = dev_id;
760 unsigned char status; 760 unsigned char status;
@@ -799,7 +799,7 @@ static irqreturn_t snd_es18xx_interrupt(int irq, void *dev_id, struct pt_regs *r
799 799
800 /* MPU */ 800 /* MPU */
801 if ((status & MPU_IRQ) && chip->rmidi) 801 if ((status & MPU_IRQ) && chip->rmidi)
802 snd_mpu401_uart_interrupt(irq, chip->rmidi->private_data, regs); 802 snd_mpu401_uart_interrupt(irq, chip->rmidi->private_data);
803 803
804 /* Hardware volume */ 804 /* Hardware volume */
805 if (status & HWV_IRQ) { 805 if (status & HWV_IRQ) {
diff --git a/sound/isa/gus/gus_irq.c b/sound/isa/gus/gus_irq.c
index 42db37552efb..537d3cfe41f3 100644
--- a/sound/isa/gus/gus_irq.c
+++ b/sound/isa/gus/gus_irq.c
@@ -30,7 +30,7 @@
30#define STAT_ADD(x) while (0) { ; } 30#define STAT_ADD(x) while (0) { ; }
31#endif 31#endif
32 32
33irqreturn_t snd_gus_interrupt(int irq, void *dev_id, struct pt_regs *regs) 33irqreturn_t snd_gus_interrupt(int irq, void *dev_id)
34{ 34{
35 struct snd_gus_card * gus = dev_id; 35 struct snd_gus_card * gus = dev_id;
36 unsigned char status; 36 unsigned char status;
diff --git a/sound/isa/gus/gusmax.c b/sound/isa/gus/gusmax.c
index ac11cae8589a..52498c9d411e 100644
--- a/sound/isa/gus/gusmax.c
+++ b/sound/isa/gus/gusmax.c
@@ -105,7 +105,7 @@ static int __init snd_gusmax_detect(struct snd_gus_card * gus)
105 return 0; 105 return 0;
106} 106}
107 107
108static irqreturn_t snd_gusmax_interrupt(int irq, void *dev_id, struct pt_regs *regs) 108static irqreturn_t snd_gusmax_interrupt(int irq, void *dev_id)
109{ 109{
110 struct snd_gusmax *maxcard = (struct snd_gusmax *) dev_id; 110 struct snd_gusmax *maxcard = (struct snd_gusmax *) dev_id;
111 int loop, max = 5; 111 int loop, max = 5;
@@ -115,12 +115,12 @@ static irqreturn_t snd_gusmax_interrupt(int irq, void *dev_id, struct pt_regs *r
115 loop = 0; 115 loop = 0;
116 if (inb(maxcard->gus_status_reg)) { 116 if (inb(maxcard->gus_status_reg)) {
117 handled = 1; 117 handled = 1;
118 snd_gus_interrupt(irq, maxcard->gus, regs); 118 snd_gus_interrupt(irq, maxcard->gus);
119 loop++; 119 loop++;
120 } 120 }
121 if (inb(maxcard->pcm_status_reg) & 0x01) { /* IRQ bit is set? */ 121 if (inb(maxcard->pcm_status_reg) & 0x01) { /* IRQ bit is set? */
122 handled = 1; 122 handled = 1;
123 snd_cs4231_interrupt(irq, maxcard->cs4231, regs); 123 snd_cs4231_interrupt(irq, maxcard->cs4231);
124 loop++; 124 loop++;
125 } 125 }
126 } while (loop && --max > 0); 126 } while (loop && --max > 0);
diff --git a/sound/isa/gus/interwave.c b/sound/isa/gus/interwave.c
index ea69f25506fb..5c474b831edc 100644
--- a/sound/isa/gus/interwave.c
+++ b/sound/isa/gus/interwave.c
@@ -299,7 +299,7 @@ static int __devinit snd_interwave_detect(struct snd_interwave *iwcard,
299 return -ENODEV; 299 return -ENODEV;
300} 300}
301 301
302static irqreturn_t snd_interwave_interrupt(int irq, void *dev_id, struct pt_regs *regs) 302static irqreturn_t snd_interwave_interrupt(int irq, void *dev_id)
303{ 303{
304 struct snd_interwave *iwcard = (struct snd_interwave *) dev_id; 304 struct snd_interwave *iwcard = (struct snd_interwave *) dev_id;
305 int loop, max = 5; 305 int loop, max = 5;
@@ -309,12 +309,12 @@ static irqreturn_t snd_interwave_interrupt(int irq, void *dev_id, struct pt_regs
309 loop = 0; 309 loop = 0;
310 if (inb(iwcard->gus_status_reg)) { 310 if (inb(iwcard->gus_status_reg)) {
311 handled = 1; 311 handled = 1;
312 snd_gus_interrupt(irq, iwcard->gus, regs); 312 snd_gus_interrupt(irq, iwcard->gus);
313 loop++; 313 loop++;
314 } 314 }
315 if (inb(iwcard->pcm_status_reg) & 0x01) { /* IRQ bit is set? */ 315 if (inb(iwcard->pcm_status_reg) & 0x01) { /* IRQ bit is set? */
316 handled = 1; 316 handled = 1;
317 snd_cs4231_interrupt(irq, iwcard->cs4231, regs); 317 snd_cs4231_interrupt(irq, iwcard->cs4231);
318 loop++; 318 loop++;
319 } 319 }
320 } while (loop && --max > 0); 320 } while (loop && --max > 0);
diff --git a/sound/isa/opl3sa2.c b/sound/isa/opl3sa2.c
index da92bf6c392b..419b4ebbf00e 100644
--- a/sound/isa/opl3sa2.c
+++ b/sound/isa/opl3sa2.c
@@ -294,7 +294,7 @@ static int __devinit snd_opl3sa2_detect(struct snd_opl3sa2 *chip)
294 return 0; 294 return 0;
295} 295}
296 296
297static irqreturn_t snd_opl3sa2_interrupt(int irq, void *dev_id, struct pt_regs *regs) 297static irqreturn_t snd_opl3sa2_interrupt(int irq, void *dev_id)
298{ 298{
299 unsigned short status; 299 unsigned short status;
300 struct snd_opl3sa2 *chip = dev_id; 300 struct snd_opl3sa2 *chip = dev_id;
@@ -312,12 +312,12 @@ static irqreturn_t snd_opl3sa2_interrupt(int irq, void *dev_id, struct pt_regs *
312 312
313 if ((status & 0x10) && chip->rmidi != NULL) { 313 if ((status & 0x10) && chip->rmidi != NULL) {
314 handled = 1; 314 handled = 1;
315 snd_mpu401_uart_interrupt(irq, chip->rmidi->private_data, regs); 315 snd_mpu401_uart_interrupt(irq, chip->rmidi->private_data);
316 } 316 }
317 317
318 if (status & 0x07) { /* TI,CI,PI */ 318 if (status & 0x07) { /* TI,CI,PI */
319 handled = 1; 319 handled = 1;
320 snd_cs4231_interrupt(irq, chip->cs4231, regs); 320 snd_cs4231_interrupt(irq, chip->cs4231);
321 } 321 }
322 322
323 if (status & 0x40) { /* hardware volume change */ 323 if (status & 0x40) { /* hardware volume change */
diff --git a/sound/isa/opti9xx/opti92x-ad1848.c b/sound/isa/opti9xx/opti92x-ad1848.c
index 9d528ae00bff..a1ad39a8cdce 100644
--- a/sound/isa/opti9xx/opti92x-ad1848.c
+++ b/sound/isa/opti9xx/opti92x-ad1848.c
@@ -1090,7 +1090,7 @@ static void snd_opti93x_overrange(struct snd_opti93x *chip)
1090 spin_unlock_irqrestore(&chip->lock, flags); 1090 spin_unlock_irqrestore(&chip->lock, flags);
1091} 1091}
1092 1092
1093static irqreturn_t snd_opti93x_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1093static irqreturn_t snd_opti93x_interrupt(int irq, void *dev_id)
1094{ 1094{
1095 struct snd_opti93x *codec = dev_id; 1095 struct snd_opti93x *codec = dev_id;
1096 unsigned char status; 1096 unsigned char status;
diff --git a/sound/isa/sb/es968.c b/sound/isa/sb/es968.c
index d4d65b84265a..d4b218726ce7 100644
--- a/sound/isa/sb/es968.c
+++ b/sound/isa/sb/es968.c
@@ -70,8 +70,7 @@ MODULE_DEVICE_TABLE(pnp_card, snd_es968_pnpids);
70 70
71#define DRIVER_NAME "snd-card-es968" 71#define DRIVER_NAME "snd-card-es968"
72 72
73static irqreturn_t snd_card_es968_interrupt(int irq, void *dev_id, 73static irqreturn_t snd_card_es968_interrupt(int irq, void *dev_id)
74 struct pt_regs *regs)
75{ 74{
76 struct snd_sb *chip = dev_id; 75 struct snd_sb *chip = dev_id;
77 76
diff --git a/sound/isa/sb/sb16_main.c b/sound/isa/sb/sb16_main.c
index f183f1845a36..383911b9e74d 100644
--- a/sound/isa/sb/sb16_main.c
+++ b/sound/isa/sb/sb16_main.c
@@ -395,7 +395,7 @@ static int snd_sb16_capture_trigger(struct snd_pcm_substream *substream,
395 return result; 395 return result;
396} 396}
397 397
398irqreturn_t snd_sb16dsp_interrupt(int irq, void *dev_id, struct pt_regs *regs) 398irqreturn_t snd_sb16dsp_interrupt(int irq, void *dev_id)
399{ 399{
400 struct snd_sb *chip = dev_id; 400 struct snd_sb *chip = dev_id;
401 unsigned char status; 401 unsigned char status;
@@ -405,7 +405,7 @@ irqreturn_t snd_sb16dsp_interrupt(int irq, void *dev_id, struct pt_regs *regs)
405 status = snd_sbmixer_read(chip, SB_DSP4_IRQSTATUS); 405 status = snd_sbmixer_read(chip, SB_DSP4_IRQSTATUS);
406 spin_unlock(&chip->mixer_lock); 406 spin_unlock(&chip->mixer_lock);
407 if ((status & SB_IRQTYPE_MPUIN) && chip->rmidi_callback) 407 if ((status & SB_IRQTYPE_MPUIN) && chip->rmidi_callback)
408 chip->rmidi_callback(irq, chip->rmidi->private_data, regs); 408 chip->rmidi_callback(irq, chip->rmidi->private_data);
409 if (status & SB_IRQTYPE_8BIT) { 409 if (status & SB_IRQTYPE_8BIT) {
410 ok = 0; 410 ok = 0;
411 if (chip->mode & SB_MODE_PLAYBACK_8) { 411 if (chip->mode & SB_MODE_PLAYBACK_8) {
diff --git a/sound/isa/sb/sb8.c b/sound/isa/sb/sb8.c
index 141400c01426..268ebd34703e 100644
--- a/sound/isa/sb/sb8.c
+++ b/sound/isa/sb/sb8.c
@@ -63,7 +63,7 @@ struct snd_sb8 {
63 struct snd_sb *chip; 63 struct snd_sb *chip;
64}; 64};
65 65
66static irqreturn_t snd_sb8_interrupt(int irq, void *dev_id, struct pt_regs *regs) 66static irqreturn_t snd_sb8_interrupt(int irq, void *dev_id)
67{ 67{
68 struct snd_sb *chip = dev_id; 68 struct snd_sb *chip = dev_id;
69 69
diff --git a/sound/isa/sb/sb_common.c b/sound/isa/sb/sb_common.c
index f17de2bdd9e0..c62a9e3d2ae4 100644
--- a/sound/isa/sb/sb_common.c
+++ b/sound/isa/sb/sb_common.c
@@ -205,7 +205,7 @@ static int snd_sbdsp_dev_free(struct snd_device *device)
205int snd_sbdsp_create(struct snd_card *card, 205int snd_sbdsp_create(struct snd_card *card,
206 unsigned long port, 206 unsigned long port,
207 int irq, 207 int irq,
208 irqreturn_t (*irq_handler)(int, void *, struct pt_regs *), 208 irq_handler_t irq_handler,
209 int dma8, 209 int dma8,
210 int dma16, 210 int dma16,
211 unsigned short hardware, 211 unsigned short hardware,
diff --git a/sound/isa/sgalaxy.c b/sound/isa/sgalaxy.c
index 8742fa517491..4fcd0f4e868c 100644
--- a/sound/isa/sgalaxy.c
+++ b/sound/isa/sgalaxy.c
@@ -109,7 +109,7 @@ static int __init snd_sgalaxy_sbdsp_command(unsigned long port, unsigned char va
109 return 0; 109 return 0;
110} 110}
111 111
112static irqreturn_t snd_sgalaxy_dummy_interrupt(int irq, void *dev_id, struct pt_regs *regs) 112static irqreturn_t snd_sgalaxy_dummy_interrupt(int irq, void *dev_id)
113{ 113{
114 return IRQ_NONE; 114 return IRQ_NONE;
115} 115}
diff --git a/sound/isa/wavefront/wavefront.c b/sound/isa/wavefront/wavefront.c
index a8f8d2fa9d76..85db535aea9b 100644
--- a/sound/isa/wavefront/wavefront.c
+++ b/sound/isa/wavefront/wavefront.c
@@ -263,9 +263,7 @@ snd_wavefront_pnp (int dev, snd_wavefront_card_t *acard, struct pnp_card_link *c
263 263
264#endif /* CONFIG_PNP */ 264#endif /* CONFIG_PNP */
265 265
266static irqreturn_t snd_wavefront_ics2115_interrupt(int irq, 266static irqreturn_t snd_wavefront_ics2115_interrupt(int irq, void *dev_id)
267 void *dev_id,
268 struct pt_regs *regs)
269{ 267{
270 snd_wavefront_card_t *acard; 268 snd_wavefront_card_t *acard;
271 269
diff --git a/sound/mips/au1x00.c b/sound/mips/au1x00.c
index ff6e6fc198a1..8a61a1191861 100644
--- a/sound/mips/au1x00.c
+++ b/sound/mips/au1x00.c
@@ -220,7 +220,7 @@ au1000_dma_start(struct audio_stream *stream)
220} 220}
221 221
222static irqreturn_t 222static irqreturn_t
223au1000_dma_interrupt(int irq, void *dev_id, struct pt_regs *regs) 223au1000_dma_interrupt(int irq, void *dev_id)
224{ 224{
225 struct audio_stream *stream = (struct audio_stream *) dev_id; 225 struct audio_stream *stream = (struct audio_stream *) dev_id;
226 struct snd_pcm_substream *substream = stream->substream; 226 struct snd_pcm_substream *substream = stream->substream;
diff --git a/sound/oss/ad1816.c b/sound/oss/ad1816.c
index 29057836c644..caabf31193f7 100644
--- a/sound/oss/ad1816.c
+++ b/sound/oss/ad1816.c
@@ -521,7 +521,7 @@ static struct audio_driver ad1816_audio_driver =
521/* Interrupt handler */ 521/* Interrupt handler */
522 522
523 523
524static irqreturn_t ad1816_interrupt (int irq, void *dev_id, struct pt_regs *dummy) 524static irqreturn_t ad1816_interrupt (int irq, void *dev_id)
525{ 525{
526 unsigned char status; 526 unsigned char status;
527 ad1816_info *devc = (ad1816_info *)dev_id; 527 ad1816_info *devc = (ad1816_info *)dev_id;
diff --git a/sound/oss/ad1848.c b/sound/oss/ad1848.c
index 257b7536fb18..0ffa9970bf0f 100644
--- a/sound/oss/ad1848.c
+++ b/sound/oss/ad1848.c
@@ -195,7 +195,7 @@ static void ad1848_halt(int dev);
195static void ad1848_halt_input(int dev); 195static void ad1848_halt_input(int dev);
196static void ad1848_halt_output(int dev); 196static void ad1848_halt_output(int dev);
197static void ad1848_trigger(int dev, int bits); 197static void ad1848_trigger(int dev, int bits);
198static irqreturn_t adintr(int irq, void *dev_id, struct pt_regs *dummy); 198static irqreturn_t adintr(int irq, void *dev_id);
199 199
200#ifndef EXCLUDE_TIMERS 200#ifndef EXCLUDE_TIMERS
201static int ad1848_tmr_install(int dev); 201static int ad1848_tmr_install(int dev);
@@ -2196,7 +2196,7 @@ void ad1848_unload(int io_base, int irq, int dma_playback, int dma_capture, int
2196 printk(KERN_ERR "ad1848: Can't find device to be unloaded. Base=%x\n", io_base); 2196 printk(KERN_ERR "ad1848: Can't find device to be unloaded. Base=%x\n", io_base);
2197} 2197}
2198 2198
2199static irqreturn_t adintr(int irq, void *dev_id, struct pt_regs *dummy) 2199static irqreturn_t adintr(int irq, void *dev_id)
2200{ 2200{
2201 unsigned char status; 2201 unsigned char status;
2202 ad1848_info *devc; 2202 ad1848_info *devc;
diff --git a/sound/oss/ad1889.c b/sound/oss/ad1889.c
index f56f870b4840..09263d72a519 100644
--- a/sound/oss/ad1889.c
+++ b/sound/oss/ad1889.c
@@ -929,7 +929,7 @@ static struct pci_device_id ad1889_id_tbl[] = {
929}; 929};
930MODULE_DEVICE_TABLE(pci, ad1889_id_tbl); 930MODULE_DEVICE_TABLE(pci, ad1889_id_tbl);
931 931
932static irqreturn_t ad1889_interrupt(int irq, void *dev_id, struct pt_regs *regs) 932static irqreturn_t ad1889_interrupt(int irq, void *dev_id)
933{ 933{
934 u32 stat; 934 u32 stat;
935 ad1889_dev_t *dev = (ad1889_dev_t *)dev_id; 935 ad1889_dev_t *dev = (ad1889_dev_t *)dev_id;
diff --git a/sound/oss/btaudio.c b/sound/oss/btaudio.c
index 324a81fd3a3b..6ad384114239 100644
--- a/sound/oss/btaudio.c
+++ b/sound/oss/btaudio.c
@@ -824,7 +824,7 @@ static char *irq_name[] = { "", "", "", "OFLOW", "", "", "", "", "", "", "",
824 "RISCI", "FBUS", "FTRGT", "FDSR", "PPERR", 824 "RISCI", "FBUS", "FTRGT", "FDSR", "PPERR",
825 "RIPERR", "PABORT", "OCERR", "SCERR" }; 825 "RIPERR", "PABORT", "OCERR", "SCERR" };
826 826
827static irqreturn_t btaudio_irq(int irq, void *dev_id, struct pt_regs * regs) 827static irqreturn_t btaudio_irq(int irq, void *dev_id)
828{ 828{
829 int count = 0; 829 int count = 0;
830 u32 stat,astat; 830 u32 stat,astat;
diff --git a/sound/oss/cs46xx.c b/sound/oss/cs46xx.c
index 43193581f836..6e3c41f530e6 100644
--- a/sound/oss/cs46xx.c
+++ b/sound/oss/cs46xx.c
@@ -1613,7 +1613,7 @@ static void cs_handle_midi(struct cs_card *card)
1613 wake_up(&card->midi.owait); 1613 wake_up(&card->midi.owait);
1614} 1614}
1615 1615
1616static irqreturn_t cs_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1616static irqreturn_t cs_interrupt(int irq, void *dev_id)
1617{ 1617{
1618 struct cs_card *card = (struct cs_card *)dev_id; 1618 struct cs_card *card = (struct cs_card *)dev_id;
1619 /* Single channel card */ 1619 /* Single channel card */
diff --git a/sound/oss/dmasound/dmasound_atari.c b/sound/oss/dmasound/dmasound_atari.c
index dc31373069a5..285239d64b82 100644
--- a/sound/oss/dmasound/dmasound_atari.c
+++ b/sound/oss/dmasound/dmasound_atari.c
@@ -133,7 +133,7 @@ static int FalconSetFormat(int format);
133static int FalconSetVolume(int volume); 133static int FalconSetVolume(int volume);
134static void AtaPlayNextFrame(int index); 134static void AtaPlayNextFrame(int index);
135static void AtaPlay(void); 135static void AtaPlay(void);
136static irqreturn_t AtaInterrupt(int irq, void *dummy, struct pt_regs *fp); 136static irqreturn_t AtaInterrupt(int irq, void *dummy);
137 137
138/*** Mid level stuff *********************************************************/ 138/*** Mid level stuff *********************************************************/
139 139
@@ -1257,7 +1257,7 @@ static void AtaPlay(void)
1257} 1257}
1258 1258
1259 1259
1260static irqreturn_t AtaInterrupt(int irq, void *dummy, struct pt_regs *fp) 1260static irqreturn_t AtaInterrupt(int irq, void *dummy)
1261{ 1261{
1262#if 0 1262#if 0
1263 /* ++TeSche: if you should want to test this... */ 1263 /* ++TeSche: if you should want to test this... */
diff --git a/sound/oss/dmasound/dmasound_awacs.c b/sound/oss/dmasound/dmasound_awacs.c
index 9ae659f82430..3bd19c36fcd9 100644
--- a/sound/oss/dmasound/dmasound_awacs.c
+++ b/sound/oss/dmasound/dmasound_awacs.c
@@ -281,9 +281,9 @@ static int PMacSetFormat(int format);
281static int PMacSetVolume(int volume); 281static int PMacSetVolume(int volume);
282static void PMacPlay(void); 282static void PMacPlay(void);
283static void PMacRecord(void); 283static void PMacRecord(void);
284static irqreturn_t pmac_awacs_tx_intr(int irq, void *devid, struct pt_regs *regs); 284static irqreturn_t pmac_awacs_tx_intr(int irq, void *devid);
285static irqreturn_t pmac_awacs_rx_intr(int irq, void *devid, struct pt_regs *regs); 285static irqreturn_t pmac_awacs_rx_intr(int irq, void *devid);
286static irqreturn_t pmac_awacs_intr(int irq, void *devid, struct pt_regs *regs); 286static irqreturn_t pmac_awacs_intr(int irq, void *devid);
287static void awacs_write(int val); 287static void awacs_write(int val);
288static int awacs_get_volume(int reg, int lshift); 288static int awacs_get_volume(int reg, int lshift);
289static int awacs_volume_setter(int volume, int n, int mute, int lshift); 289static int awacs_volume_setter(int volume, int n, int mute, int lshift);
@@ -398,7 +398,7 @@ read_audio_gpio(int gpio_addr)
398 * Headphone interrupt via GPIO (Tumbler, Snapper, DACA) 398 * Headphone interrupt via GPIO (Tumbler, Snapper, DACA)
399 */ 399 */
400static irqreturn_t 400static irqreturn_t
401headphone_intr(int irq, void *devid, struct pt_regs *regs) 401headphone_intr(int irq, void *devid)
402{ 402{
403 unsigned long flags; 403 unsigned long flags;
404 404
@@ -1037,7 +1037,7 @@ static void PMacRecord(void)
1037*/ 1037*/
1038 1038
1039static irqreturn_t 1039static irqreturn_t
1040pmac_awacs_tx_intr(int irq, void *devid, struct pt_regs *regs) 1040pmac_awacs_tx_intr(int irq, void *devid)
1041{ 1041{
1042 int i = write_sq.front; 1042 int i = write_sq.front;
1043 int stat; 1043 int stat;
@@ -1129,7 +1129,7 @@ printk("dmasound_pmac: tx-irq: xfer died - patching it up...\n") ;
1129 1129
1130 1130
1131static irqreturn_t 1131static irqreturn_t
1132pmac_awacs_rx_intr(int irq, void *devid, struct pt_regs *regs) 1132pmac_awacs_rx_intr(int irq, void *devid)
1133{ 1133{
1134 int stat ; 1134 int stat ;
1135 /* For some reason on my PowerBook G3, I get one interrupt 1135 /* For some reason on my PowerBook G3, I get one interrupt
@@ -1212,7 +1212,7 @@ printk("dmasound_pmac: rx-irq: DIED - attempting resurection\n");
1212 1212
1213 1213
1214static irqreturn_t 1214static irqreturn_t
1215pmac_awacs_intr(int irq, void *devid, struct pt_regs *regs) 1215pmac_awacs_intr(int irq, void *devid)
1216{ 1216{
1217 int ctrl; 1217 int ctrl;
1218 int status; 1218 int status;
diff --git a/sound/oss/dmasound/dmasound_paula.c b/sound/oss/dmasound/dmasound_paula.c
index 68e1d8f6c359..90fc058e1159 100644
--- a/sound/oss/dmasound/dmasound_paula.c
+++ b/sound/oss/dmasound/dmasound_paula.c
@@ -82,7 +82,7 @@ static int AmiSetVolume(int volume);
82static int AmiSetTreble(int treble); 82static int AmiSetTreble(int treble);
83static void AmiPlayNextFrame(int index); 83static void AmiPlayNextFrame(int index);
84static void AmiPlay(void); 84static void AmiPlay(void);
85static irqreturn_t AmiInterrupt(int irq, void *dummy, struct pt_regs *fp); 85static irqreturn_t AmiInterrupt(int irq, void *dummy);
86 86
87#ifdef CONFIG_HEARTBEAT 87#ifdef CONFIG_HEARTBEAT
88 88
@@ -556,7 +556,7 @@ static void AmiPlay(void)
556} 556}
557 557
558 558
559static irqreturn_t AmiInterrupt(int irq, void *dummy, struct pt_regs *fp) 559static irqreturn_t AmiInterrupt(int irq, void *dummy)
560{ 560{
561 int minframes = 1; 561 int minframes = 1;
562 562
diff --git a/sound/oss/dmasound/dmasound_q40.c b/sound/oss/dmasound/dmasound_q40.c
index e2081f32b0c4..b3379dd7ca5e 100644
--- a/sound/oss/dmasound/dmasound_q40.c
+++ b/sound/oss/dmasound/dmasound_q40.c
@@ -48,8 +48,8 @@ static int Q40SetFormat(int format);
48static int Q40SetVolume(int volume); 48static int Q40SetVolume(int volume);
49static void Q40PlayNextFrame(int index); 49static void Q40PlayNextFrame(int index);
50static void Q40Play(void); 50static void Q40Play(void);
51static irqreturn_t Q40StereoInterrupt(int irq, void *dummy, struct pt_regs *fp); 51static irqreturn_t Q40StereoInterrupt(int irq, void *dummy);
52static irqreturn_t Q40MonoInterrupt(int irq, void *dummy, struct pt_regs *fp); 52static irqreturn_t Q40MonoInterrupt(int irq, void *dummy);
53static void Q40Interrupt(void); 53static void Q40Interrupt(void);
54 54
55 55
@@ -451,7 +451,7 @@ static void Q40Play(void)
451 spin_unlock_irqrestore(&dmasound.lock, flags); 451 spin_unlock_irqrestore(&dmasound.lock, flags);
452} 452}
453 453
454static irqreturn_t Q40StereoInterrupt(int irq, void *dummy, struct pt_regs *fp) 454static irqreturn_t Q40StereoInterrupt(int irq, void *dummy)
455{ 455{
456 spin_lock(&dmasound.lock); 456 spin_lock(&dmasound.lock);
457 if (q40_sc>1){ 457 if (q40_sc>1){
@@ -463,7 +463,7 @@ static irqreturn_t Q40StereoInterrupt(int irq, void *dummy, struct pt_regs *fp)
463 spin_unlock(&dmasound.lock); 463 spin_unlock(&dmasound.lock);
464 return IRQ_HANDLED; 464 return IRQ_HANDLED;
465} 465}
466static irqreturn_t Q40MonoInterrupt(int irq, void *dummy, struct pt_regs *fp) 466static irqreturn_t Q40MonoInterrupt(int irq, void *dummy)
467{ 467{
468 spin_lock(&dmasound.lock); 468 spin_lock(&dmasound.lock);
469 if (q40_sc>0){ 469 if (q40_sc>0){
diff --git a/sound/oss/emu10k1/irqmgr.c b/sound/oss/emu10k1/irqmgr.c
index d19b464ba01b..fb2ce638f01c 100644
--- a/sound/oss/emu10k1/irqmgr.c
+++ b/sound/oss/emu10k1/irqmgr.c
@@ -37,7 +37,7 @@
37 37
38/* Interrupt handler */ 38/* Interrupt handler */
39 39
40irqreturn_t emu10k1_interrupt(int irq, void *dev_id, struct pt_regs *regs) 40irqreturn_t emu10k1_interrupt(int irq, void *dev_id)
41{ 41{
42 struct emu10k1_card *card = (struct emu10k1_card *) dev_id; 42 struct emu10k1_card *card = (struct emu10k1_card *) dev_id;
43 u32 irqstatus, irqstatus_tmp; 43 u32 irqstatus, irqstatus_tmp;
diff --git a/sound/oss/emu10k1/main.c b/sound/oss/emu10k1/main.c
index c4ce94d6e10c..6c59df7b0001 100644
--- a/sound/oss/emu10k1/main.c
+++ b/sound/oss/emu10k1/main.c
@@ -167,7 +167,7 @@ extern struct file_operations emu10k1_midi_fops;
167static struct midi_operations emu10k1_midi_operations; 167static struct midi_operations emu10k1_midi_operations;
168#endif 168#endif
169 169
170extern irqreturn_t emu10k1_interrupt(int, void *, struct pt_regs *s); 170extern irqreturn_t emu10k1_interrupt(int, void *);
171 171
172static int __devinit emu10k1_audio_init(struct emu10k1_card *card) 172static int __devinit emu10k1_audio_init(struct emu10k1_card *card)
173{ 173{
diff --git a/sound/oss/es1371.c b/sound/oss/es1371.c
index a2ffe723dad5..2562f4769b90 100644
--- a/sound/oss/es1371.c
+++ b/sound/oss/es1371.c
@@ -1100,7 +1100,7 @@ static void es1371_handle_midi(struct es1371_state *s)
1100 outb((s->midi.ocnt > 0) ? UCTRL_RXINTEN | UCTRL_ENA_TXINT : UCTRL_RXINTEN, s->io+ES1371_REG_UART_CONTROL); 1100 outb((s->midi.ocnt > 0) ? UCTRL_RXINTEN | UCTRL_ENA_TXINT : UCTRL_RXINTEN, s->io+ES1371_REG_UART_CONTROL);
1101} 1101}
1102 1102
1103static irqreturn_t es1371_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1103static irqreturn_t es1371_interrupt(int irq, void *dev_id)
1104{ 1104{
1105 struct es1371_state *s = (struct es1371_state *)dev_id; 1105 struct es1371_state *s = (struct es1371_state *)dev_id;
1106 unsigned int intsrc, sctl; 1106 unsigned int intsrc, sctl;
diff --git a/sound/oss/hal2.c b/sound/oss/hal2.c
index 80ab402dae9a..7807abac0625 100644
--- a/sound/oss/hal2.c
+++ b/sound/oss/hal2.c
@@ -370,7 +370,7 @@ static void hal2_adc_interrupt(struct hal2_codec *adc)
370 wake_up(&adc->dma_wait); 370 wake_up(&adc->dma_wait);
371} 371}
372 372
373static irqreturn_t hal2_interrupt(int irq, void *dev_id, struct pt_regs *regs) 373static irqreturn_t hal2_interrupt(int irq, void *dev_id)
374{ 374{
375 struct hal2_card *hal2 = (struct hal2_card*)dev_id; 375 struct hal2_card *hal2 = (struct hal2_card*)dev_id;
376 irqreturn_t ret = IRQ_NONE; 376 irqreturn_t ret = IRQ_NONE;
diff --git a/sound/oss/i810_audio.c b/sound/oss/i810_audio.c
index ddcddc2347f7..a48af879b466 100644
--- a/sound/oss/i810_audio.c
+++ b/sound/oss/i810_audio.c
@@ -1523,7 +1523,7 @@ static void i810_channel_interrupt(struct i810_card *card)
1523#endif 1523#endif
1524} 1524}
1525 1525
1526static irqreturn_t i810_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1526static irqreturn_t i810_interrupt(int irq, void *dev_id)
1527{ 1527{
1528 struct i810_card *card = (struct i810_card *)dev_id; 1528 struct i810_card *card = (struct i810_card *)dev_id;
1529 u32 status; 1529 u32 status;
diff --git a/sound/oss/mpu401.c b/sound/oss/mpu401.c
index 162d07cc489f..58d4a5d05a27 100644
--- a/sound/oss/mpu401.c
+++ b/sound/oss/mpu401.c
@@ -432,7 +432,7 @@ static void mpu401_input_loop(struct mpu_config *devc)
432 devc->m_busy = 0; 432 devc->m_busy = 0;
433} 433}
434 434
435static irqreturn_t mpuintr(int irq, void *dev_id, struct pt_regs *dummy) 435static irqreturn_t mpuintr(int irq, void *dev_id)
436{ 436{
437 struct mpu_config *devc; 437 struct mpu_config *devc;
438 int dev = (int) dev_id; 438 int dev = (int) dev_id;
diff --git a/sound/oss/mpu401.h b/sound/oss/mpu401.h
index 84c0e9522ef7..0ad1e9ee74f7 100644
--- a/sound/oss/mpu401.h
+++ b/sound/oss/mpu401.h
@@ -3,10 +3,9 @@
3int probe_uart401 (struct address_info *hw_config, struct module *owner); 3int probe_uart401 (struct address_info *hw_config, struct module *owner);
4void unload_uart401 (struct address_info *hw_config); 4void unload_uart401 (struct address_info *hw_config);
5 5
6irqreturn_t uart401intr (int irq, void *dev_id, struct pt_regs * dummy); 6irqreturn_t uart401intr (int irq, void *dev_id);
7 7
8/* From mpu401.c */ 8/* From mpu401.c */
9int probe_mpu401(struct address_info *hw_config, struct resource *ports); 9int probe_mpu401(struct address_info *hw_config, struct resource *ports);
10int attach_mpu401(struct address_info * hw_config, struct module *owner); 10int attach_mpu401(struct address_info * hw_config, struct module *owner);
11void unload_mpu401(struct address_info *hw_info); 11void unload_mpu401(struct address_info *hw_info);
12
diff --git a/sound/oss/msnd_pinnacle.c b/sound/oss/msnd_pinnacle.c
index 6d7763dae895..d5146790f5e3 100644
--- a/sound/oss/msnd_pinnacle.c
+++ b/sound/oss/msnd_pinnacle.c
@@ -1087,7 +1087,7 @@ static __inline__ void eval_dsp_msg(register WORD wMessage)
1087 } 1087 }
1088} 1088}
1089 1089
1090static irqreturn_t intr(int irq, void *dev_id, struct pt_regs *regs) 1090static irqreturn_t intr(int irq, void *dev_id)
1091{ 1091{
1092 /* Send ack to DSP */ 1092 /* Send ack to DSP */
1093 msnd_inb(dev.io + HP_RXL); 1093 msnd_inb(dev.io + HP_RXL);
diff --git a/sound/oss/nec_vrc5477.c b/sound/oss/nec_vrc5477.c
index 6f7f2f0423e4..da9728e17727 100644
--- a/sound/oss/nec_vrc5477.c
+++ b/sound/oss/nec_vrc5477.c
@@ -848,7 +848,7 @@ static inline void vrc5477_ac97_dac_interrupt(struct vrc5477_ac97_state *s)
848 wake_up_interruptible(&dac->wait); 848 wake_up_interruptible(&dac->wait);
849} 849}
850 850
851static irqreturn_t vrc5477_ac97_interrupt(int irq, void *dev_id, struct pt_regs *regs) 851static irqreturn_t vrc5477_ac97_interrupt(int irq, void *dev_id)
852{ 852{
853 struct vrc5477_ac97_state *s = (struct vrc5477_ac97_state *)dev_id; 853 struct vrc5477_ac97_state *s = (struct vrc5477_ac97_state *)dev_id;
854 u32 irqStatus; 854 u32 irqStatus;
diff --git a/sound/oss/nm256.h b/sound/oss/nm256.h
index 21e07b5081f2..1dade9033995 100644
--- a/sound/oss/nm256.h
+++ b/sound/oss/nm256.h
@@ -115,7 +115,7 @@ struct nm256_info
115 int has_irq; 115 int has_irq;
116 116
117 /* The card interrupt service routine. */ 117 /* The card interrupt service routine. */
118 irqreturn_t (*introutine) (int, void *, struct pt_regs *); 118 irq_handler_t introutine;
119 119
120 /* Current audio config, cached. */ 120 /* Current audio config, cached. */
121 struct sinfo { 121 struct sinfo {
diff --git a/sound/oss/nm256_audio.c b/sound/oss/nm256_audio.c
index 7760dddf2b32..44cd15505001 100644
--- a/sound/oss/nm256_audio.c
+++ b/sound/oss/nm256_audio.c
@@ -45,8 +45,8 @@ static struct audio_driver nm256_audio_driver;
45 45
46static int nm256_grabInterrupt (struct nm256_info *card); 46static int nm256_grabInterrupt (struct nm256_info *card);
47static int nm256_releaseInterrupt (struct nm256_info *card); 47static int nm256_releaseInterrupt (struct nm256_info *card);
48static irqreturn_t nm256_interrupt (int irq, void *dev_id, struct pt_regs *dummy); 48static irqreturn_t nm256_interrupt (int irq, void *dev_id);
49static irqreturn_t nm256_interrupt_zx (int irq, void *dev_id, struct pt_regs *dummy); 49static irqreturn_t nm256_interrupt_zx (int irq, void *dev_id);
50 50
51/* These belong in linux/pci.h. */ 51/* These belong in linux/pci.h. */
52#define PCI_DEVICE_ID_NEOMAGIC_NM256AV_AUDIO 0x8005 52#define PCI_DEVICE_ID_NEOMAGIC_NM256AV_AUDIO 0x8005
@@ -526,7 +526,7 @@ nm256_initHw (struct nm256_info *card)
526 */ 526 */
527 527
528static irqreturn_t 528static irqreturn_t
529nm256_interrupt (int irq, void *dev_id, struct pt_regs *dummy) 529nm256_interrupt (int irq, void *dev_id)
530{ 530{
531 struct nm256_info *card = (struct nm256_info *)dev_id; 531 struct nm256_info *card = (struct nm256_info *)dev_id;
532 u16 status; 532 u16 status;
@@ -629,7 +629,7 @@ nm256_interrupt (int irq, void *dev_id, struct pt_regs *dummy)
629 */ 629 */
630 630
631static irqreturn_t 631static irqreturn_t
632nm256_interrupt_zx (int irq, void *dev_id, struct pt_regs *dummy) 632nm256_interrupt_zx (int irq, void *dev_id)
633{ 633{
634 struct nm256_info *card = (struct nm256_info *)dev_id; 634 struct nm256_info *card = (struct nm256_info *)dev_id;
635 u32 status; 635 u32 status;
diff --git a/sound/oss/pas2_card.c b/sound/oss/pas2_card.c
index 4ebb9638746e..25f3a22c52ee 100644
--- a/sound/oss/pas2_card.c
+++ b/sound/oss/pas2_card.c
@@ -88,7 +88,7 @@ void pas_write(unsigned char data, int ioaddr)
88 88
89/******************* Begin of the Interrupt Handler ********************/ 89/******************* Begin of the Interrupt Handler ********************/
90 90
91static irqreturn_t pasintr(int irq, void *dev_id, struct pt_regs *dummy) 91static irqreturn_t pasintr(int irq, void *dev_id)
92{ 92{
93 int status; 93 int status;
94 94
diff --git a/sound/oss/sb_common.c b/sound/oss/sb_common.c
index bbe5b7596d0e..440537c72604 100644
--- a/sound/oss/sb_common.c
+++ b/sound/oss/sb_common.c
@@ -132,7 +132,7 @@ static void sb_intr (sb_devc *devc)
132 132
133 if (src & 4) /* MPU401 interrupt */ 133 if (src & 4) /* MPU401 interrupt */
134 if(devc->midi_irq_cookie) 134 if(devc->midi_irq_cookie)
135 uart401intr(devc->irq, devc->midi_irq_cookie, NULL); 135 uart401intr(devc->irq, devc->midi_irq_cookie);
136 136
137 if (!(src & 3)) 137 if (!(src & 3))
138 return; /* Not a DSP interrupt */ 138 return; /* Not a DSP interrupt */
@@ -200,7 +200,7 @@ static void pci_intr(sb_devc *devc)
200 sb_intr(devc); 200 sb_intr(devc);
201} 201}
202 202
203static irqreturn_t sbintr(int irq, void *dev_id, struct pt_regs *dummy) 203static irqreturn_t sbintr(int irq, void *dev_id)
204{ 204{
205 sb_devc *devc = dev_id; 205 sb_devc *devc = dev_id;
206 206
diff --git a/sound/oss/sh_dac_audio.c b/sound/oss/sh_dac_audio.c
index 83ff8a71f716..3b3b4da8cfd3 100644
--- a/sound/oss/sh_dac_audio.c
+++ b/sound/oss/sh_dac_audio.c
@@ -263,7 +263,7 @@ struct file_operations dac_audio_fops = {
263 .release = dac_audio_release, 263 .release = dac_audio_release,
264}; 264};
265 265
266static irqreturn_t timer1_interrupt(int irq, void *dev, struct pt_regs *regs) 266static irqreturn_t timer1_interrupt(int irq, void *dev)
267{ 267{
268 unsigned long timer_status; 268 unsigned long timer_status;
269 269
diff --git a/sound/oss/swarm_cs4297a.c b/sound/oss/swarm_cs4297a.c
index 3edf8d4ac998..471c274c5000 100644
--- a/sound/oss/swarm_cs4297a.c
+++ b/sound/oss/swarm_cs4297a.c
@@ -2505,7 +2505,7 @@ static /*const */ struct file_operations cs4297a_audio_fops = {
2505 .release = cs4297a_release, 2505 .release = cs4297a_release,
2506}; 2506};
2507 2507
2508static void cs4297a_interrupt(int irq, void *dev_id, struct pt_regs *regs) 2508static void cs4297a_interrupt(int irq, void *dev_id)
2509{ 2509{
2510 struct cs4297a_state *s = (struct cs4297a_state *) dev_id; 2510 struct cs4297a_state *s = (struct cs4297a_state *) dev_id;
2511 u32 status; 2511 u32 status;
diff --git a/sound/oss/trident.c b/sound/oss/trident.c
index 147c816a1f22..7a363a178afd 100644
--- a/sound/oss/trident.c
+++ b/sound/oss/trident.c
@@ -1811,7 +1811,7 @@ cyber_address_interrupt(struct trident_card *card)
1811} 1811}
1812 1812
1813static irqreturn_t 1813static irqreturn_t
1814trident_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1814trident_interrupt(int irq, void *dev_id)
1815{ 1815{
1816 struct trident_card *card = (struct trident_card *) dev_id; 1816 struct trident_card *card = (struct trident_card *) dev_id;
1817 u32 event; 1817 u32 event;
diff --git a/sound/oss/uart401.c b/sound/oss/uart401.c
index 8e18b6e25818..a446b826d5fc 100644
--- a/sound/oss/uart401.c
+++ b/sound/oss/uart401.c
@@ -96,7 +96,7 @@ static void uart401_input_loop(uart401_devc * devc)
96 printk(KERN_WARNING "Too much work in interrupt on uart401 (0x%X). UART jabbering ??\n", devc->base); 96 printk(KERN_WARNING "Too much work in interrupt on uart401 (0x%X). UART jabbering ??\n", devc->base);
97} 97}
98 98
99irqreturn_t uart401intr(int irq, void *dev_id, struct pt_regs *dummy) 99irqreturn_t uart401intr(int irq, void *dev_id)
100{ 100{
101 uart401_devc *devc = dev_id; 101 uart401_devc *devc = dev_id;
102 102
diff --git a/sound/oss/uart6850.c b/sound/oss/uart6850.c
index 501d3e654a67..f3f914aa92ee 100644
--- a/sound/oss/uart6850.c
+++ b/sound/oss/uart6850.c
@@ -104,7 +104,7 @@ static void uart6850_input_loop(void)
104 } 104 }
105} 105}
106 106
107static irqreturn_t m6850intr(int irq, void *dev_id, struct pt_regs *dummy) 107static irqreturn_t m6850intr(int irq, void *dev_id)
108{ 108{
109 if (input_avail()) 109 if (input_avail())
110 uart6850_input_loop(); 110 uart6850_input_loop();
diff --git a/sound/oss/via82cxxx_audio.c b/sound/oss/via82cxxx_audio.c
index 2fec42fc3482..17837d4b5ed3 100644
--- a/sound/oss/via82cxxx_audio.c
+++ b/sound/oss/via82cxxx_audio.c
@@ -1912,7 +1912,7 @@ static void via_intr_channel (struct via_info *card, struct via_channel *chan)
1912} 1912}
1913 1913
1914 1914
1915static irqreturn_t via_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1915static irqreturn_t via_interrupt(int irq, void *dev_id)
1916{ 1916{
1917 struct via_info *card = dev_id; 1917 struct via_info *card = dev_id;
1918 u32 status32; 1918 u32 status32;
@@ -1927,7 +1927,7 @@ static irqreturn_t via_interrupt(int irq, void *dev_id, struct pt_regs *regs)
1927 { 1927 {
1928#ifdef CONFIG_MIDI_VIA82CXXX 1928#ifdef CONFIG_MIDI_VIA82CXXX
1929 if (card->midi_devc) 1929 if (card->midi_devc)
1930 uart401intr(irq, card->midi_devc, regs); 1930 uart401intr(irq, card->midi_devc);
1931#endif 1931#endif
1932 return IRQ_HANDLED; 1932 return IRQ_HANDLED;
1933 } 1933 }
@@ -1950,7 +1950,7 @@ static irqreturn_t via_interrupt(int irq, void *dev_id, struct pt_regs *regs)
1950 return IRQ_HANDLED; 1950 return IRQ_HANDLED;
1951} 1951}
1952 1952
1953static irqreturn_t via_new_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1953static irqreturn_t via_new_interrupt(int irq, void *dev_id)
1954{ 1954{
1955 struct via_info *card = dev_id; 1955 struct via_info *card = dev_id;
1956 u32 status32; 1956 u32 status32;
diff --git a/sound/oss/vidc.h b/sound/oss/vidc.h
index d5b8064dc565..0d1424751ecd 100644
--- a/sound/oss/vidc.h
+++ b/sound/oss/vidc.h
@@ -33,7 +33,7 @@ extern unsigned long vidc_fill_2x16_s(unsigned long ibuf, unsigned long iend,
33 * DMA Interrupt handler 33 * DMA Interrupt handler
34 */ 34 */
35 35
36extern irqreturn_t vidc_sound_dma_irq(int irqnr, void *ref, struct pt_regs *regs); 36extern irqreturn_t vidc_sound_dma_irq(int irqnr, void *ref);
37 37
38/* 38/*
39 * Filler routine pointer 39 * Filler routine pointer
diff --git a/sound/oss/vwsnd.c b/sound/oss/vwsnd.c
index 5f140c7586b3..0cd4d6ec9862 100644
--- a/sound/oss/vwsnd.c
+++ b/sound/oss/vwsnd.c
@@ -2233,12 +2233,12 @@ static void vwsnd_audio_write_intr(vwsnd_dev_t *devc, unsigned int status)
2233 pcm_output(devc, underflown, 0); 2233 pcm_output(devc, underflown, 0);
2234} 2234}
2235 2235
2236static irqreturn_t vwsnd_audio_intr(int irq, void *dev_id, struct pt_regs *regs) 2236static irqreturn_t vwsnd_audio_intr(int irq, void *dev_id)
2237{ 2237{
2238 vwsnd_dev_t *devc = (vwsnd_dev_t *) dev_id; 2238 vwsnd_dev_t *devc = (vwsnd_dev_t *) dev_id;
2239 unsigned int status; 2239 unsigned int status;
2240 2240
2241 DBGEV("(irq=%d, dev_id=0x%p, regs=0x%p)\n", irq, dev_id, regs); 2241 DBGEV("(irq=%d, dev_id=0x%p)\n", irq, dev_id);
2242 2242
2243 status = li_get_clear_intr_status(&devc->lith); 2243 status = li_get_clear_intr_status(&devc->lith);
2244 vwsnd_audio_read_intr(devc, status); 2244 vwsnd_audio_read_intr(devc, status);
diff --git a/sound/oss/waveartist.c b/sound/oss/waveartist.c
index 59a2f28eb5a5..c5bf363d32c2 100644
--- a/sound/oss/waveartist.c
+++ b/sound/oss/waveartist.c
@@ -833,7 +833,7 @@ static struct audio_driver waveartist_audio_driver = {
833 833
834 834
835static irqreturn_t 835static irqreturn_t
836waveartist_intr(int irq, void *dev_id, struct pt_regs *regs) 836waveartist_intr(int irq, void *dev_id)
837{ 837{
838 wavnc_info *devc = (wavnc_info *)dev_id; 838 wavnc_info *devc = (wavnc_info *)dev_id;
839 int irqstatus, status; 839 int irqstatus, status;
diff --git a/sound/parisc/harmony.c b/sound/parisc/harmony.c
index ce73f3eae78c..cf603337b321 100644
--- a/sound/parisc/harmony.c
+++ b/sound/parisc/harmony.c
@@ -193,7 +193,7 @@ harmony_set_control(struct snd_harmony *h)
193} 193}
194 194
195static irqreturn_t 195static irqreturn_t
196snd_harmony_interrupt(int irq, void *dev, struct pt_regs *regs) 196snd_harmony_interrupt(int irq, void *dev)
197{ 197{
198 u32 dstatus; 198 u32 dstatus;
199 struct snd_harmony *h = dev; 199 struct snd_harmony *h = dev;
diff --git a/sound/pci/ad1889.c b/sound/pci/ad1889.c
index 0786d0edaca5..cbf8331c3d33 100644
--- a/sound/pci/ad1889.c
+++ b/sound/pci/ad1889.c
@@ -596,9 +596,7 @@ static struct snd_pcm_ops snd_ad1889_capture_ops = {
596}; 596};
597 597
598static irqreturn_t 598static irqreturn_t
599snd_ad1889_interrupt(int irq, 599snd_ad1889_interrupt(int irq, void *dev_id)
600 void *dev_id,
601 struct pt_regs *regs)
602{ 600{
603 unsigned long st; 601 unsigned long st;
604 struct snd_ad1889 *chip = dev_id; 602 struct snd_ad1889 *chip = dev_id;
diff --git a/sound/pci/ali5451/ali5451.c b/sound/pci/ali5451/ali5451.c
index 74668398eac5..13a8cefa7749 100644
--- a/sound/pci/ali5451/ali5451.c
+++ b/sound/pci/ali5451/ali5451.c
@@ -1047,9 +1047,7 @@ static void snd_ali_interrupt(struct snd_ali * codec)
1047} 1047}
1048 1048
1049 1049
1050static irqreturn_t snd_ali_card_interrupt(int irq, 1050static irqreturn_t snd_ali_card_interrupt(int irq, void *dev_id)
1051 void *dev_id,
1052 struct pt_regs *regs)
1053{ 1051{
1054 struct snd_ali *codec = dev_id; 1052 struct snd_ali *codec = dev_id;
1055 1053
diff --git a/sound/pci/als300.c b/sound/pci/als300.c
index 96cfb8ae5055..9b16c299f0a9 100644
--- a/sound/pci/als300.c
+++ b/sound/pci/als300.c
@@ -204,8 +204,7 @@ static int snd_als300_dev_free(struct snd_device *device)
204 return snd_als300_free(chip); 204 return snd_als300_free(chip);
205} 205}
206 206
207static irqreturn_t snd_als300_interrupt(int irq, void *dev_id, 207static irqreturn_t snd_als300_interrupt(int irq, void *dev_id)
208 struct pt_regs *regs)
209{ 208{
210 u8 status; 209 u8 status;
211 struct snd_als300 *chip = dev_id; 210 struct snd_als300 *chip = dev_id;
@@ -236,8 +235,7 @@ static irqreturn_t snd_als300_interrupt(int irq, void *dev_id,
236 return IRQ_HANDLED; 235 return IRQ_HANDLED;
237} 236}
238 237
239static irqreturn_t snd_als300plus_interrupt(int irq, void *dev_id, 238static irqreturn_t snd_als300plus_interrupt(int irq, void *dev_id)
240 struct pt_regs *regs)
241{ 239{
242 u8 general, mpu, dram; 240 u8 general, mpu, dram;
243 struct snd_als300 *chip = dev_id; 241 struct snd_als300 *chip = dev_id;
diff --git a/sound/pci/als4000.c b/sound/pci/als4000.c
index 9e596f750cbd..15fc3929b5f7 100644
--- a/sound/pci/als4000.c
+++ b/sound/pci/als4000.c
@@ -385,7 +385,7 @@ static snd_pcm_uframes_t snd_als4000_playback_pointer(struct snd_pcm_substream *
385 * SB IRQ status. 385 * SB IRQ status.
386 * And do we *really* need the lock here for *reading* SB_DSP4_IRQSTATUS?? 386 * And do we *really* need the lock here for *reading* SB_DSP4_IRQSTATUS??
387 * */ 387 * */
388static irqreturn_t snd_als4000_interrupt(int irq, void *dev_id, struct pt_regs *regs) 388static irqreturn_t snd_als4000_interrupt(int irq, void *dev_id)
389{ 389{
390 struct snd_sb *chip = dev_id; 390 struct snd_sb *chip = dev_id;
391 unsigned gcr_status; 391 unsigned gcr_status;
@@ -399,7 +399,7 @@ static irqreturn_t snd_als4000_interrupt(int irq, void *dev_id, struct pt_regs *
399 if ((gcr_status & 0x40) && (chip->capture_substream)) /* capturing */ 399 if ((gcr_status & 0x40) && (chip->capture_substream)) /* capturing */
400 snd_pcm_period_elapsed(chip->capture_substream); 400 snd_pcm_period_elapsed(chip->capture_substream);
401 if ((gcr_status & 0x10) && (chip->rmidi)) /* MPU401 interrupt */ 401 if ((gcr_status & 0x10) && (chip->rmidi)) /* MPU401 interrupt */
402 snd_mpu401_uart_interrupt(irq, chip->rmidi->private_data, regs); 402 snd_mpu401_uart_interrupt(irq, chip->rmidi->private_data);
403 /* release the gcr */ 403 /* release the gcr */
404 outb(gcr_status, chip->alt_port + 0xe); 404 outb(gcr_status, chip->alt_port + 0xe);
405 405
diff --git a/sound/pci/atiixp.c b/sound/pci/atiixp.c
index 347e25ff073d..3e8fc5a0006a 100644
--- a/sound/pci/atiixp.c
+++ b/sound/pci/atiixp.c
@@ -1300,7 +1300,7 @@ static int __devinit snd_atiixp_pcm_new(struct atiixp *chip)
1300/* 1300/*
1301 * interrupt handler 1301 * interrupt handler
1302 */ 1302 */
1303static irqreturn_t snd_atiixp_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1303static irqreturn_t snd_atiixp_interrupt(int irq, void *dev_id)
1304{ 1304{
1305 struct atiixp *chip = dev_id; 1305 struct atiixp *chip = dev_id;
1306 unsigned int status; 1306 unsigned int status;
diff --git a/sound/pci/atiixp_modem.c b/sound/pci/atiixp_modem.c
index a89d67c4598b..c5dda1bf3d46 100644
--- a/sound/pci/atiixp_modem.c
+++ b/sound/pci/atiixp_modem.c
@@ -1017,7 +1017,7 @@ static int __devinit snd_atiixp_pcm_new(struct atiixp_modem *chip)
1017/* 1017/*
1018 * interrupt handler 1018 * interrupt handler
1019 */ 1019 */
1020static irqreturn_t snd_atiixp_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1020static irqreturn_t snd_atiixp_interrupt(int irq, void *dev_id)
1021{ 1021{
1022 struct atiixp_modem *chip = dev_id; 1022 struct atiixp_modem *chip = dev_id;
1023 unsigned int status; 1023 unsigned int status;
diff --git a/sound/pci/au88x0/au88x0.h b/sound/pci/au88x0/au88x0.h
index b1cfc3c79d07..5ccf0b1ec670 100644
--- a/sound/pci/au88x0/au88x0.h
+++ b/sound/pci/au88x0/au88x0.h
@@ -236,8 +236,7 @@ static void vortex_spdif_init(vortex_t * vortex, int spdif_sr, int spdif_mode);
236static int vortex_core_init(vortex_t * card); 236static int vortex_core_init(vortex_t * card);
237static int vortex_core_shutdown(vortex_t * card); 237static int vortex_core_shutdown(vortex_t * card);
238static void vortex_enable_int(vortex_t * card); 238static void vortex_enable_int(vortex_t * card);
239static irqreturn_t vortex_interrupt(int irq, void *dev_id, 239static irqreturn_t vortex_interrupt(int irq, void *dev_id);
240 struct pt_regs *regs);
241static int vortex_alsafmt_aspfmt(int alsafmt); 240static int vortex_alsafmt_aspfmt(int alsafmt);
242 241
243/* Connection stuff. */ 242/* Connection stuff. */
diff --git a/sound/pci/au88x0/au88x0_core.c b/sound/pci/au88x0/au88x0_core.c
index 5299cce583d3..4a336eaae9d2 100644
--- a/sound/pci/au88x0/au88x0_core.c
+++ b/sound/pci/au88x0/au88x0_core.c
@@ -2385,7 +2385,7 @@ static void vortex_disable_int(vortex_t * card)
2385 hwread(card->mmio, VORTEX_CTRL) & ~CTRL_IRQ_ENABLE); 2385 hwread(card->mmio, VORTEX_CTRL) & ~CTRL_IRQ_ENABLE);
2386} 2386}
2387 2387
2388static irqreturn_t vortex_interrupt(int irq, void *dev_id, struct pt_regs *regs) 2388static irqreturn_t vortex_interrupt(int irq, void *dev_id)
2389{ 2389{
2390 vortex_t *vortex = dev_id; 2390 vortex_t *vortex = dev_id;
2391 int i, handled; 2391 int i, handled;
@@ -2462,7 +2462,7 @@ static irqreturn_t vortex_interrupt(int irq, void *dev_id, struct pt_regs *regs)
2462 } 2462 }
2463 if (source & IRQ_MIDI) { 2463 if (source & IRQ_MIDI) {
2464 snd_mpu401_uart_interrupt(vortex->irq, 2464 snd_mpu401_uart_interrupt(vortex->irq,
2465 vortex->rmidi->private_data, regs); 2465 vortex->rmidi->private_data);
2466 handled = 1; 2466 handled = 1;
2467 } 2467 }
2468 2468
diff --git a/sound/pci/azt3328.c b/sound/pci/azt3328.c
index bac8e9cfd921..692f203d65d8 100644
--- a/sound/pci/azt3328.c
+++ b/sound/pci/azt3328.c
@@ -1191,7 +1191,7 @@ snd_azf3328_capture_pointer(struct snd_pcm_substream *substream)
1191} 1191}
1192 1192
1193static irqreturn_t 1193static irqreturn_t
1194snd_azf3328_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1194snd_azf3328_interrupt(int irq, void *dev_id)
1195{ 1195{
1196 struct snd_azf3328 *chip = dev_id; 1196 struct snd_azf3328 *chip = dev_id;
1197 u8 status, which; 1197 u8 status, which;
@@ -1256,7 +1256,7 @@ snd_azf3328_interrupt(int irq, void *dev_id, struct pt_regs *regs)
1256 /* MPU401 has less critical IRQ requirements 1256 /* MPU401 has less critical IRQ requirements
1257 * than timer and playback/recording, right? */ 1257 * than timer and playback/recording, right? */
1258 if (status & IRQ_MPU401) { 1258 if (status & IRQ_MPU401) {
1259 snd_mpu401_uart_interrupt(irq, chip->rmidi->private_data, regs); 1259 snd_mpu401_uart_interrupt(irq, chip->rmidi->private_data);
1260 1260
1261 /* hmm, do we have to ack the IRQ here somehow? 1261 /* hmm, do we have to ack the IRQ here somehow?
1262 * If so, then I don't know how... */ 1262 * If so, then I don't know how... */
diff --git a/sound/pci/bt87x.c b/sound/pci/bt87x.c
index 97a280a246cb..d33a37086df9 100644
--- a/sound/pci/bt87x.c
+++ b/sound/pci/bt87x.c
@@ -269,7 +269,7 @@ static void snd_bt87x_pci_error(struct snd_bt87x *chip, unsigned int status)
269 } 269 }
270} 270}
271 271
272static irqreturn_t snd_bt87x_interrupt(int irq, void *dev_id, struct pt_regs *regs) 272static irqreturn_t snd_bt87x_interrupt(int irq, void *dev_id)
273{ 273{
274 struct snd_bt87x *chip = dev_id; 274 struct snd_bt87x *chip = dev_id;
275 unsigned int status, irq_status; 275 unsigned int status, irq_status;
diff --git a/sound/pci/ca0106/ca0106_main.c b/sound/pci/ca0106/ca0106_main.c
index 12bbbb6afd2d..6fa4a302f7de 100644
--- a/sound/pci/ca0106/ca0106_main.c
+++ b/sound/pci/ca0106/ca0106_main.c
@@ -1058,8 +1058,7 @@ static int snd_ca0106_dev_free(struct snd_device *device)
1058 return snd_ca0106_free(chip); 1058 return snd_ca0106_free(chip);
1059} 1059}
1060 1060
1061static irqreturn_t snd_ca0106_interrupt(int irq, void *dev_id, 1061static irqreturn_t snd_ca0106_interrupt(int irq, void *dev_id)
1062 struct pt_regs *regs)
1063{ 1062{
1064 unsigned int status; 1063 unsigned int status;
1065 1064
diff --git a/sound/pci/cmipci.c b/sound/pci/cmipci.c
index 876b64464b6f..1f7e71083069 100644
--- a/sound/pci/cmipci.c
+++ b/sound/pci/cmipci.c
@@ -1294,7 +1294,7 @@ static int snd_cmipci_capture_spdif_hw_free(struct snd_pcm_substream *subs)
1294/* 1294/*
1295 * interrupt handler 1295 * interrupt handler
1296 */ 1296 */
1297static irqreturn_t snd_cmipci_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1297static irqreturn_t snd_cmipci_interrupt(int irq, void *dev_id)
1298{ 1298{
1299 struct cmipci *cm = dev_id; 1299 struct cmipci *cm = dev_id;
1300 unsigned int status, mask = 0; 1300 unsigned int status, mask = 0;
@@ -1315,7 +1315,7 @@ static irqreturn_t snd_cmipci_interrupt(int irq, void *dev_id, struct pt_regs *r
1315 spin_unlock(&cm->reg_lock); 1315 spin_unlock(&cm->reg_lock);
1316 1316
1317 if (cm->rmidi && (status & CM_UARTINT)) 1317 if (cm->rmidi && (status & CM_UARTINT))
1318 snd_mpu401_uart_interrupt(irq, cm->rmidi->private_data, regs); 1318 snd_mpu401_uart_interrupt(irq, cm->rmidi->private_data);
1319 1319
1320 if (cm->pcm) { 1320 if (cm->pcm) {
1321 if ((status & CM_CHINT0) && cm->channel[0].running) 1321 if ((status & CM_CHINT0) && cm->channel[0].running)
diff --git a/sound/pci/cs4281.c b/sound/pci/cs4281.c
index 1990430a21c1..d54924e60bb1 100644
--- a/sound/pci/cs4281.c
+++ b/sound/pci/cs4281.c
@@ -493,7 +493,7 @@ struct cs4281 {
493 493
494}; 494};
495 495
496static irqreturn_t snd_cs4281_interrupt(int irq, void *dev_id, struct pt_regs *regs); 496static irqreturn_t snd_cs4281_interrupt(int irq, void *dev_id);
497 497
498static struct pci_device_id snd_cs4281_ids[] = { 498static struct pci_device_id snd_cs4281_ids[] = {
499 { 0x1013, 0x6005, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0, }, /* CS4281 */ 499 { 0x1013, 0x6005, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0, }, /* CS4281 */
@@ -1814,7 +1814,7 @@ static int __devinit snd_cs4281_midi(struct cs4281 * chip, int device,
1814 * Interrupt handler 1814 * Interrupt handler
1815 */ 1815 */
1816 1816
1817static irqreturn_t snd_cs4281_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1817static irqreturn_t snd_cs4281_interrupt(int irq, void *dev_id)
1818{ 1818{
1819 struct cs4281 *chip = dev_id; 1819 struct cs4281 *chip = dev_id;
1820 unsigned int status, dma, val; 1820 unsigned int status, dma, val;
diff --git a/sound/pci/cs46xx/cs46xx_lib.c b/sound/pci/cs46xx/cs46xx_lib.c
index 4851847180d2..16d4ebf2a33f 100644
--- a/sound/pci/cs46xx/cs46xx_lib.c
+++ b/sound/pci/cs46xx/cs46xx_lib.c
@@ -1149,7 +1149,7 @@ static int snd_cs46xx_capture_prepare(struct snd_pcm_substream *substream)
1149 return 0; 1149 return 0;
1150} 1150}
1151 1151
1152static irqreturn_t snd_cs46xx_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1152static irqreturn_t snd_cs46xx_interrupt(int irq, void *dev_id)
1153{ 1153{
1154 struct snd_cs46xx *chip = dev_id; 1154 struct snd_cs46xx *chip = dev_id;
1155 u32 status1; 1155 u32 status1;
diff --git a/sound/pci/cs5535audio/cs5535audio.c b/sound/pci/cs5535audio/cs5535audio.c
index 64c7826e8b8c..2441238f2004 100644
--- a/sound/pci/cs5535audio/cs5535audio.c
+++ b/sound/pci/cs5535audio/cs5535audio.c
@@ -203,8 +203,7 @@ static void process_bm1_irq(struct cs5535audio *cs5535au)
203 } 203 }
204} 204}
205 205
206static irqreturn_t snd_cs5535audio_interrupt(int irq, void *dev_id, 206static irqreturn_t snd_cs5535audio_interrupt(int irq, void *dev_id)
207 struct pt_regs *regs)
208{ 207{
209 u16 acc_irq_stat; 208 u16 acc_irq_stat;
210 u8 bm_stat; 209 u8 bm_stat;
diff --git a/sound/pci/echoaudio/echoaudio.c b/sound/pci/echoaudio/echoaudio.c
index c3dafa29054f..e5e88fe54de0 100644
--- a/sound/pci/echoaudio/echoaudio.c
+++ b/sound/pci/echoaudio/echoaudio.c
@@ -1818,8 +1818,7 @@ static struct snd_kcontrol_new snd_echo_channels_info __devinitdata = {
1818 IRQ Handler 1818 IRQ Handler
1819******************************************************************************/ 1819******************************************************************************/
1820 1820
1821static irqreturn_t snd_echo_interrupt(int irq, void *dev_id, 1821static irqreturn_t snd_echo_interrupt(int irq, void *dev_id)
1822 struct pt_regs *regs)
1823{ 1822{
1824 struct echoaudio *chip = dev_id; 1823 struct echoaudio *chip = dev_id;
1825 struct snd_pcm_substream *substream; 1824 struct snd_pcm_substream *substream;
diff --git a/sound/pci/emu10k1/emu10k1x.c b/sound/pci/emu10k1/emu10k1x.c
index da1610a571b8..c46905a11175 100644
--- a/sound/pci/emu10k1/emu10k1x.c
+++ b/sound/pci/emu10k1/emu10k1x.c
@@ -780,8 +780,7 @@ static int snd_emu10k1x_dev_free(struct snd_device *device)
780 return snd_emu10k1x_free(chip); 780 return snd_emu10k1x_free(chip);
781} 781}
782 782
783static irqreturn_t snd_emu10k1x_interrupt(int irq, void *dev_id, 783static irqreturn_t snd_emu10k1x_interrupt(int irq, void *dev_id)
784 struct pt_regs *regs)
785{ 784{
786 unsigned int status; 785 unsigned int status;
787 786
diff --git a/sound/pci/emu10k1/irq.c b/sound/pci/emu10k1/irq.c
index 1076af4c3669..4f18f7e8bcfb 100644
--- a/sound/pci/emu10k1/irq.c
+++ b/sound/pci/emu10k1/irq.c
@@ -30,7 +30,7 @@
30#include <sound/core.h> 30#include <sound/core.h>
31#include <sound/emu10k1.h> 31#include <sound/emu10k1.h>
32 32
33irqreturn_t snd_emu10k1_interrupt(int irq, void *dev_id, struct pt_regs *regs) 33irqreturn_t snd_emu10k1_interrupt(int irq, void *dev_id)
34{ 34{
35 struct snd_emu10k1 *emu = dev_id; 35 struct snd_emu10k1 *emu = dev_id;
36 unsigned int status, status2, orig_status, orig_status2; 36 unsigned int status, status2, orig_status, orig_status2;
diff --git a/sound/pci/ens1370.c b/sound/pci/ens1370.c
index a8a601fc781f..8cb4fb2412db 100644
--- a/sound/pci/ens1370.c
+++ b/sound/pci/ens1370.c
@@ -444,7 +444,7 @@ struct ensoniq {
444#endif 444#endif
445}; 445};
446 446
447static irqreturn_t snd_audiopci_interrupt(int irq, void *dev_id, struct pt_regs *regs); 447static irqreturn_t snd_audiopci_interrupt(int irq, void *dev_id);
448 448
449static struct pci_device_id snd_audiopci_ids[] = { 449static struct pci_device_id snd_audiopci_ids[] = {
450#ifdef CHIP1370 450#ifdef CHIP1370
@@ -2404,7 +2404,7 @@ static int __devinit snd_ensoniq_midi(struct ensoniq * ensoniq, int device,
2404 * Interrupt handler 2404 * Interrupt handler
2405 */ 2405 */
2406 2406
2407static irqreturn_t snd_audiopci_interrupt(int irq, void *dev_id, struct pt_regs *regs) 2407static irqreturn_t snd_audiopci_interrupt(int irq, void *dev_id)
2408{ 2408{
2409 struct ensoniq *ensoniq = dev_id; 2409 struct ensoniq *ensoniq = dev_id;
2410 unsigned int status, sctrl; 2410 unsigned int status, sctrl;
diff --git a/sound/pci/es1938.c b/sound/pci/es1938.c
index 3ce5a4e7e31f..2da988f78ba7 100644
--- a/sound/pci/es1938.c
+++ b/sound/pci/es1938.c
@@ -241,7 +241,7 @@ struct es1938 {
241#endif 241#endif
242}; 242};
243 243
244static irqreturn_t snd_es1938_interrupt(int irq, void *dev_id, struct pt_regs *regs); 244static irqreturn_t snd_es1938_interrupt(int irq, void *dev_id);
245 245
246static struct pci_device_id snd_es1938_ids[] = { 246static struct pci_device_id snd_es1938_ids[] = {
247 { 0x125d, 0x1969, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0, }, /* Solo-1 */ 247 { 0x125d, 0x1969, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0, }, /* Solo-1 */
@@ -1642,7 +1642,7 @@ static int __devinit snd_es1938_create(struct snd_card *card,
1642/* -------------------------------------------------------------------- 1642/* --------------------------------------------------------------------
1643 * Interrupt handler 1643 * Interrupt handler
1644 * -------------------------------------------------------------------- */ 1644 * -------------------------------------------------------------------- */
1645static irqreturn_t snd_es1938_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1645static irqreturn_t snd_es1938_interrupt(int irq, void *dev_id)
1646{ 1646{
1647 struct es1938 *chip = dev_id; 1647 struct es1938 *chip = dev_id;
1648 unsigned char status, audiostatus; 1648 unsigned char status, audiostatus;
@@ -1714,7 +1714,7 @@ static irqreturn_t snd_es1938_interrupt(int irq, void *dev_id, struct pt_regs *r
1714 // snd_es1938_mixer_bits(chip, ESSSB_IREG_MPU401CONTROL, 0x40, 0); /* ack? */ 1714 // snd_es1938_mixer_bits(chip, ESSSB_IREG_MPU401CONTROL, 0x40, 0); /* ack? */
1715 if (chip->rmidi) { 1715 if (chip->rmidi) {
1716 handled = 1; 1716 handled = 1;
1717 snd_mpu401_uart_interrupt(irq, chip->rmidi->private_data, regs); 1717 snd_mpu401_uart_interrupt(irq, chip->rmidi->private_data);
1718 } 1718 }
1719 } 1719 }
1720 return IRQ_RETVAL(handled); 1720 return IRQ_RETVAL(handled);
diff --git a/sound/pci/es1968.c b/sound/pci/es1968.c
index f3c40385c87d..b9d723c7e1db 100644
--- a/sound/pci/es1968.c
+++ b/sound/pci/es1968.c
@@ -590,7 +590,7 @@ struct es1968 {
590#endif 590#endif
591}; 591};
592 592
593static irqreturn_t snd_es1968_interrupt(int irq, void *dev_id, struct pt_regs *regs); 593static irqreturn_t snd_es1968_interrupt(int irq, void *dev_id);
594 594
595static struct pci_device_id snd_es1968_ids[] = { 595static struct pci_device_id snd_es1968_ids[] = {
596 /* Maestro 1 */ 596 /* Maestro 1 */
@@ -1962,7 +1962,7 @@ static void es1968_update_hw_volume(unsigned long private_data)
1962/* 1962/*
1963 * interrupt handler 1963 * interrupt handler
1964 */ 1964 */
1965static irqreturn_t snd_es1968_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1965static irqreturn_t snd_es1968_interrupt(int irq, void *dev_id)
1966{ 1966{
1967 struct es1968 *chip = dev_id; 1967 struct es1968 *chip = dev_id;
1968 u32 event; 1968 u32 event;
@@ -1979,7 +1979,7 @@ static irqreturn_t snd_es1968_interrupt(int irq, void *dev_id, struct pt_regs *r
1979 outb(0xFF, chip->io_port + 0x1A); 1979 outb(0xFF, chip->io_port + 0x1A);
1980 1980
1981 if ((event & ESM_MPU401_IRQ) && chip->rmidi) { 1981 if ((event & ESM_MPU401_IRQ) && chip->rmidi) {
1982 snd_mpu401_uart_interrupt(irq, chip->rmidi->private_data, regs); 1982 snd_mpu401_uart_interrupt(irq, chip->rmidi->private_data);
1983 } 1983 }
1984 1984
1985 if (event & ESM_SOUND_IRQ) { 1985 if (event & ESM_SOUND_IRQ) {
diff --git a/sound/pci/fm801.c b/sound/pci/fm801.c
index bdfda1997d5b..3ec7d7ee04dd 100644
--- a/sound/pci/fm801.c
+++ b/sound/pci/fm801.c
@@ -520,7 +520,7 @@ static snd_pcm_uframes_t snd_fm801_capture_pointer(struct snd_pcm_substream *sub
520 return bytes_to_frames(substream->runtime, ptr); 520 return bytes_to_frames(substream->runtime, ptr);
521} 521}
522 522
523static irqreturn_t snd_fm801_interrupt(int irq, void *dev_id, struct pt_regs *regs) 523static irqreturn_t snd_fm801_interrupt(int irq, void *dev_id)
524{ 524{
525 struct fm801 *chip = dev_id; 525 struct fm801 *chip = dev_id;
526 unsigned short status; 526 unsigned short status;
@@ -561,7 +561,7 @@ static irqreturn_t snd_fm801_interrupt(int irq, void *dev_id, struct pt_regs *re
561 snd_pcm_period_elapsed(chip->capture_substream); 561 snd_pcm_period_elapsed(chip->capture_substream);
562 } 562 }
563 if (chip->rmidi && (status & FM801_IRQ_MPU)) 563 if (chip->rmidi && (status & FM801_IRQ_MPU))
564 snd_mpu401_uart_interrupt(irq, chip->rmidi->private_data, regs); 564 snd_mpu401_uart_interrupt(irq, chip->rmidi->private_data);
565 if (status & FM801_IRQ_VOLUME) 565 if (status & FM801_IRQ_VOLUME)
566 ;/* TODO */ 566 ;/* TODO */
567 567
diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
index e9d4cb4d07e1..a76a778d0a1f 100644
--- a/sound/pci/hda/hda_intel.c
+++ b/sound/pci/hda/hda_intel.c
@@ -811,7 +811,7 @@ static void azx_init_chip(struct azx *chip)
811/* 811/*
812 * interrupt handler 812 * interrupt handler
813 */ 813 */
814static irqreturn_t azx_interrupt(int irq, void *dev_id, struct pt_regs *regs) 814static irqreturn_t azx_interrupt(int irq, void *dev_id)
815{ 815{
816 struct azx *chip = dev_id; 816 struct azx *chip = dev_id;
817 struct azx_dev *azx_dev; 817 struct azx_dev *azx_dev;
diff --git a/sound/pci/ice1712/ice1712.c b/sound/pci/ice1712/ice1712.c
index dc69392eafa3..8a576b78bee5 100644
--- a/sound/pci/ice1712/ice1712.c
+++ b/sound/pci/ice1712/ice1712.c
@@ -420,7 +420,7 @@ static void snd_ice1712_set_input_clock_source(struct snd_ice1712 *ice, int spdi
420 * Interrupt handler 420 * Interrupt handler
421 */ 421 */
422 422
423static irqreturn_t snd_ice1712_interrupt(int irq, void *dev_id, struct pt_regs *regs) 423static irqreturn_t snd_ice1712_interrupt(int irq, void *dev_id)
424{ 424{
425 struct snd_ice1712 *ice = dev_id; 425 struct snd_ice1712 *ice = dev_id;
426 unsigned char status; 426 unsigned char status;
@@ -433,7 +433,7 @@ static irqreturn_t snd_ice1712_interrupt(int irq, void *dev_id, struct pt_regs *
433 handled = 1; 433 handled = 1;
434 if (status & ICE1712_IRQ_MPU1) { 434 if (status & ICE1712_IRQ_MPU1) {
435 if (ice->rmidi[0]) 435 if (ice->rmidi[0])
436 snd_mpu401_uart_interrupt(irq, ice->rmidi[0]->private_data, regs); 436 snd_mpu401_uart_interrupt(irq, ice->rmidi[0]->private_data);
437 outb(ICE1712_IRQ_MPU1, ICEREG(ice, IRQSTAT)); 437 outb(ICE1712_IRQ_MPU1, ICEREG(ice, IRQSTAT));
438 status &= ~ICE1712_IRQ_MPU1; 438 status &= ~ICE1712_IRQ_MPU1;
439 } 439 }
@@ -441,7 +441,7 @@ static irqreturn_t snd_ice1712_interrupt(int irq, void *dev_id, struct pt_regs *
441 outb(ICE1712_IRQ_TIMER, ICEREG(ice, IRQSTAT)); 441 outb(ICE1712_IRQ_TIMER, ICEREG(ice, IRQSTAT));
442 if (status & ICE1712_IRQ_MPU2) { 442 if (status & ICE1712_IRQ_MPU2) {
443 if (ice->rmidi[1]) 443 if (ice->rmidi[1])
444 snd_mpu401_uart_interrupt(irq, ice->rmidi[1]->private_data, regs); 444 snd_mpu401_uart_interrupt(irq, ice->rmidi[1]->private_data);
445 outb(ICE1712_IRQ_MPU2, ICEREG(ice, IRQSTAT)); 445 outb(ICE1712_IRQ_MPU2, ICEREG(ice, IRQSTAT));
446 status &= ~ICE1712_IRQ_MPU2; 446 status &= ~ICE1712_IRQ_MPU2;
447 } 447 }
diff --git a/sound/pci/ice1712/ice1724.c b/sound/pci/ice1712/ice1724.c
index 71d6aedc0749..e9cbfdf37059 100644
--- a/sound/pci/ice1712/ice1724.c
+++ b/sound/pci/ice1712/ice1724.c
@@ -218,7 +218,7 @@ static unsigned int snd_vt1724_get_gpio_data(struct snd_ice1712 *ice)
218 * Interrupt handler 218 * Interrupt handler
219 */ 219 */
220 220
221static irqreturn_t snd_vt1724_interrupt(int irq, void *dev_id, struct pt_regs *regs) 221static irqreturn_t snd_vt1724_interrupt(int irq, void *dev_id)
222{ 222{
223 struct snd_ice1712 *ice = dev_id; 223 struct snd_ice1712 *ice = dev_id;
224 unsigned char status; 224 unsigned char status;
@@ -236,7 +236,7 @@ static irqreturn_t snd_vt1724_interrupt(int irq, void *dev_id, struct pt_regs *r
236 */ 236 */
237 if ((status & VT1724_IRQ_MPU_RX)||(status & VT1724_IRQ_MPU_TX)) { 237 if ((status & VT1724_IRQ_MPU_RX)||(status & VT1724_IRQ_MPU_TX)) {
238 if (ice->rmidi[0]) 238 if (ice->rmidi[0])
239 snd_mpu401_uart_interrupt(irq, ice->rmidi[0]->private_data, regs); 239 snd_mpu401_uart_interrupt(irq, ice->rmidi[0]->private_data);
240 outb(status & (VT1724_IRQ_MPU_RX|VT1724_IRQ_MPU_TX), ICEREG1724(ice, IRQSTAT)); 240 outb(status & (VT1724_IRQ_MPU_RX|VT1724_IRQ_MPU_TX), ICEREG1724(ice, IRQSTAT));
241 status &= ~(VT1724_IRQ_MPU_RX|VT1724_IRQ_MPU_TX); 241 status &= ~(VT1724_IRQ_MPU_RX|VT1724_IRQ_MPU_TX);
242 } 242 }
diff --git a/sound/pci/intel8x0.c b/sound/pci/intel8x0.c
index 72dbaedcbdf5..f4319b8d4644 100644
--- a/sound/pci/intel8x0.c
+++ b/sound/pci/intel8x0.c
@@ -801,7 +801,7 @@ static inline void snd_intel8x0_update(struct intel8x0 *chip, struct ichdev *ich
801 status & (ICH_FIFOE | ICH_BCIS | ICH_LVBCI)); 801 status & (ICH_FIFOE | ICH_BCIS | ICH_LVBCI));
802} 802}
803 803
804static irqreturn_t snd_intel8x0_interrupt(int irq, void *dev_id, struct pt_regs *regs) 804static irqreturn_t snd_intel8x0_interrupt(int irq, void *dev_id)
805{ 805{
806 struct intel8x0 *chip = dev_id; 806 struct intel8x0 *chip = dev_id;
807 struct ichdev *ichdev; 807 struct ichdev *ichdev;
diff --git a/sound/pci/intel8x0m.c b/sound/pci/intel8x0m.c
index 268e2f7241ea..6703f5cb5569 100644
--- a/sound/pci/intel8x0m.c
+++ b/sound/pci/intel8x0m.c
@@ -511,7 +511,7 @@ static inline void snd_intel8x0_update(struct intel8x0m *chip, struct ichdev *ic
511 iputbyte(chip, port + ichdev->roff_sr, ICH_FIFOE | ICH_BCIS | ICH_LVBCI); 511 iputbyte(chip, port + ichdev->roff_sr, ICH_FIFOE | ICH_BCIS | ICH_LVBCI);
512} 512}
513 513
514static irqreturn_t snd_intel8x0_interrupt(int irq, void *dev_id, struct pt_regs *regs) 514static irqreturn_t snd_intel8x0_interrupt(int irq, void *dev_id)
515{ 515{
516 struct intel8x0m *chip = dev_id; 516 struct intel8x0m *chip = dev_id;
517 struct ichdev *ichdev; 517 struct ichdev *ichdev;
diff --git a/sound/pci/korg1212/korg1212.c b/sound/pci/korg1212/korg1212.c
index cfea51f44784..398aa10a06e8 100644
--- a/sound/pci/korg1212/korg1212.c
+++ b/sound/pci/korg1212/korg1212.c
@@ -1119,7 +1119,7 @@ static void snd_korg1212_OnDSPDownloadComplete(struct snd_korg1212 *korg1212)
1119 snd_korg1212_setCardState(korg1212, K1212_STATE_DSP_COMPLETE); 1119 snd_korg1212_setCardState(korg1212, K1212_STATE_DSP_COMPLETE);
1120} 1120}
1121 1121
1122static irqreturn_t snd_korg1212_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1122static irqreturn_t snd_korg1212_interrupt(int irq, void *dev_id)
1123{ 1123{
1124 u32 doorbellValue; 1124 u32 doorbellValue;
1125 struct snd_korg1212 *korg1212 = dev_id; 1125 struct snd_korg1212 *korg1212 = dev_id;
diff --git a/sound/pci/maestro3.c b/sound/pci/maestro3.c
index 45214b3b81be..05605f474a72 100644
--- a/sound/pci/maestro3.c
+++ b/sound/pci/maestro3.c
@@ -1685,8 +1685,7 @@ static void snd_m3_update_hw_volume(unsigned long private_data)
1685 spin_unlock_irqrestore(&chip->ac97_lock, flags); 1685 spin_unlock_irqrestore(&chip->ac97_lock, flags);
1686} 1686}
1687 1687
1688static irqreturn_t 1688static irqreturn_t snd_m3_interrupt(int irq, void *dev_id)
1689snd_m3_interrupt(int irq, void *dev_id, struct pt_regs *regs)
1690{ 1689{
1691 struct snd_m3 *chip = dev_id; 1690 struct snd_m3 *chip = dev_id;
1692 u8 status; 1691 u8 status;
diff --git a/sound/pci/mixart/mixart_core.c b/sound/pci/mixart/mixart_core.c
index 406ac3a9d42a..d54457317b14 100644
--- a/sound/pci/mixart/mixart_core.c
+++ b/sound/pci/mixart/mixart_core.c
@@ -408,7 +408,7 @@ void snd_mixart_msg_tasklet(unsigned long arg)
408} 408}
409 409
410 410
411irqreturn_t snd_mixart_interrupt(int irq, void *dev_id, struct pt_regs *regs) 411irqreturn_t snd_mixart_interrupt(int irq, void *dev_id)
412{ 412{
413 struct mixart_mgr *mgr = dev_id; 413 struct mixart_mgr *mgr = dev_id;
414 int err; 414 int err;
diff --git a/sound/pci/mixart/mixart_core.h b/sound/pci/mixart/mixart_core.h
index 1fe2bcfcc57c..c919b734756f 100644
--- a/sound/pci/mixart/mixart_core.h
+++ b/sound/pci/mixart/mixart_core.h
@@ -563,7 +563,7 @@ int snd_mixart_send_msg(struct mixart_mgr *mgr, struct mixart_msg *request, int
563int snd_mixart_send_msg_wait_notif(struct mixart_mgr *mgr, struct mixart_msg *request, u32 notif_event); 563int snd_mixart_send_msg_wait_notif(struct mixart_mgr *mgr, struct mixart_msg *request, u32 notif_event);
564int snd_mixart_send_msg_nonblock(struct mixart_mgr *mgr, struct mixart_msg *request); 564int snd_mixart_send_msg_nonblock(struct mixart_mgr *mgr, struct mixart_msg *request);
565 565
566irqreturn_t snd_mixart_interrupt(int irq, void *dev_id, struct pt_regs *regs); 566irqreturn_t snd_mixart_interrupt(int irq, void *dev_id);
567void snd_mixart_msg_tasklet(unsigned long arg); 567void snd_mixart_msg_tasklet(unsigned long arg);
568 568
569void snd_mixart_reset_board(struct mixart_mgr *mgr); 569void snd_mixart_reset_board(struct mixart_mgr *mgr);
diff --git a/sound/pci/nm256/nm256.c b/sound/pci/nm256/nm256.c
index 101eee0aa018..b1bbdb9e3b7b 100644
--- a/sound/pci/nm256/nm256.c
+++ b/sound/pci/nm256/nm256.c
@@ -236,7 +236,7 @@ struct nm256 {
236 236
237 int irq; 237 int irq;
238 int irq_acks; 238 int irq_acks;
239 irqreturn_t (*interrupt)(int, void *, struct pt_regs *); 239 irq_handler_t interrupt;
240 int badintrcount; /* counter to check bogus interrupts */ 240 int badintrcount; /* counter to check bogus interrupts */
241 struct mutex irq_mutex; 241 struct mutex irq_mutex;
242 242
@@ -1004,7 +1004,7 @@ snd_nm256_intr_check(struct nm256 *chip)
1004 */ 1004 */
1005 1005
1006static irqreturn_t 1006static irqreturn_t
1007snd_nm256_interrupt(int irq, void *dev_id, struct pt_regs *dummy) 1007snd_nm256_interrupt(int irq, void *dev_id)
1008{ 1008{
1009 struct nm256 *chip = dev_id; 1009 struct nm256 *chip = dev_id;
1010 u16 status; 1010 u16 status;
@@ -1069,7 +1069,7 @@ snd_nm256_interrupt(int irq, void *dev_id, struct pt_regs *dummy)
1069 */ 1069 */
1070 1070
1071static irqreturn_t 1071static irqreturn_t
1072snd_nm256_interrupt_zx(int irq, void *dev_id, struct pt_regs *dummy) 1072snd_nm256_interrupt_zx(int irq, void *dev_id)
1073{ 1073{
1074 struct nm256 *chip = dev_id; 1074 struct nm256 *chip = dev_id;
1075 u32 status; 1075 u32 status;
diff --git a/sound/pci/pcxhr/pcxhr_core.c b/sound/pci/pcxhr/pcxhr_core.c
index c40f59062684..0ff8dc36fde3 100644
--- a/sound/pci/pcxhr/pcxhr_core.c
+++ b/sound/pci/pcxhr/pcxhr_core.c
@@ -1131,7 +1131,7 @@ static void pcxhr_update_timer_pos(struct pcxhr_mgr *mgr,
1131} 1131}
1132 1132
1133 1133
1134irqreturn_t pcxhr_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1134irqreturn_t pcxhr_interrupt(int irq, void *dev_id)
1135{ 1135{
1136 struct pcxhr_mgr *mgr = dev_id; 1136 struct pcxhr_mgr *mgr = dev_id;
1137 unsigned int reg; 1137 unsigned int reg;
diff --git a/sound/pci/pcxhr/pcxhr_core.h b/sound/pci/pcxhr/pcxhr_core.h
index e7415d6d1826..d9a4ab609875 100644
--- a/sound/pci/pcxhr/pcxhr_core.h
+++ b/sound/pci/pcxhr/pcxhr_core.h
@@ -194,7 +194,7 @@ int pcxhr_write_io_num_reg_cont(struct pcxhr_mgr *mgr, unsigned int mask,
194 194
195 195
196/* interrupt handling */ 196/* interrupt handling */
197irqreturn_t pcxhr_interrupt(int irq, void *dev_id, struct pt_regs *regs); 197irqreturn_t pcxhr_interrupt(int irq, void *dev_id);
198void pcxhr_msg_tasklet(unsigned long arg); 198void pcxhr_msg_tasklet(unsigned long arg);
199 199
200#endif /* __SOUND_PCXHR_CORE_H */ 200#endif /* __SOUND_PCXHR_CORE_H */
diff --git a/sound/pci/riptide/riptide.c b/sound/pci/riptide/riptide.c
index fe210c853442..ec4899147e1d 100644
--- a/sound/pci/riptide/riptide.c
+++ b/sound/pci/riptide/riptide.c
@@ -1736,7 +1736,7 @@ snd_riptide_pcm(struct snd_riptide *chip, int device, struct snd_pcm **rpcm)
1736} 1736}
1737 1737
1738static irqreturn_t 1738static irqreturn_t
1739snd_riptide_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1739snd_riptide_interrupt(int irq, void *dev_id)
1740{ 1740{
1741 struct snd_riptide *chip = dev_id; 1741 struct snd_riptide *chip = dev_id;
1742 struct cmdif *cif = chip->cif; 1742 struct cmdif *cif = chip->cif;
@@ -1751,8 +1751,7 @@ snd_riptide_interrupt(int irq, void *dev_id, struct pt_regs *regs)
1751 if (chip->rmidi && IS_MPUIRQ(cif->hwport)) { 1751 if (chip->rmidi && IS_MPUIRQ(cif->hwport)) {
1752 chip->handled_irqs++; 1752 chip->handled_irqs++;
1753 snd_mpu401_uart_interrupt(irq, 1753 snd_mpu401_uart_interrupt(irq,
1754 chip->rmidi->private_data, 1754 chip->rmidi->private_data);
1755 regs);
1756 } 1755 }
1757 SET_AIACK(cif->hwport); 1756 SET_AIACK(cif->hwport);
1758 } 1757 }
diff --git a/sound/pci/rme32.c b/sound/pci/rme32.c
index 2a71499242fa..dc8d1302e22d 100644
--- a/sound/pci/rme32.c
+++ b/sound/pci/rme32.c
@@ -818,8 +818,7 @@ static void snd_rme32_pcm_stop(struct rme32 * rme32, int to_pause)
818 writel(0, rme32->iobase + RME32_IO_RESET_POS); 818 writel(0, rme32->iobase + RME32_IO_RESET_POS);
819} 819}
820 820
821static irqreturn_t 821static irqreturn_t snd_rme32_interrupt(int irq, void *dev_id)
822snd_rme32_interrupt(int irq, void *dev_id, struct pt_regs *regs)
823{ 822{
824 struct rme32 *rme32 = (struct rme32 *) dev_id; 823 struct rme32 *rme32 = (struct rme32 *) dev_id;
825 824
diff --git a/sound/pci/rme96.c b/sound/pci/rme96.c
index f8de7c997017..106110a89a4c 100644
--- a/sound/pci/rme96.c
+++ b/sound/pci/rme96.c
@@ -1117,8 +1117,7 @@ snd_rme96_capture_stop(struct rme96 *rme96)
1117 1117
1118static irqreturn_t 1118static irqreturn_t
1119snd_rme96_interrupt(int irq, 1119snd_rme96_interrupt(int irq,
1120 void *dev_id, 1120 void *dev_id)
1121 struct pt_regs *regs)
1122{ 1121{
1123 struct rme96 *rme96 = (struct rme96 *)dev_id; 1122 struct rme96 *rme96 = (struct rme96 *)dev_id;
1124 1123
diff --git a/sound/pci/rme9652/hdsp.c b/sound/pci/rme9652/hdsp.c
index d3e07de433b0..694aa057ed49 100644
--- a/sound/pci/rme9652/hdsp.c
+++ b/sound/pci/rme9652/hdsp.c
@@ -3603,7 +3603,7 @@ static void hdsp_midi_tasklet(unsigned long arg)
3603 snd_hdsp_midi_input_read (&hdsp->midi[1]); 3603 snd_hdsp_midi_input_read (&hdsp->midi[1]);
3604} 3604}
3605 3605
3606static irqreturn_t snd_hdsp_interrupt(int irq, void *dev_id, struct pt_regs *regs) 3606static irqreturn_t snd_hdsp_interrupt(int irq, void *dev_id)
3607{ 3607{
3608 struct hdsp *hdsp = (struct hdsp *) dev_id; 3608 struct hdsp *hdsp = (struct hdsp *) dev_id;
3609 unsigned int status; 3609 unsigned int status;
diff --git a/sound/pci/rme9652/hdspm.c b/sound/pci/rme9652/hdspm.c
index 7d03ae066d53..7055d893855d 100644
--- a/sound/pci/rme9652/hdspm.c
+++ b/sound/pci/rme9652/hdspm.c
@@ -2556,8 +2556,7 @@ static int snd_hdspm_set_defaults(struct hdspm * hdspm)
2556 interupt 2556 interupt
2557 ------------------------------------------------------------*/ 2557 ------------------------------------------------------------*/
2558 2558
2559static irqreturn_t snd_hdspm_interrupt(int irq, void *dev_id, 2559static irqreturn_t snd_hdspm_interrupt(int irq, void *dev_id)
2560 struct pt_regs *regs)
2561{ 2560{
2562 struct hdspm *hdspm = (struct hdspm *) dev_id; 2561 struct hdspm *hdspm = (struct hdspm *) dev_id;
2563 unsigned int status; 2562 unsigned int status;
diff --git a/sound/pci/rme9652/rme9652.c b/sound/pci/rme9652/rme9652.c
index fc15f61ad5d1..cf0427b4bfde 100644
--- a/sound/pci/rme9652/rme9652.c
+++ b/sound/pci/rme9652/rme9652.c
@@ -1882,7 +1882,7 @@ static void snd_rme9652_set_defaults(struct snd_rme9652 *rme9652)
1882 rme9652_set_rate(rme9652, 48000); 1882 rme9652_set_rate(rme9652, 48000);
1883} 1883}
1884 1884
1885static irqreturn_t snd_rme9652_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1885static irqreturn_t snd_rme9652_interrupt(int irq, void *dev_id)
1886{ 1886{
1887 struct snd_rme9652 *rme9652 = (struct snd_rme9652 *) dev_id; 1887 struct snd_rme9652 *rme9652 = (struct snd_rme9652 *) dev_id;
1888 1888
diff --git a/sound/pci/sonicvibes.c b/sound/pci/sonicvibes.c
index e5d4def1aa6f..f9b8afabda9c 100644
--- a/sound/pci/sonicvibes.c
+++ b/sound/pci/sonicvibes.c
@@ -580,7 +580,7 @@ static int snd_sonicvibes_trigger(struct sonicvibes * sonic, int what, int cmd)
580 return result; 580 return result;
581} 581}
582 582
583static irqreturn_t snd_sonicvibes_interrupt(int irq, void *dev_id, struct pt_regs *regs) 583static irqreturn_t snd_sonicvibes_interrupt(int irq, void *dev_id)
584{ 584{
585 struct sonicvibes *sonic = dev_id; 585 struct sonicvibes *sonic = dev_id;
586 unsigned char status; 586 unsigned char status;
@@ -601,7 +601,7 @@ static irqreturn_t snd_sonicvibes_interrupt(int irq, void *dev_id, struct pt_reg
601 } 601 }
602 if (sonic->rmidi) { 602 if (sonic->rmidi) {
603 if (status & SV_MIDI_IRQ) 603 if (status & SV_MIDI_IRQ)
604 snd_mpu401_uart_interrupt(irq, sonic->rmidi->private_data, regs); 604 snd_mpu401_uart_interrupt(irq, sonic->rmidi->private_data);
605 } 605 }
606 if (status & SV_UD_IRQ) { 606 if (status & SV_UD_IRQ) {
607 unsigned char udreg; 607 unsigned char udreg;
diff --git a/sound/pci/trident/trident_main.c b/sound/pci/trident/trident_main.c
index ebbe12d78d8c..0d478871808d 100644
--- a/sound/pci/trident/trident_main.c
+++ b/sound/pci/trident/trident_main.c
@@ -52,8 +52,7 @@ static int snd_trident_pcm_mixer_build(struct snd_trident *trident,
52static int snd_trident_pcm_mixer_free(struct snd_trident *trident, 52static int snd_trident_pcm_mixer_free(struct snd_trident *trident,
53 struct snd_trident_voice * voice, 53 struct snd_trident_voice * voice,
54 struct snd_pcm_substream *substream); 54 struct snd_pcm_substream *substream);
55static irqreturn_t snd_trident_interrupt(int irq, void *dev_id, 55static irqreturn_t snd_trident_interrupt(int irq, void *dev_id);
56 struct pt_regs *regs);
57static int snd_trident_sis_reset(struct snd_trident *trident); 56static int snd_trident_sis_reset(struct snd_trident *trident);
58 57
59static void snd_trident_clear_voices(struct snd_trident * trident, 58static void snd_trident_clear_voices(struct snd_trident * trident,
@@ -3737,7 +3736,7 @@ static int snd_trident_free(struct snd_trident *trident)
3737 3736
3738 ---------------------------------------------------------------------------*/ 3737 ---------------------------------------------------------------------------*/
3739 3738
3740static irqreturn_t snd_trident_interrupt(int irq, void *dev_id, struct pt_regs *regs) 3739static irqreturn_t snd_trident_interrupt(int irq, void *dev_id)
3741{ 3740{
3742 struct snd_trident *trident = dev_id; 3741 struct snd_trident *trident = dev_id;
3743 unsigned int audio_int, chn_int, stimer, channel, mask, tmp; 3742 unsigned int audio_int, chn_int, stimer, channel, mask, tmp;
@@ -3825,7 +3824,7 @@ static irqreturn_t snd_trident_interrupt(int irq, void *dev_id, struct pt_regs *
3825 } 3824 }
3826 if (audio_int & MPU401_IRQ) { 3825 if (audio_int & MPU401_IRQ) {
3827 if (trident->rmidi) { 3826 if (trident->rmidi) {
3828 snd_mpu401_uart_interrupt(irq, trident->rmidi->private_data, regs); 3827 snd_mpu401_uart_interrupt(irq, trident->rmidi->private_data);
3829 } else { 3828 } else {
3830 inb(TRID_REG(trident, T4D_MPUR0)); 3829 inb(TRID_REG(trident, T4D_MPUR0));
3831 } 3830 }
diff --git a/sound/pci/via82xx.c b/sound/pci/via82xx.c
index 6db3d4cc4d8d..e6990e0bbf23 100644
--- a/sound/pci/via82xx.c
+++ b/sound/pci/via82xx.c
@@ -613,7 +613,7 @@ static void snd_via82xx_channel_reset(struct via82xx *chip, struct viadev *viade
613 * Interrupt handler 613 * Interrupt handler
614 * Used for 686 and 8233A 614 * Used for 686 and 8233A
615 */ 615 */
616static irqreturn_t snd_via686_interrupt(int irq, void *dev_id, struct pt_regs *regs) 616static irqreturn_t snd_via686_interrupt(int irq, void *dev_id)
617{ 617{
618 struct via82xx *chip = dev_id; 618 struct via82xx *chip = dev_id;
619 unsigned int status; 619 unsigned int status;
@@ -623,7 +623,7 @@ static irqreturn_t snd_via686_interrupt(int irq, void *dev_id, struct pt_regs *r
623 if (! (status & chip->intr_mask)) { 623 if (! (status & chip->intr_mask)) {
624 if (chip->rmidi) 624 if (chip->rmidi)
625 /* check mpu401 interrupt */ 625 /* check mpu401 interrupt */
626 return snd_mpu401_uart_interrupt(irq, chip->rmidi->private_data, regs); 626 return snd_mpu401_uart_interrupt(irq, chip->rmidi->private_data);
627 return IRQ_NONE; 627 return IRQ_NONE;
628 } 628 }
629 629
@@ -659,7 +659,7 @@ static irqreturn_t snd_via686_interrupt(int irq, void *dev_id, struct pt_regs *r
659/* 659/*
660 * Interrupt handler 660 * Interrupt handler
661 */ 661 */
662static irqreturn_t snd_via8233_interrupt(int irq, void *dev_id, struct pt_regs *regs) 662static irqreturn_t snd_via8233_interrupt(int irq, void *dev_id)
663{ 663{
664 struct via82xx *chip = dev_id; 664 struct via82xx *chip = dev_id;
665 unsigned int status; 665 unsigned int status;
diff --git a/sound/pci/via82xx_modem.c b/sound/pci/via82xx_modem.c
index 016f9dac253f..5ab1cf3d434b 100644
--- a/sound/pci/via82xx_modem.c
+++ b/sound/pci/via82xx_modem.c
@@ -475,7 +475,7 @@ static void snd_via82xx_channel_reset(struct via82xx_modem *chip, struct viadev
475 * Interrupt handler 475 * Interrupt handler
476 */ 476 */
477 477
478static irqreturn_t snd_via82xx_interrupt(int irq, void *dev_id, struct pt_regs *regs) 478static irqreturn_t snd_via82xx_interrupt(int irq, void *dev_id)
479{ 479{
480 struct via82xx_modem *chip = dev_id; 480 struct via82xx_modem *chip = dev_id;
481 unsigned int status; 481 unsigned int status;
diff --git a/sound/pci/ymfpci/ymfpci_main.c b/sound/pci/ymfpci/ymfpci_main.c
index 24f6fc52f898..ebc6da89edf3 100644
--- a/sound/pci/ymfpci/ymfpci_main.c
+++ b/sound/pci/ymfpci/ymfpci_main.c
@@ -753,7 +753,7 @@ static void snd_ymfpci_irq_wait(struct snd_ymfpci *chip)
753 } 753 }
754} 754}
755 755
756static irqreturn_t snd_ymfpci_interrupt(int irq, void *dev_id, struct pt_regs *regs) 756static irqreturn_t snd_ymfpci_interrupt(int irq, void *dev_id)
757{ 757{
758 struct snd_ymfpci *chip = dev_id; 758 struct snd_ymfpci *chip = dev_id;
759 u32 status, nvoice, mode; 759 u32 status, nvoice, mode;
@@ -799,7 +799,7 @@ static irqreturn_t snd_ymfpci_interrupt(int irq, void *dev_id, struct pt_regs *r
799 snd_ymfpci_writew(chip, YDSXGR_INTFLAG, status); 799 snd_ymfpci_writew(chip, YDSXGR_INTFLAG, status);
800 800
801 if (chip->rawmidi) 801 if (chip->rawmidi)
802 snd_mpu401_uart_interrupt(irq, chip->rawmidi->private_data, regs); 802 snd_mpu401_uart_interrupt(irq, chip->rawmidi->private_data);
803 return IRQ_HANDLED; 803 return IRQ_HANDLED;
804} 804}
805 805
diff --git a/sound/pcmcia/pdaudiocf/pdaudiocf.h b/sound/pcmcia/pdaudiocf/pdaudiocf.h
index 9a14a4f64bd3..206e2f5a113f 100644
--- a/sound/pcmcia/pdaudiocf/pdaudiocf.h
+++ b/sound/pcmcia/pdaudiocf/pdaudiocf.h
@@ -138,7 +138,7 @@ int snd_pdacf_suspend(struct snd_pdacf *chip, pm_message_t state);
138int snd_pdacf_resume(struct snd_pdacf *chip); 138int snd_pdacf_resume(struct snd_pdacf *chip);
139#endif 139#endif
140int snd_pdacf_pcm_new(struct snd_pdacf *chip); 140int snd_pdacf_pcm_new(struct snd_pdacf *chip);
141irqreturn_t pdacf_interrupt(int irq, void *dev, struct pt_regs *regs); 141irqreturn_t pdacf_interrupt(int irq, void *dev);
142void pdacf_tasklet(unsigned long private_data); 142void pdacf_tasklet(unsigned long private_data);
143void pdacf_reinit(struct snd_pdacf *chip, int resume); 143void pdacf_reinit(struct snd_pdacf *chip, int resume);
144 144
diff --git a/sound/pcmcia/pdaudiocf/pdaudiocf_irq.c b/sound/pcmcia/pdaudiocf/pdaudiocf_irq.c
index 7c5f21e45cb4..732263e4a437 100644
--- a/sound/pcmcia/pdaudiocf/pdaudiocf_irq.c
+++ b/sound/pcmcia/pdaudiocf/pdaudiocf_irq.c
@@ -26,7 +26,7 @@
26/* 26/*
27 * 27 *
28 */ 28 */
29irqreturn_t pdacf_interrupt(int irq, void *dev, struct pt_regs *regs) 29irqreturn_t pdacf_interrupt(int irq, void *dev)
30{ 30{
31 struct snd_pdacf *chip = dev; 31 struct snd_pdacf *chip = dev;
32 unsigned short stat; 32 unsigned short stat;
@@ -45,7 +45,7 @@ irqreturn_t pdacf_interrupt(int irq, void *dev, struct pt_regs *regs)
45 if (!(stat & PDAUDIOCF_IRQAKM)) 45 if (!(stat & PDAUDIOCF_IRQAKM))
46 stat |= PDAUDIOCF_IRQAKM; /* check rate */ 46 stat |= PDAUDIOCF_IRQAKM; /* check rate */
47 } 47 }
48 if (regs != NULL) 48 if (get_irq_regs() != NULL)
49 snd_ak4117_check_rate_and_errors(chip->ak4117, 0); 49 snd_ak4117_check_rate_and_errors(chip->ak4117, 0);
50 return IRQ_HANDLED; 50 return IRQ_HANDLED;
51} 51}
diff --git a/sound/ppc/pmac.c b/sound/ppc/pmac.c
index 641430631505..c64af55865d4 100644
--- a/sound/ppc/pmac.c
+++ b/sound/ppc/pmac.c
@@ -713,7 +713,7 @@ void snd_pmac_beep_dma_stop(struct snd_pmac *chip)
713 * interrupt handlers 713 * interrupt handlers
714 */ 714 */
715static irqreturn_t 715static irqreturn_t
716snd_pmac_tx_intr(int irq, void *devid, struct pt_regs *regs) 716snd_pmac_tx_intr(int irq, void *devid)
717{ 717{
718 struct snd_pmac *chip = devid; 718 struct snd_pmac *chip = devid;
719 snd_pmac_pcm_update(chip, &chip->playback); 719 snd_pmac_pcm_update(chip, &chip->playback);
@@ -722,7 +722,7 @@ snd_pmac_tx_intr(int irq, void *devid, struct pt_regs *regs)
722 722
723 723
724static irqreturn_t 724static irqreturn_t
725snd_pmac_rx_intr(int irq, void *devid, struct pt_regs *regs) 725snd_pmac_rx_intr(int irq, void *devid)
726{ 726{
727 struct snd_pmac *chip = devid; 727 struct snd_pmac *chip = devid;
728 snd_pmac_pcm_update(chip, &chip->capture); 728 snd_pmac_pcm_update(chip, &chip->capture);
@@ -731,7 +731,7 @@ snd_pmac_rx_intr(int irq, void *devid, struct pt_regs *regs)
731 731
732 732
733static irqreturn_t 733static irqreturn_t
734snd_pmac_ctrl_intr(int irq, void *devid, struct pt_regs *regs) 734snd_pmac_ctrl_intr(int irq, void *devid)
735{ 735{
736 struct snd_pmac *chip = devid; 736 struct snd_pmac *chip = devid;
737 int ctrl = in_le32(&chip->awacs->control); 737 int ctrl = in_le32(&chip->awacs->control);
diff --git a/sound/ppc/tumbler.c b/sound/ppc/tumbler.c
index cdff53e4a17e..2fbe1d183fce 100644
--- a/sound/ppc/tumbler.c
+++ b/sound/ppc/tumbler.c
@@ -1017,7 +1017,7 @@ static void tumbler_update_automute(struct snd_pmac *chip, int do_notify)
1017 1017
1018 1018
1019/* interrupt - headphone plug changed */ 1019/* interrupt - headphone plug changed */
1020static irqreturn_t headphone_intr(int irq, void *devid, struct pt_regs *regs) 1020static irqreturn_t headphone_intr(int irq, void *devid)
1021{ 1021{
1022 struct snd_pmac *chip = devid; 1022 struct snd_pmac *chip = devid;
1023 if (chip->update_automute && chip->initialized) { 1023 if (chip->update_automute && chip->initialized) {
diff --git a/sound/sparc/amd7930.c b/sound/sparc/amd7930.c
index be0bd503f013..c899786f30f5 100644
--- a/sound/sparc/amd7930.c
+++ b/sound/sparc/amd7930.c
@@ -491,7 +491,7 @@ static void __amd7930_update_map(struct snd_amd7930 *amd)
491 __amd7930_write_map(amd); 491 __amd7930_write_map(amd);
492} 492}
493 493
494static irqreturn_t snd_amd7930_interrupt(int irq, void *dev_id, struct pt_regs *regs) 494static irqreturn_t snd_amd7930_interrupt(int irq, void *dev_id)
495{ 495{
496 struct snd_amd7930 *amd = dev_id; 496 struct snd_amd7930 *amd = dev_id;
497 unsigned int elapsed; 497 unsigned int elapsed;
diff --git a/sound/sparc/cs4231.c b/sound/sparc/cs4231.c
index 9a06c3bd6944..edeb3d3c4c7e 100644
--- a/sound/sparc/cs4231.c
+++ b/sound/sparc/cs4231.c
@@ -1753,7 +1753,7 @@ out_err:
1753 1753
1754#ifdef SBUS_SUPPORT 1754#ifdef SBUS_SUPPORT
1755 1755
1756static irqreturn_t snd_cs4231_sbus_interrupt(int irq, void *dev_id, struct pt_regs *regs) 1756static irqreturn_t snd_cs4231_sbus_interrupt(int irq, void *dev_id)
1757{ 1757{
1758 unsigned long flags; 1758 unsigned long flags;
1759 unsigned char status; 1759 unsigned char status;
diff --git a/sound/sparc/dbri.c b/sound/sparc/dbri.c
index 5a97be689b40..4ceb09d215d8 100644
--- a/sound/sparc/dbri.c
+++ b/sound/sparc/dbri.c
@@ -1903,8 +1903,7 @@ static void dbri_process_interrupt_buffer(struct snd_dbri * dbri)
1903 } 1903 }
1904} 1904}
1905 1905
1906static irqreturn_t snd_dbri_interrupt(int irq, void *dev_id, 1906static irqreturn_t snd_dbri_interrupt(int irq, void *dev_id)
1907 struct pt_regs *regs)
1908{ 1907{
1909 struct snd_dbri *dbri = dev_id; 1908 struct snd_dbri *dbri = dev_id;
1910 static int errcnt = 0; 1909 static int errcnt = 0;
diff --git a/sound/usb/usbaudio.c b/sound/usb/usbaudio.c
index a42acf6d7b68..c82b01c7ad3a 100644
--- a/sound/usb/usbaudio.c
+++ b/sound/usb/usbaudio.c
@@ -653,7 +653,7 @@ static struct snd_urb_ops audio_urb_ops_high_speed[2] = {
653/* 653/*
654 * complete callback from data urb 654 * complete callback from data urb
655 */ 655 */
656static void snd_complete_urb(struct urb *urb, struct pt_regs *regs) 656static void snd_complete_urb(struct urb *urb)
657{ 657{
658 struct snd_urb_ctx *ctx = (struct snd_urb_ctx *)urb->context; 658 struct snd_urb_ctx *ctx = (struct snd_urb_ctx *)urb->context;
659 struct snd_usb_substream *subs = ctx->subs; 659 struct snd_usb_substream *subs = ctx->subs;
@@ -676,7 +676,7 @@ static void snd_complete_urb(struct urb *urb, struct pt_regs *regs)
676/* 676/*
677 * complete callback from sync urb 677 * complete callback from sync urb
678 */ 678 */
679static void snd_complete_sync_urb(struct urb *urb, struct pt_regs *regs) 679static void snd_complete_sync_urb(struct urb *urb)
680{ 680{
681 struct snd_urb_ctx *ctx = (struct snd_urb_ctx *)urb->context; 681 struct snd_urb_ctx *ctx = (struct snd_urb_ctx *)urb->context;
682 struct snd_usb_substream *subs = ctx->subs; 682 struct snd_usb_substream *subs = ctx->subs;
diff --git a/sound/usb/usbmidi.c b/sound/usb/usbmidi.c
index 0dcf78adb99a..b7c5e59b2299 100644
--- a/sound/usb/usbmidi.c
+++ b/sound/usb/usbmidi.c
@@ -223,7 +223,7 @@ static void dump_urb(const char *type, const u8 *data, int length)
223/* 223/*
224 * Processes the data read from the device. 224 * Processes the data read from the device.
225 */ 225 */
226static void snd_usbmidi_in_urb_complete(struct urb* urb, struct pt_regs *regs) 226static void snd_usbmidi_in_urb_complete(struct urb* urb)
227{ 227{
228 struct snd_usb_midi_in_endpoint* ep = urb->context; 228 struct snd_usb_midi_in_endpoint* ep = urb->context;
229 229
@@ -247,7 +247,7 @@ static void snd_usbmidi_in_urb_complete(struct urb* urb, struct pt_regs *regs)
247 snd_usbmidi_submit_urb(urb, GFP_ATOMIC); 247 snd_usbmidi_submit_urb(urb, GFP_ATOMIC);
248} 248}
249 249
250static void snd_usbmidi_out_urb_complete(struct urb* urb, struct pt_regs *regs) 250static void snd_usbmidi_out_urb_complete(struct urb* urb)
251{ 251{
252 struct snd_usb_midi_out_endpoint* ep = urb->context; 252 struct snd_usb_midi_out_endpoint* ep = urb->context;
253 253
diff --git a/sound/usb/usbmixer.c b/sound/usb/usbmixer.c
index e516d6adbb22..1024c178f5c0 100644
--- a/sound/usb/usbmixer.c
+++ b/sound/usb/usbmixer.c
@@ -1710,7 +1710,7 @@ static void snd_usb_mixer_memory_change(struct usb_mixer_interface *mixer,
1710 } 1710 }
1711} 1711}
1712 1712
1713static void snd_usb_mixer_status_complete(struct urb *urb, struct pt_regs *regs) 1713static void snd_usb_mixer_status_complete(struct urb *urb)
1714{ 1714{
1715 struct usb_mixer_interface *mixer = urb->context; 1715 struct usb_mixer_interface *mixer = urb->context;
1716 1716
@@ -1772,8 +1772,7 @@ static int snd_usb_mixer_status_create(struct usb_mixer_interface *mixer)
1772 return 0; 1772 return 0;
1773} 1773}
1774 1774
1775static void snd_usb_soundblaster_remote_complete(struct urb *urb, 1775static void snd_usb_soundblaster_remote_complete(struct urb *urb)
1776 struct pt_regs *regs)
1777{ 1776{
1778 struct usb_mixer_interface *mixer = urb->context; 1777 struct usb_mixer_interface *mixer = urb->context;
1779 const struct rc_config *rc = mixer->rc_cfg; 1778 const struct rc_config *rc = mixer->rc_cfg;
diff --git a/sound/usb/usx2y/usbusx2y.c b/sound/usb/usx2y/usbusx2y.c
index cfec38d7839b..e011fcacce92 100644
--- a/sound/usb/usx2y/usbusx2y.c
+++ b/sound/usb/usx2y/usbusx2y.c
@@ -172,7 +172,7 @@ static void snd_usX2Y_card_private_free(struct snd_card *card);
172/* 172/*
173 * pipe 4 is used for switching the lamps, setting samplerate, volumes .... 173 * pipe 4 is used for switching the lamps, setting samplerate, volumes ....
174 */ 174 */
175static void i_usX2Y_Out04Int(struct urb *urb, struct pt_regs *regs) 175static void i_usX2Y_Out04Int(struct urb *urb)
176{ 176{
177#ifdef CONFIG_SND_DEBUG 177#ifdef CONFIG_SND_DEBUG
178 if (urb->status) { 178 if (urb->status) {
@@ -184,7 +184,7 @@ static void i_usX2Y_Out04Int(struct urb *urb, struct pt_regs *regs)
184#endif 184#endif
185} 185}
186 186
187static void i_usX2Y_In04Int(struct urb *urb, struct pt_regs *regs) 187static void i_usX2Y_In04Int(struct urb *urb)
188{ 188{
189 int err = 0; 189 int err = 0;
190 struct usX2Ydev *usX2Y = urb->context; 190 struct usX2Ydev *usX2Y = urb->context;
diff --git a/sound/usb/usx2y/usbusx2yaudio.c b/sound/usb/usx2y/usbusx2yaudio.c
index f6bd0dee563c..e662281a751a 100644
--- a/sound/usb/usx2y/usbusx2yaudio.c
+++ b/sound/usb/usx2y/usbusx2yaudio.c
@@ -306,7 +306,7 @@ static void usX2Y_error_sequence(struct usX2Ydev *usX2Y,
306 usX2Y_clients_stop(usX2Y); 306 usX2Y_clients_stop(usX2Y);
307} 307}
308 308
309static void i_usX2Y_urb_complete(struct urb *urb, struct pt_regs *regs) 309static void i_usX2Y_urb_complete(struct urb *urb)
310{ 310{
311 struct snd_usX2Y_substream *subs = urb->context; 311 struct snd_usX2Y_substream *subs = urb->context;
312 struct usX2Ydev *usX2Y = subs->usX2Y; 312 struct usX2Ydev *usX2Y = subs->usX2Y;
@@ -350,7 +350,7 @@ static void i_usX2Y_urb_complete(struct urb *urb, struct pt_regs *regs)
350} 350}
351 351
352static void usX2Y_urbs_set_complete(struct usX2Ydev * usX2Y, 352static void usX2Y_urbs_set_complete(struct usX2Ydev * usX2Y,
353 void (*complete)(struct urb *, struct pt_regs *)) 353 void (*complete)(struct urb *))
354{ 354{
355 int s, u; 355 int s, u;
356 for (s = 0; s < 4; s++) { 356 for (s = 0; s < 4; s++) {
@@ -370,7 +370,7 @@ static void usX2Y_subs_startup_finish(struct usX2Ydev * usX2Y)
370 usX2Y->prepare_subs = NULL; 370 usX2Y->prepare_subs = NULL;
371} 371}
372 372
373static void i_usX2Y_subs_startup(struct urb *urb, struct pt_regs *regs) 373static void i_usX2Y_subs_startup(struct urb *urb)
374{ 374{
375 struct snd_usX2Y_substream *subs = urb->context; 375 struct snd_usX2Y_substream *subs = urb->context;
376 struct usX2Ydev *usX2Y = subs->usX2Y; 376 struct usX2Ydev *usX2Y = subs->usX2Y;
@@ -382,7 +382,7 @@ static void i_usX2Y_subs_startup(struct urb *urb, struct pt_regs *regs)
382 wake_up(&usX2Y->prepare_wait_queue); 382 wake_up(&usX2Y->prepare_wait_queue);
383 } 383 }
384 384
385 i_usX2Y_urb_complete(urb, regs); 385 i_usX2Y_urb_complete(urb);
386} 386}
387 387
388static void usX2Y_subs_prepare(struct snd_usX2Y_substream *subs) 388static void usX2Y_subs_prepare(struct snd_usX2Y_substream *subs)
@@ -663,7 +663,7 @@ static struct s_c2 SetRate48000[] =
663}; 663};
664#define NOOF_SETRATE_URBS ARRAY_SIZE(SetRate48000) 664#define NOOF_SETRATE_URBS ARRAY_SIZE(SetRate48000)
665 665
666static void i_usX2Y_04Int(struct urb *urb, struct pt_regs *regs) 666static void i_usX2Y_04Int(struct urb *urb)
667{ 667{
668 struct usX2Ydev *usX2Y = urb->context; 668 struct usX2Ydev *usX2Y = urb->context;
669 669
diff --git a/sound/usb/usx2y/usx2yhwdeppcm.c b/sound/usb/usx2y/usx2yhwdeppcm.c
index 88b72b52590f..9acef9d90543 100644
--- a/sound/usb/usx2y/usx2yhwdeppcm.c
+++ b/sound/usb/usx2y/usx2yhwdeppcm.c
@@ -226,7 +226,7 @@ static inline int usX2Y_usbpcm_usbframe_complete(struct snd_usX2Y_substream *cap
226} 226}
227 227
228 228
229static void i_usX2Y_usbpcm_urb_complete(struct urb *urb, struct pt_regs *regs) 229static void i_usX2Y_usbpcm_urb_complete(struct urb *urb)
230{ 230{
231 struct snd_usX2Y_substream *subs = urb->context; 231 struct snd_usX2Y_substream *subs = urb->context;
232 struct usX2Ydev *usX2Y = subs->usX2Y; 232 struct usX2Ydev *usX2Y = subs->usX2Y;
@@ -294,7 +294,7 @@ static void usX2Y_usbpcm_subs_startup_finish(struct usX2Ydev * usX2Y)
294 usX2Y->prepare_subs = NULL; 294 usX2Y->prepare_subs = NULL;
295} 295}
296 296
297static void i_usX2Y_usbpcm_subs_startup(struct urb *urb, struct pt_regs *regs) 297static void i_usX2Y_usbpcm_subs_startup(struct urb *urb)
298{ 298{
299 struct snd_usX2Y_substream *subs = urb->context; 299 struct snd_usX2Y_substream *subs = urb->context;
300 struct usX2Ydev *usX2Y = subs->usX2Y; 300 struct usX2Ydev *usX2Y = subs->usX2Y;
@@ -311,7 +311,7 @@ static void i_usX2Y_usbpcm_subs_startup(struct urb *urb, struct pt_regs *regs)
311 wake_up(&usX2Y->prepare_wait_queue); 311 wake_up(&usX2Y->prepare_wait_queue);
312 } 312 }
313 313
314 i_usX2Y_usbpcm_urb_complete(urb, regs); 314 i_usX2Y_usbpcm_urb_complete(urb);
315} 315}
316 316
317/* 317/*