aboutsummaryrefslogtreecommitdiffstats
path: root/sound/arm/sa11xx-uda1341.c
diff options
context:
space:
mode:
Diffstat (limited to 'sound/arm/sa11xx-uda1341.c')
-rw-r--r--sound/arm/sa11xx-uda1341.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/sound/arm/sa11xx-uda1341.c b/sound/arm/sa11xx-uda1341.c
index 13057d92f08a..b88fb0c5a68a 100644
--- a/sound/arm/sa11xx-uda1341.c
+++ b/sound/arm/sa11xx-uda1341.c
@@ -112,7 +112,7 @@ MODULE_LICENSE("GPL");
112MODULE_DESCRIPTION("SA1100/SA1111 + UDA1341TS driver for ALSA"); 112MODULE_DESCRIPTION("SA1100/SA1111 + UDA1341TS driver for ALSA");
113MODULE_SUPPORTED_DEVICE("{{UDA1341,iPAQ H3600 UDA1341TS}}"); 113MODULE_SUPPORTED_DEVICE("{{UDA1341,iPAQ H3600 UDA1341TS}}");
114 114
115static char *id = NULL; /* ID for this card */ 115static char *id; /* ID for this card */
116 116
117module_param(id, charp, 0444); 117module_param(id, charp, 0444);
118MODULE_PARM_DESC(id, "ID string for SA1100/SA1111 + UDA1341TS soundcard."); 118MODULE_PARM_DESC(id, "ID string for SA1100/SA1111 + UDA1341TS soundcard.");
@@ -984,11 +984,15 @@ static int __init sa11xx_uda1341_init(void)
984 if ((err = platform_driver_register(&sa11xx_uda1341_driver)) < 0) 984 if ((err = platform_driver_register(&sa11xx_uda1341_driver)) < 0)
985 return err; 985 return err;
986 device = platform_device_register_simple(SA11XX_UDA1341_DRIVER, -1, NULL, 0); 986 device = platform_device_register_simple(SA11XX_UDA1341_DRIVER, -1, NULL, 0);
987 if (IS_ERR(device)) { 987 if (!IS_ERR(device)) {
988 platform_driver_unregister(&sa11xx_uda1341_driver); 988 if (platform_get_drvdata(device))
989 return PTR_ERR(device); 989 return 0;
990 } 990 platform_device_unregister(device);
991 return 0; 991 err = -ENODEV
992 } else
993 err = PTR_ERR(device);
994 platform_driver_unregister(&sa11xx_uda1341_driver);
995 return err;
992} 996}
993 997
994static void __exit sa11xx_uda1341_exit(void) 998static void __exit sa11xx_uda1341_exit(void)