|
|
@@ -4205,14 +4205,14 @@ void brcmf_sdio_remove(struct brcmf_sdio *bus)
|
|
|
/* De-register interrupt handler */
|
|
|
brcmf_sdiod_intr_unregister(bus->sdiodev);
|
|
|
|
|
|
- cancel_work_sync(&bus->datawork);
|
|
|
- if (bus->brcmf_wq)
|
|
|
- destroy_workqueue(bus->brcmf_wq);
|
|
|
-
|
|
|
if (bus->sdiodev->bus_if->drvr) {
|
|
|
brcmf_detach(bus->sdiodev->dev);
|
|
|
}
|
|
|
|
|
|
+ cancel_work_sync(&bus->datawork);
|
|
|
+ if (bus->brcmf_wq)
|
|
|
+ destroy_workqueue(bus->brcmf_wq);
|
|
|
+
|
|
|
if (bus->ci) {
|
|
|
if (bus->sdiodev->bus_if->state == BRCMF_BUS_DOWN) {
|
|
|
sdio_claim_host(bus->sdiodev->func[1]);
|