mwifiex: uninit wakeup info in the error handling
authorJeffy Chen <jeffy.chen@rock-chips.com>
Thu, 6 Jul 2017 07:55:28 +0000 (15:55 +0800)
committerKalle Valo <kvalo@codeaurora.org>
Fri, 28 Jul 2017 14:50:13 +0000 (17:50 +0300)
We inited wakeup info at the beginning of mwifiex_add_card, so we need
to uninit it in the error handling.

It's much the same as what we did in:
36908c4 mwifiex: uninit wakeup info when removing device

Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
Reviewed-by: Brian Norris <briannorris@chromium.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/marvell/mwifiex/main.c

index 13fc7b6..386993a 100644 (file)
@@ -667,8 +667,11 @@ done:
                release_firmware(adapter->firmware);
                adapter->firmware = NULL;
        }
-       if (init_failed)
+       if (init_failed) {
+               if (adapter->irq_wakeup >= 0)
+                       device_init_wakeup(adapter->dev, false);
                mwifiex_free_adapter(adapter);
+       }
        /* Tell all current and future waiters we're finished */
        complete_all(fw_done);
 
@@ -1668,6 +1671,8 @@ err_registerdev:
                mwifiex_free_cmd_buffers(adapter);
        }
 err_kmalloc:
+       if (adapter->irq_wakeup >= 0)
+               device_init_wakeup(adapter->dev, false);
        mwifiex_free_adapter(adapter);
 
 err_init_sw: