Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 278894
b: refs/heads/master
c: d76d1c8
h: refs/heads/master
v: v3
  • Loading branch information
Franky Lin authored and John W. Linville committed Dec 13, 2011
1 parent 93a8231 commit 6c1d254
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 15 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 4a38994f1c43351b4aaca01ae93bd574f5b5075e
refs/heads/master: d76d1c8c1deebe0c71872ac4e500d6a2233f80ff
3 changes: 1 addition & 2 deletions trunk/drivers/net/wireless/brcm80211/brcmfmac/bcmsdh.c
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,7 @@

static void brcmf_sdioh_irqhandler(struct sdio_func *func)
{
struct brcmf_bus *bus_if = dev_get_drvdata(&func->card->dev);
struct brcmf_sdio_dev *sdiodev = bus_if->bus_priv;
struct brcmf_sdio_dev *sdiodev = dev_get_drvdata(&func->card->dev);

brcmf_dbg(TRACE, "***IRQHandler\n");

Expand Down
23 changes: 11 additions & 12 deletions trunk/drivers/net/wireless/brcm80211/brcmfmac/bcmsdh_sdmmc.c
Original file line number Diff line number Diff line change
Expand Up @@ -481,12 +481,12 @@ static int brcmf_ops_sdio_probe(struct sdio_func *func,
kfree(bus_if);
return -ENOMEM;
}
sdiodev->dev = &func->card->dev;
sdiodev->func[0] = func->card->sdio_func[0];
sdiodev->func[1] = func;
sdiodev->bus_if = bus_if;
bus_if->bus_priv = sdiodev;
bus_if->type = SDIO_BUS;
dev_set_drvdata(&func->card->dev, bus_if);
dev_set_drvdata(&func->card->dev, sdiodev);

atomic_set(&sdiodev->suspend, false);
init_waitqueue_head(&sdiodev->request_byte_wait);
Expand All @@ -496,12 +496,15 @@ static int brcmf_ops_sdio_probe(struct sdio_func *func,
}

if (func->num == 2) {
bus_if = dev_get_drvdata(&func->card->dev);
sdiodev = bus_if->bus_priv;
sdiodev = dev_get_drvdata(&func->card->dev);
if ((!sdiodev) || (sdiodev->func[1]->card != func->card))
return -ENODEV;
sdiodev->func[2] = func;

bus_if = sdiodev->bus_if;
sdiodev->dev = &func->dev;
dev_set_drvdata(&func->dev, bus_if);

brcmf_dbg(TRACE, "F2 found, calling brcmf_sdio_probe...\n");
ret = brcmf_sdio_probe(sdiodev);
}
Expand All @@ -520,11 +523,12 @@ static void brcmf_ops_sdio_remove(struct sdio_func *func)
brcmf_dbg(INFO, "Function#: 0x%04x\n", func->num);

if (func->num == 2) {
bus_if = dev_get_drvdata(&func->card->dev);
bus_if = dev_get_drvdata(&func->dev);
sdiodev = bus_if->bus_priv;
brcmf_dbg(TRACE, "F2 found, calling brcmf_sdio_remove...\n");
brcmf_sdio_remove(sdiodev);
dev_set_drvdata(&func->card->dev, NULL);
dev_set_drvdata(&func->dev, NULL);
kfree(bus_if);
kfree(sdiodev);
}
Expand All @@ -534,15 +538,12 @@ static void brcmf_ops_sdio_remove(struct sdio_func *func)
static int brcmf_sdio_suspend(struct device *dev)
{
mmc_pm_flag_t sdio_flags;
struct brcmf_sdio_dev *sdiodev;
struct sdio_func *func = dev_to_sdio_func(dev);
struct brcmf_bus *bus_if = dev_get_drvdata(&func->card->dev);
struct brcmf_sdio_dev *sdiodev = dev_get_drvdata(&func->card->dev);
int ret = 0;

brcmf_dbg(TRACE, "\n");

sdiodev = bus_if->bus_priv;

atomic_set(&sdiodev->suspend, true);

sdio_flags = sdio_get_host_pm_caps(sdiodev->func[1]);
Expand All @@ -564,11 +565,9 @@ static int brcmf_sdio_suspend(struct device *dev)

static int brcmf_sdio_resume(struct device *dev)
{
struct brcmf_sdio_dev *sdiodev;
struct sdio_func *func = dev_to_sdio_func(dev);
struct brcmf_bus *bus_if = dev_get_drvdata(&func->card->dev);
struct brcmf_sdio_dev *sdiodev = dev_get_drvdata(&func->card->dev);

sdiodev = bus_if->bus_priv;
brcmf_sdio_wdtmr_enable(sdiodev, true);
atomic_set(&sdiodev->suspend, false);
return 0;
Expand Down
1 change: 1 addition & 0 deletions trunk/drivers/net/wireless/brcm80211/brcmfmac/sdio_host.h
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,7 @@ struct brcmf_sdio_dev {
wait_queue_head_t request_chain_wait;
wait_queue_head_t request_buffer_wait;
struct device *dev;
struct brcmf_bus *bus_if;
};

/* Register/deregister device interrupt handler. */
Expand Down

0 comments on commit 6c1d254

Please sign in to comment.