diff options
Diffstat (limited to 'drivers/net/wireless/brcm80211/brcmfmac/dhd_sdio.c')
-rw-r--r-- | drivers/net/wireless/brcm80211/brcmfmac/dhd_sdio.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/net/wireless/brcm80211/brcmfmac/dhd_sdio.c b/drivers/net/wireless/brcm80211/brcmfmac/dhd_sdio.c index f80151b3696b..8c00014a760c 100644 --- a/drivers/net/wireless/brcm80211/brcmfmac/dhd_sdio.c +++ b/drivers/net/wireless/brcm80211/brcmfmac/dhd_sdio.c | |||
@@ -3408,9 +3408,11 @@ void brcmf_sdbrcm_bus_stop(struct brcmf_sdio *bus) | |||
3408 | up(&bus->sdsem); | 3408 | up(&bus->sdsem); |
3409 | } | 3409 | } |
3410 | 3410 | ||
3411 | int brcmf_sdbrcm_bus_init(struct brcmf_pub *drvr) | 3411 | int brcmf_sdbrcm_bus_init(struct device *dev) |
3412 | { | 3412 | { |
3413 | struct brcmf_sdio *bus = drvr->bus; | 3413 | struct brcmf_bus *bus_if = dev_get_drvdata(dev); |
3414 | struct brcmf_sdio_dev *sdiodev = bus_if->bus_priv; | ||
3415 | struct brcmf_sdio *bus = sdiodev->bus; | ||
3414 | unsigned long timeout; | 3416 | unsigned long timeout; |
3415 | uint retries = 0; | 3417 | uint retries = 0; |
3416 | u8 ready, enable; | 3418 | u8 ready, enable; |
@@ -3420,7 +3422,7 @@ int brcmf_sdbrcm_bus_init(struct brcmf_pub *drvr) | |||
3420 | brcmf_dbg(TRACE, "Enter\n"); | 3422 | brcmf_dbg(TRACE, "Enter\n"); |
3421 | 3423 | ||
3422 | /* try to download image and nvram to the dongle */ | 3424 | /* try to download image and nvram to the dongle */ |
3423 | if (drvr->bus_if->state == BRCMF_BUS_DOWN) { | 3425 | if (bus_if->state == BRCMF_BUS_DOWN) { |
3424 | if (!(brcmf_sdbrcm_download_firmware(bus))) | 3426 | if (!(brcmf_sdbrcm_download_firmware(bus))) |
3425 | return -1; | 3427 | return -1; |
3426 | } | 3428 | } |
@@ -3486,7 +3488,7 @@ int brcmf_sdbrcm_bus_init(struct brcmf_pub *drvr) | |||
3486 | SBSDIO_WATERMARK, 8, &err); | 3488 | SBSDIO_WATERMARK, 8, &err); |
3487 | 3489 | ||
3488 | /* Set bus state according to enable result */ | 3490 | /* Set bus state according to enable result */ |
3489 | drvr->bus_if->state = BRCMF_BUS_DATA; | 3491 | bus_if->state = BRCMF_BUS_DATA; |
3490 | } | 3492 | } |
3491 | 3493 | ||
3492 | else { | 3494 | else { |
@@ -3501,7 +3503,7 @@ int brcmf_sdbrcm_bus_init(struct brcmf_pub *drvr) | |||
3501 | SBSDIO_FUNC1_CHIPCLKCSR, saveclk, &err); | 3503 | SBSDIO_FUNC1_CHIPCLKCSR, saveclk, &err); |
3502 | 3504 | ||
3503 | /* If we didn't come up, turn off backplane clock */ | 3505 | /* If we didn't come up, turn off backplane clock */ |
3504 | if (drvr->bus_if->state != BRCMF_BUS_DATA) | 3506 | if (bus_if->state != BRCMF_BUS_DATA) |
3505 | brcmf_sdbrcm_clkctl(bus, CLK_NONE, false); | 3507 | brcmf_sdbrcm_clkctl(bus, CLK_NONE, false); |
3506 | 3508 | ||
3507 | exit: | 3509 | exit: |