int wl_glue_unregister(void) { int err; if (!wl_glue_attached) return -ENOSYS; switch (active_bus_type) { #ifdef CONFIG_SSB case WL_GLUE_BUS_TYPE_SSB: ssb_driver_unregister(&wl_glue_ssb_driver); err = 0; break; #endif /* CONFIG_SSB */ #ifdef CONFIG_BCMA case WL_GLUE_BUS_TYPE_BCMA: bcma_driver_unregister(&wl_glue_bcma_driver); err = 0; break; #endif /* CONFIG_BCMA */ default: pr_err("Not removing glue driver due to unsupported bus\n"); err = -ENOSYS; break; } if (!err) { pr_info("SSB/BCMA glue driver successfully detached\n"); wl_glue_attached = 0; } return err; }
static void __exit ssb_hcd_exit(void) { ssb_driver_unregister(&ssb_hcd_driver); }