mpu401 warning fixes
authorAndrew Morton <akpm@linux-foundation.org>
Mon, 16 Jul 2007 06:40:04 +0000 (23:40 -0700)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Mon, 16 Jul 2007 16:05:42 +0000 (09:05 -0700)
Fix these:

sound/oss/mpu401.c: In function 'attach_mpu401':
sound/oss/mpu401.c:1006: warning: cast to pointer from integer of different size
sound/oss/mpu401.c:1115: warning: cast to pointer from integer of different size
sound/oss/mpu401.c: In function 'unload_mpu401':
sound/oss/mpu401.c:1230: warning: cast to pointer from integer of different size

by making it implement the request_irq()/free_irq() cookies correctly.

Cc: Jaroslav Kysela <perex@suse.cz>
Cc: Takashi Iwai <tiwai@suse.de>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
sound/oss/mpu401.c

index 2796c0e..a690ca5 100644 (file)
@@ -1003,7 +1003,8 @@ int attach_mpu401(struct address_info *hw_config, struct module *owner)
                }
                if (!devc->shared_irq)
                {
-                       if (request_irq(devc->irq, mpuintr, 0, "mpu401", (void *)m) < 0)
+                       if (request_irq(devc->irq, mpuintr, 0, "mpu401",
+                                       hw_config) < 0)
                        {
                                printk(KERN_WARNING "mpu401: Failed to allocate IRQ%d\n", devc->irq);
                                ret = -ENOMEM;
@@ -1112,7 +1113,7 @@ int attach_mpu401(struct address_info *hw_config, struct module *owner)
        return 0;
 
 out_irq:
-       free_irq(devc->irq, (void *)m);
+       free_irq(devc->irq, hw_config);
 out_mididev:
        sound_unload_mididev(m);
 out_err:
@@ -1227,7 +1228,7 @@ void unload_mpu401(struct address_info *hw_config)
        if (n != -1) {
                release_region(hw_config->io_base, 2);
                if (hw_config->always_detect == 0 && hw_config->irq > 0)
-                       free_irq(hw_config->irq, (void *)n);
+                       free_irq(hw_config->irq, hw_config);
                p=mpu401_synth_operations[n];
                sound_unload_mididev(n);
                sound_unload_timerdev(hw_config->slots[2]);