summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/ssb/main.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/ssb/main.c b/drivers/ssb/main.c
index 65a1ed951a1d..8d16cb258ccf 100644
--- a/drivers/ssb/main.c
+++ b/drivers/ssb/main.c
@@ -1358,8 +1358,10 @@ static int __init ssb_modinit(void)
ssb_buses_lock();
err = ssb_attach_queued_buses();
ssb_buses_unlock();
- if (err)
+ if (err) {
bus_unregister(&ssb_bustype);
+ goto out;
+ }
err = b43_pci_ssb_bridge_init();
if (err) {
@@ -1375,7 +1377,7 @@ static int __init ssb_modinit(void)
/* don't fail SSB init because of this */
err = 0;
}
-
+out:
return err;
}
/* ssb must be initialized after PCI but before the ssb drivers.