diff options
author | Dmitry Torokhov <dtor_core@ameritech.net> | 2006-04-29 01:11:23 -0400 |
---|---|---|
committer | Dmitry Torokhov <dtor_core@ameritech.net> | 2006-04-29 01:11:23 -0400 |
commit | 7b7e394185014e0f3bd8989cac937003f20ef9ce (patch) | |
tree | 3beda5f979bba0aa9822534e239cf1b45f3be69c /sound/isa/gus | |
parent | ddc5d3414593e4d7ad7fbd33e7f7517fcc234544 (diff) | |
parent | 693f7d362055261882659475d2ef022e32edbff1 (diff) | |
download | op-kernel-dev-7b7e394185014e0f3bd8989cac937003f20ef9ce.zip op-kernel-dev-7b7e394185014e0f3bd8989cac937003f20ef9ce.tar.gz |
Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Diffstat (limited to 'sound/isa/gus')
-rw-r--r-- | sound/isa/gus/gusclassic.c | 16 | ||||
-rw-r--r-- | sound/isa/gus/gusextreme.c | 16 | ||||
-rw-r--r-- | sound/isa/gus/gusmax.c | 16 | ||||
-rw-r--r-- | sound/isa/gus/interwave.c | 16 |
4 files changed, 28 insertions, 36 deletions
diff --git a/sound/isa/gus/gusclassic.c b/sound/isa/gus/gusclassic.c index 26dccfe..37057a3 100644 --- a/sound/isa/gus/gusclassic.c +++ b/sound/isa/gus/gusclassic.c @@ -253,9 +253,11 @@ static int __init alsa_card_gusclassic_init(void) continue; device = platform_device_register_simple(GUSCLASSIC_DRIVER, i, NULL, 0); - if (IS_ERR(device)) { - err = PTR_ERR(device); - goto errout; + if (IS_ERR(device)) + continue; + if (!platform_get_drvdata(device)) { + platform_device_unregister(device); + continue; } devices[i] = device; cards++; @@ -264,14 +266,10 @@ static int __init alsa_card_gusclassic_init(void) #ifdef MODULE printk(KERN_ERR "GUS Classic soundcard not found or device busy\n"); #endif - err = -ENODEV; - goto errout; + snd_gusclassic_unregister_all(); + return -ENODEV; } return 0; - - errout: - snd_gusclassic_unregister_all(); - return err; } static void __exit alsa_card_gusclassic_exit(void) diff --git a/sound/isa/gus/gusextreme.c b/sound/isa/gus/gusextreme.c index 31dc205..05852fc 100644 --- a/sound/isa/gus/gusextreme.c +++ b/sound/isa/gus/gusextreme.c @@ -363,9 +363,11 @@ static int __init alsa_card_gusextreme_init(void) continue; device = platform_device_register_simple(GUSEXTREME_DRIVER, i, NULL, 0); - if (IS_ERR(device)) { - err = PTR_ERR(device); - goto errout; + if (IS_ERR(device)) + continue; + if (!platform_get_drvdata(device)) { + platform_device_unregister(device); + continue; } devices[i] = device; cards++; @@ -374,14 +376,10 @@ static int __init alsa_card_gusextreme_init(void) #ifdef MODULE printk(KERN_ERR "GUS Extreme soundcard not found or device busy\n"); #endif - err = -ENODEV; - goto errout; + snd_gusextreme_unregister_all(); + return -ENODEV; } return 0; - - errout: - snd_gusextreme_unregister_all(); - return err; } static void __exit alsa_card_gusextreme_exit(void) diff --git a/sound/isa/gus/gusmax.c b/sound/isa/gus/gusmax.c index cafb9b6..fcf2c8f 100644 --- a/sound/isa/gus/gusmax.c +++ b/sound/isa/gus/gusmax.c @@ -390,9 +390,11 @@ static int __init alsa_card_gusmax_init(void) continue; device = platform_device_register_simple(GUSMAX_DRIVER, i, NULL, 0); - if (IS_ERR(device)) { - err = PTR_ERR(device); - goto errout; + if (IS_ERR(device)) + continue; + if (!platform_get_drvdata(device)) { + platform_device_unregister(device); + continue; } devices[i] = device; cards++; @@ -401,14 +403,10 @@ static int __init alsa_card_gusmax_init(void) #ifdef MODULE printk(KERN_ERR "GUS MAX soundcard not found or device busy\n"); #endif - err = -ENODEV; - goto errout; + snd_gusmax_unregister_all(); + return -ENODEV; } return 0; - - errout: - snd_gusmax_unregister_all(); - return err; } static void __exit alsa_card_gusmax_exit(void) diff --git a/sound/isa/gus/interwave.c b/sound/isa/gus/interwave.c index de71b7a9..4298d33 100644 --- a/sound/isa/gus/interwave.c +++ b/sound/isa/gus/interwave.c @@ -947,9 +947,11 @@ static int __init alsa_card_interwave_init(void) #endif device = platform_device_register_simple(INTERWAVE_DRIVER, i, NULL, 0); - if (IS_ERR(device)) { - err = PTR_ERR(device); - goto errout; + if (IS_ERR(device)) + continue; + if (!platform_get_drvdata(device)) { + platform_device_unregister(device); + continue; } platform_devices[i] = device; cards++; @@ -966,14 +968,10 @@ static int __init alsa_card_interwave_init(void) #ifdef MODULE printk(KERN_ERR "InterWave soundcard not found or device busy\n"); #endif - err = -ENODEV; - goto errout; + snd_interwave_unregister_all(); + return -ENODEV; } return 0; - - errout: - snd_interwave_unregister_all(); - return err; } static void __exit alsa_card_interwave_exit(void) |