Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 674f3058 authored by Ohad Ben-Cohen's avatar Ohad Ben-Cohen Committed by Luciano Coelho
Browse files

wl1271: sdio: add suspend/resume support



Add required suspend/resume support to prevent the SDIO
core from removing our card completely during system suspend.

Signed-off-by: default avatarOhad Ben-Cohen <ohad@wizery.com>
Tested-by: default avatarLuciano Coelho <luciano.coelho@nokia.com>
Signed-off-by: default avatarLuciano Coelho <luciano.coelho@nokia.com>
parent 00cbb3c5
Loading
Loading
Loading
Loading
+20 −0
Original line number Original line Diff line number Diff line
@@ -290,11 +290,31 @@ static void __devexit wl1271_remove(struct sdio_func *func)
	wl1271_free_hw(wl);
	wl1271_free_hw(wl);
}
}


static int wl1271_suspend(struct device *dev)
{
	/* Tell MMC/SDIO core it's OK to power down the card
	 * (if it isn't already), but not to remove it completely */
	return 0;
}

static int wl1271_resume(struct device *dev)
{
	return 0;
}

static const struct dev_pm_ops wl1271_sdio_pm_ops = {
	.suspend	= wl1271_suspend,
	.resume		= wl1271_resume,
};

static struct sdio_driver wl1271_sdio_driver = {
static struct sdio_driver wl1271_sdio_driver = {
	.name		= "wl1271_sdio",
	.name		= "wl1271_sdio",
	.id_table	= wl1271_devices,
	.id_table	= wl1271_devices,
	.probe		= wl1271_probe,
	.probe		= wl1271_probe,
	.remove		= __devexit_p(wl1271_remove),
	.remove		= __devexit_p(wl1271_remove),
	.drv = {
		.pm = &wl1271_sdio_pm_ops,
	},
};
};


static int __init wl1271_init(void)
static int __init wl1271_init(void)