1
0
Fork 0

brcmfmac: postpone interrupt register function

For out of band interrupt which is going to be introduced shortly,
the interrupt register function must be called after firmware is
downloaded. This patch moves it from brcmf_sdbrcm_probe to
brcmf_sdbrcm_bus_init.

Reviewed-by: pieter-paul giesberts <pieterpg@broadcom.com>
Reviewed-by: arend van spriel <arend@broadcom.com>
Signed-off-by: franky lin <frankyl@broadcom.com>
Signed-off-by: Franky Lin <frankyl@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
hifive-unleashed-5.1
Franky Lin 2012-04-27 18:56:58 -07:00 committed by John W. Linville
parent d9126e0c42
commit e2f93cc321
1 changed files with 6 additions and 9 deletions

View File

@ -3508,6 +3508,12 @@ static int brcmf_sdbrcm_bus_init(struct device *dev)
brcmf_sdcard_cfg_write(bus->sdiodev, SDIO_FUNC_1,
SBSDIO_FUNC1_CHIPCLKCSR, saveclk, &err);
if (ret == 0) {
ret = brcmf_sdcard_intr_reg(bus->sdiodev);
if (ret != 0)
brcmf_dbg(ERROR, "intr register failed:%d\n", ret);
}
/* If we didn't come up, turn off backplane clock */
if (bus_if->state != BRCMF_BUS_DATA)
brcmf_sdbrcm_clkctl(bus, CLK_NONE, false);
@ -3968,15 +3974,6 @@ void *brcmf_sdbrcm_probe(u32 regsva, struct brcmf_sdio_dev *sdiodev)
goto fail;
}
/* Register interrupt callback, but mask it (not operational yet). */
brcmf_dbg(INTR, "disable SDIO interrupts (not interested yet)\n");
ret = brcmf_sdcard_intr_reg(bus->sdiodev);
if (ret != 0) {
brcmf_dbg(ERROR, "FAILED: sdcard_intr_reg returned %d\n", ret);
goto fail;
}
brcmf_dbg(INTR, "registered SDIO interrupt function ok\n");
brcmf_dbg(INFO, "completed!!\n");
/* if firmware path present try to download and bring up bus */