staging: brcm80211: absorb brcmf_sdcard_detach into brcmf_sdio_remove

To increase code readability of brcmfmac

Reviewed-by: Roland Vossen <rvossen@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Franky Lin 2011-08-08 15:58:36 +02:00 committed by Greg Kroah-Hartman
parent 0f188ea3d9
commit 9917124f23
2 changed files with 14 additions and 21 deletions

View file

@ -57,19 +57,6 @@ static struct brcmf_sdioh_driver drvinfo = { NULL, NULL };
module_param(sd_f2_blocksize, int, 0);
int brcmf_sdcard_detach(struct brcmf_sdio_card *card)
{
if (card != NULL) {
if (card->sdioh) {
brcmf_sdioh_detach(card->sdioh);
card->sdioh = NULL;
}
kfree(card);
}
return 0;
}
int
brcmf_sdcard_iovar_op(struct brcmf_sdio_card *card, const char *name,
void *params, int plen, void *arg, int len, bool set)
@ -441,7 +428,6 @@ int brcmf_sdio_probe(struct brcmf_sdio_dev *sdiodev)
sdiodev->card->sdioh = brcmf_sdioh_attach((void *)0);
if (!sdiodev->card->sdioh) {
brcmf_sdcard_detach(sdiodev->card);
ret = -ENODEV;
goto out;
}
@ -466,8 +452,8 @@ int brcmf_sdio_probe(struct brcmf_sdio_dev *sdiodev)
}
out:
if ((ret) && (sdiodev->card))
brcmf_sdcard_detach(sdiodev->card);
if (ret)
brcmf_sdio_remove(sdiodev);
return ret;
}
@ -475,8 +461,18 @@ EXPORT_SYMBOL(brcmf_sdio_probe);
int brcmf_sdio_remove(struct brcmf_sdio_dev *sdiodev)
{
drvinfo.detach(sdiodev->bus);
brcmf_sdcard_detach(sdiodev->card);
if (sdiodev->bus) {
drvinfo.detach(sdiodev->bus);
sdiodev->bus = NULL;
}
if (sdiodev->card) {
if (sdiodev->card->sdioh)
brcmf_sdioh_detach(sdiodev->card->sdioh);
kfree(sdiodev->card);
sdiodev->card = NULL;
}
return 0;
}
EXPORT_SYMBOL(brcmf_sdio_remove);

View file

@ -136,9 +136,6 @@ struct brcmf_sdio_dev {
void *bus;
};
/* Detach - freeup resources allocated in attach */
extern int brcmf_sdcard_detach(struct brcmf_sdio_card *card);
/* Enable/disable SD interrupt */
extern int brcmf_sdcard_intr_enable(struct brcmf_sdio_card *card);
extern int brcmf_sdcard_intr_disable(struct brcmf_sdio_card *card);