@@ -447,6 +447,9 @@ static void ath6kl_sdio_irq_handler(struct sdio_func *func)
int status;
struct ath6kl_sdio *ar_sdio;
+ if (ath6kl_wd_poll_is_ture())
+ return;
+
ath6kl_dbg(ATH6KL_DBG_SDIO, "irq\n");
ar_sdio = sdio_get_drvdata(func);
@@ -858,6 +861,8 @@ static int ath6kl_sdio_probe(struct sdio_func *func,
sdio_release_host(func);
+ ath6kl_wd_init(ar);
+
ret = ath6kl_core_init(ar);
if (ret) {
ath6kl_err("Failed to init ath6kl core\n");
@@ -891,6 +896,8 @@ static void ath6kl_sdio_remove(struct sdio_func *func)
ath6kl_stop_txrx(ar_sdio->ar);
cancel_work_sync(&ar_sdio->wr_async_work);
+ ath6kl_wd_cleanup(ar_sdio->ar);
+
ath6kl_unavail_ev(ar_sdio->ar);
ath6kl_sdio_power_off(ar_sdio);
Add SDIO polling function into SDIO related file Signed-off-by: Sangwook Lee <sangwook.lee@linaro.org> --- drivers/net/wireless/ath/ath6kl/sdio.c | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-)