diff options
-rw-r--r-- | sound/oss/mpu401.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/sound/oss/mpu401.c b/sound/oss/mpu401.c index 2796c0ef985f..a690ca57adb5 100644 --- a/sound/oss/mpu401.c +++ b/sound/oss/mpu401.c | |||
@@ -1003,7 +1003,8 @@ int attach_mpu401(struct address_info *hw_config, struct module *owner) | |||
1003 | } | 1003 | } |
1004 | if (!devc->shared_irq) | 1004 | if (!devc->shared_irq) |
1005 | { | 1005 | { |
1006 | if (request_irq(devc->irq, mpuintr, 0, "mpu401", (void *)m) < 0) | 1006 | if (request_irq(devc->irq, mpuintr, 0, "mpu401", |
1007 | hw_config) < 0) | ||
1007 | { | 1008 | { |
1008 | printk(KERN_WARNING "mpu401: Failed to allocate IRQ%d\n", devc->irq); | 1009 | printk(KERN_WARNING "mpu401: Failed to allocate IRQ%d\n", devc->irq); |
1009 | ret = -ENOMEM; | 1010 | ret = -ENOMEM; |
@@ -1112,7 +1113,7 @@ int attach_mpu401(struct address_info *hw_config, struct module *owner) | |||
1112 | return 0; | 1113 | return 0; |
1113 | 1114 | ||
1114 | out_irq: | 1115 | out_irq: |
1115 | free_irq(devc->irq, (void *)m); | 1116 | free_irq(devc->irq, hw_config); |
1116 | out_mididev: | 1117 | out_mididev: |
1117 | sound_unload_mididev(m); | 1118 | sound_unload_mididev(m); |
1118 | out_err: | 1119 | out_err: |
@@ -1227,7 +1228,7 @@ void unload_mpu401(struct address_info *hw_config) | |||
1227 | if (n != -1) { | 1228 | if (n != -1) { |
1228 | release_region(hw_config->io_base, 2); | 1229 | release_region(hw_config->io_base, 2); |
1229 | if (hw_config->always_detect == 0 && hw_config->irq > 0) | 1230 | if (hw_config->always_detect == 0 && hw_config->irq > 0) |
1230 | free_irq(hw_config->irq, (void *)n); | 1231 | free_irq(hw_config->irq, hw_config); |
1231 | p=mpu401_synth_operations[n]; | 1232 | p=mpu401_synth_operations[n]; |
1232 | sound_unload_mididev(n); | 1233 | sound_unload_mididev(n); |
1233 | sound_unload_timerdev(hw_config->slots[2]); | 1234 | sound_unload_timerdev(hw_config->slots[2]); |