diff mbox

[1/6] mwifiex: fix SDIO firmware dump problem

Message ID 1432647272-5734-2-git-send-email-akarwar@marvell.com (mailing list archive)
State Accepted
Delegated to: Kalle Valo
Headers show

Commit Message

Amitkumar Karwar May 26, 2015, 1:34 p.m. UTC
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>
---
 drivers/net/wireless/mwifiex/sdio.c | 7 +++++++
 1 file changed, 7 insertions(+)

Comments

Kalle Valo June 2, 2015, 8:18 p.m. UTC | #1
> 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>

Thanks, 6 patches applied to wireless-drivers-next.git:

e065ddb89175 mwifiex: fix SDIO firmware dump problem
0769b27739ee mwifiex: fix a possible double free issue
38b130e22e40 mwifiex: dump driver information for PCIe interface
9cc0dbf04367 mwifiex: minor changes in debug messages
fc697159ad4c mwifiex: use generic name 'device dump'
57670ee882d4 mwifiex: device dump support via devcoredump framework

Kalle Valo
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/net/wireless/mwifiex/sdio.c b/drivers/net/wireless/mwifiex/sdio.c
index f4b1de7..a3d810b8 100644
--- a/drivers/net/wireless/mwifiex/sdio.c
+++ b/drivers/net/wireless/mwifiex/sdio.c
@@ -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;
 		}