From a6aecae29affdd1a84198afe45ef9e13ecbf9826 Mon Sep 17 00:00:00 2001 From: Russell King Date: Sat, 21 Jan 2012 18:03:00 +0000 Subject: [PATCH] MFD: mcp-sa11x0: use _noirq resume methods The genirq code requires early access to interrupt controllers. In order to allow this, we need to resume the MCP via the _noirq methods instead of the standard methods. Acked-by: Jochen Friedrich Signed-off-by: Russell King --- drivers/mfd/mcp-sa11x0.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/mfd/mcp-sa11x0.c b/drivers/mfd/mcp-sa11x0.c index 46167f676129..420710b19f2d 100644 --- a/drivers/mfd/mcp-sa11x0.c +++ b/drivers/mfd/mcp-sa11x0.c @@ -289,7 +289,14 @@ static int mcp_sa11x0_resume(struct device *dev) #endif static const struct dev_pm_ops mcp_sa11x0_pm_ops = { - SET_SYSTEM_SLEEP_PM_OPS(mcp_sa11x0_suspend, mcp_sa11x0_resume) +#ifdef CONFIG_PM_SLEEP + .suspend = mcp_sa11x0_suspend, + .freeze = mcp_sa11x0_suspend, + .poweroff = mcp_sa11x0_suspend, + .resume_noirq = mcp_sa11x0_resume, + .thaw_noirq = mcp_sa11x0_resume, + .restore_noirq = mcp_sa11x0_resume, +#endif }; static struct platform_driver mcp_sa11x0_driver = { -- 2.20.1