aboutsummaryrefslogtreecommitdiffstats
path: root/sound/isa/cs423x/cs4236.c
diff options
context:
space:
mode:
Diffstat (limited to 'sound/isa/cs423x/cs4236.c')
-rw-r--r--sound/isa/cs423x/cs4236.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/sound/isa/cs423x/cs4236.c b/sound/isa/cs423x/cs4236.c
index 382bb17ef49f..b07a62b76175 100644
--- a/sound/isa/cs423x/cs4236.c
+++ b/sound/isa/cs423x/cs4236.c
@@ -780,10 +780,8 @@ static int __init alsa_card_cs423x_init(void)
780 continue; 780 continue;
781 device = platform_device_register_simple(CS423X_DRIVER, 781 device = platform_device_register_simple(CS423X_DRIVER,
782 i, NULL, 0); 782 i, NULL, 0);
783 if (IS_ERR(device)) { 783 if (IS_ERR(device))
784 err = PTR_ERR(device); 784 continue;
785 goto errout;
786 }
787 platform_devices[i] = device; 785 platform_devices[i] = device;
788 snd_cs423x_devices++; 786 snd_cs423x_devices++;
789 } 787 }
@@ -802,14 +800,10 @@ static int __init alsa_card_cs423x_init(void)
802#ifdef MODULE 800#ifdef MODULE
803 printk(KERN_ERR IDENT " soundcard not found or device busy\n"); 801 printk(KERN_ERR IDENT " soundcard not found or device busy\n");
804#endif 802#endif
805 err = -ENODEV; 803 snd_cs423x_unregister_all();
806 goto errout; 804 return -ENODEV;
807 } 805 }
808 return 0; 806 return 0;
809
810 errout:
811 snd_cs423x_unregister_all();
812 return err;
813} 807}
814 808
815static void __exit alsa_card_cs423x_exit(void) 809static void __exit alsa_card_cs423x_exit(void)