Skip to content

Commit

Permalink
[ALSA] continue on IS_ERR from platform device registration
Browse files Browse the repository at this point in the history
I previously only concerned myself with sound/isa. When I now checked
for more platform_device_register_simple() usages in ALSA I found a
couple more drivers that needed the same patches as already submitted
for all the ISA drivers.
This first one is the continue-on-iserr patch for sound/drivers. This
gets them all.

Signed-off-by: Rene Herman <rene.herman@keyaccess.nl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
  • Loading branch information
Rene Herman authored and Jaroslav Kysela committed Apr 27, 2006
1 parent 5c59e09 commit a182ee9
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 40 deletions.
14 changes: 4 additions & 10 deletions sound/drivers/dummy.c
Original file line number Diff line number Diff line change
Expand Up @@ -675,25 +675,19 @@ static int __init alsa_card_dummy_init(void)
continue;
device = platform_device_register_simple(SND_DUMMY_DRIVER,
i, NULL, 0);
if (IS_ERR(device)) {
err = PTR_ERR(device);
goto errout;
}
if (IS_ERR(device))
continue;
devices[i] = device;
cards++;
}
if (!cards) {
#ifdef MODULE
printk(KERN_ERR "Dummy soundcard not found or device busy\n");
#endif
err = -ENODEV;
goto errout;
snd_dummy_unregister_all();
return -ENODEV;
}
return 0;

errout:
snd_dummy_unregister_all();
return err;
}

static void __exit alsa_card_dummy_exit(void)
Expand Down
14 changes: 4 additions & 10 deletions sound/drivers/mpu401/mpu401.c
Original file line number Diff line number Diff line change
Expand Up @@ -251,10 +251,8 @@ static int __init alsa_card_mpu401_init(void)
#endif
device = platform_device_register_simple(SND_MPU401_DRIVER,
i, NULL, 0);
if (IS_ERR(device)) {
err = PTR_ERR(device);
goto errout;
}
if (IS_ERR(device))
continue;
platform_devices[i] = device;
snd_mpu401_devices++;
}
Expand All @@ -266,14 +264,10 @@ static int __init alsa_card_mpu401_init(void)
#ifdef MODULE
printk(KERN_ERR "MPU-401 device not found or device busy\n");
#endif
err = -ENODEV;
goto errout;
snd_mpu401_unregister_all();
return -ENODEV;
}
return 0;

errout:
snd_mpu401_unregister_all();
return err;
}

static void __exit alsa_card_mpu401_exit(void)
Expand Down
14 changes: 4 additions & 10 deletions sound/drivers/serial-u16550.c
Original file line number Diff line number Diff line change
Expand Up @@ -996,25 +996,19 @@ static int __init alsa_card_serial_init(void)
continue;
device = platform_device_register_simple(SND_SERIAL_DRIVER,
i, NULL, 0);
if (IS_ERR(device)) {
err = PTR_ERR(device);
goto errout;
}
if (IS_ERR(device))
continue;
devices[i] = device;
cards++;
}
if (! cards) {
#ifdef MODULE
printk(KERN_ERR "serial midi soundcard not found or device busy\n");
#endif
err = -ENODEV;
goto errout;
snd_serial_unregister_all();
return -ENODEV;
}
return 0;

errout:
snd_serial_unregister_all();
return err;
}

static void __exit alsa_card_serial_exit(void)
Expand Down
14 changes: 4 additions & 10 deletions sound/drivers/virmidi.c
Original file line number Diff line number Diff line change
Expand Up @@ -169,25 +169,19 @@ static int __init alsa_card_virmidi_init(void)
continue;
device = platform_device_register_simple(SND_VIRMIDI_DRIVER,
i, NULL, 0);
if (IS_ERR(device)) {
err = PTR_ERR(device);
goto errout;
}
if (IS_ERR(device))
continue;
devices[i] = device;
cards++;
}
if (!cards) {
#ifdef MODULE
printk(KERN_ERR "Card-VirMIDI soundcard not found or device busy\n");
#endif
err = -ENODEV;
goto errout;
snd_virmidi_unregister_all();
return -ENODEV;
}
return 0;

errout:
snd_virmidi_unregister_all();
return err;
}

static void __exit alsa_card_virmidi_exit(void)
Expand Down

0 comments on commit a182ee9

Please sign in to comment.