When this failure occurs, we will clear card->plt_wake_cfg so that
device would initialize without wake up on external interrupt feature.
This feature specific code in suspend and resume handlers will be
skipped.

Signed-off-by: Amitkumar Karwar <[email protected]>
Reviewed-by: Javier Martinez Canillas <[email protected]>
---
We were returning error in this failure case in v1 patch from Javier
Martinez Canillas. In v2, we allow device to initialize successfully.
---
 drivers/net/wireless/marvell/mwifiex/sdio.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/net/wireless/marvell/mwifiex/sdio.c 
b/drivers/net/wireless/marvell/mwifiex/sdio.c
index 6dba409..8718950 100644
--- a/drivers/net/wireless/marvell/mwifiex/sdio.c
+++ b/drivers/net/wireless/marvell/mwifiex/sdio.c
@@ -122,9 +122,11 @@ static int mwifiex_sdio_probe_of(struct device *dev, 
struct sdio_mmc_card *card)
                                               IRQF_TRIGGER_LOW,
                                               "wifi_wake", cfg);
                        if (ret) {
-                               dev_err(dev,
+                               dev_dbg(dev,
                                        "Failed to request irq_wifi %d (%d)\n",
                                        cfg->irq_wifi, ret);
+                               card->plt_wake_cfg = NULL;
+                               return 0;
                        }
                        disable_irq(cfg->irq_wifi);
                }
-- 
1.9.1

Reply via email to