diff options
author | hongkun.cao <hongkun.cao@mediatek.com> | 2016-06-02 23:28:14 -0400 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2016-06-08 04:09:40 -0400 |
commit | d2fcd62a9c6ad5122cbe2c8f5a45e2f31dbda169 (patch) | |
tree | c298080e104d8438feadfe0dfb1af8c5acc7616e /drivers/pinctrl/mediatek | |
parent | 4d6ddd3b2279d56a72a75a3c07c85f69c4f94eef (diff) |
pinctrl: mediatek: fix suspend/resume timing issue
An irq which is a wake up source maybe masked unexpectedly if the wake
up source irq was triggered after pinctrl irqchip suspend and before
suspend_device_irqs finished.
Use *_noirq callbacks to guarantee pinctrl irqchip suspend would be
called after suspend_devices_irqs.
Signed-off-by: hongkun.cao <hongkun.cao@mediatek.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/pinctrl/mediatek')
-rw-r--r-- | drivers/pinctrl/mediatek/pinctrl-mtk-common.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/pinctrl/mediatek/pinctrl-mtk-common.c b/drivers/pinctrl/mediatek/pinctrl-mtk-common.c index 207b13b618cf..5db59a64f147 100644 --- a/drivers/pinctrl/mediatek/pinctrl-mtk-common.c +++ b/drivers/pinctrl/mediatek/pinctrl-mtk-common.c | |||
@@ -1183,8 +1183,8 @@ static int mtk_eint_resume(struct device *device) | |||
1183 | } | 1183 | } |
1184 | 1184 | ||
1185 | const struct dev_pm_ops mtk_eint_pm_ops = { | 1185 | const struct dev_pm_ops mtk_eint_pm_ops = { |
1186 | .suspend = mtk_eint_suspend, | 1186 | .suspend_noirq = mtk_eint_suspend, |
1187 | .resume = mtk_eint_resume, | 1187 | .resume_noirq = mtk_eint_resume, |
1188 | }; | 1188 | }; |
1189 | 1189 | ||
1190 | static void mtk_eint_ack(struct irq_data *d) | 1190 | static void mtk_eint_ack(struct irq_data *d) |