aboutsummaryrefslogtreecommitdiffstats
path: root/sound/isa/gus/gusclassic.c
diff options
context:
space:
mode:
authorRene Herman <rene.herman@keyaccess.nl>2006-04-11 08:08:33 -0400
committerJaroslav Kysela <perex@suse.cz>2006-04-12 05:55:30 -0400
commitd0ac642d76c79c5cc673c4cdfe43e926379784e1 (patch)
tree676e529b860634706ff98978d0328a71e584bc4f /sound/isa/gus/gusclassic.c
parent12831c15f35dcc9f55fa63d50fd4892c7c6a0a1c (diff)
[ALSA] continue on IS_ERR from platform device registration
Continue with the next one on error from device registration. This would seem the correct thing to do, even if it's not the probe() error that we're getting. Signed-off-by: Rene Herman <rene.herman@keyaccess.nl> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/isa/gus/gusclassic.c')
-rw-r--r--sound/isa/gus/gusclassic.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/sound/isa/gus/gusclassic.c b/sound/isa/gus/gusclassic.c
index 26dccfea2437..ed34427c49db 100644
--- a/sound/isa/gus/gusclassic.c
+++ b/sound/isa/gus/gusclassic.c
@@ -253,10 +253,8 @@ static int __init alsa_card_gusclassic_init(void)
253 continue; 253 continue;
254 device = platform_device_register_simple(GUSCLASSIC_DRIVER, 254 device = platform_device_register_simple(GUSCLASSIC_DRIVER,
255 i, NULL, 0); 255 i, NULL, 0);
256 if (IS_ERR(device)) { 256 if (IS_ERR(device))
257 err = PTR_ERR(device); 257 continue;
258 goto errout;
259 }
260 devices[i] = device; 258 devices[i] = device;
261 cards++; 259 cards++;
262 } 260 }
@@ -264,14 +262,10 @@ static int __init alsa_card_gusclassic_init(void)
264#ifdef MODULE 262#ifdef MODULE
265 printk(KERN_ERR "GUS Classic soundcard not found or device busy\n"); 263 printk(KERN_ERR "GUS Classic soundcard not found or device busy\n");
266#endif 264#endif
267 err = -ENODEV; 265 snd_gusclassic_unregister_all();
268 goto errout; 266 return -ENODEV;
269 } 267 }
270 return 0; 268 return 0;
271
272 errout:
273 snd_gusclassic_unregister_all();
274 return err;
275} 269}
276 270
277static void __exit alsa_card_gusclassic_exit(void) 271static void __exit alsa_card_gusclassic_exit(void)