mwifiex: fix SDIO firmware dump problem
authorAmitkumar Karwar <akarwar@marvell.com>
Tue, 26 May 2015 13:34:27 +0000 (06:34 -0700)
committerKalle Valo <kvalo@codeaurora.org>
Tue, 2 Jun 2015 20:15:53 +0000 (23:15 +0300)
It's been observed that firmware doesn't go back to normal
state when all firmware memories are dumped. As a result,
further commands are blocked. This happens due to missing
driver change of writing READ DONE to control register for
SDIO interface.

This patch adds a missing change to fix the problem.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Cathy Luo <cluo@marvell.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/mwifiex/sdio.c

index f4b1de7977ab6f03c5e956c4496f90003747c3bd..a3d810b866c17b0a9dfebc6bebec391dc60fd7bb 100644 (file)
@@ -2241,6 +2241,13 @@ static void mwifiex_sdio_fw_dump_work(struct mwifiex_adapter *adapter)
 
                if (memory_size == 0) {
                        mwifiex_dbg(adapter, DUMP, "Firmware dump Finished!\n");
+                       ret = mwifiex_write_reg(adapter,
+                                               card->reg->fw_dump_ctrl,
+                                               FW_DUMP_READ_DONE);
+                       if (ret) {
+                               mwifiex_dbg(adapter, ERROR, "SDIO write err\n");
+                               return;
+                       }
                        break;
                }