diff mbox

[v2] mwifiex: handle error if IRQ request fails in mwifiex_sdio_of()

Message ID 1473418678-14794-1-git-send-email-akarwar@marvell.com (mailing list archive)
State Accepted
Commit 6b03144d93fc7de7ef03334384fea0fab058fa6d
Delegated to: Kalle Valo
Headers show

Commit Message

Amitkumar Karwar Sept. 9, 2016, 10:57 a.m. UTC
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 <akarwar@marvell.com>
Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
---
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(-)

Comments

Kalle Valo Sept. 14, 2016, 5 p.m. UTC | #1
Amitkumar Karwar <akarwar@marvell.com> wrote:
> 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 <akarwar@marvell.com>
> Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>

Thanks, 1 patch applied to wireless-drivers-next.git:

6b03144d93fc mwifiex: handle error if IRQ request fails in mwifiex_sdio_of()
diff mbox

Patch

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);
 		}