mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-26 16:41:25 +00:00
Input: spear_keyboard - fix clock handling during suspend/resume
SPEAr keyboard should normally disable clock during suspend and enable it during resume. For cases where it is expected to act as a wakeup source the clock can remain in the same state i.e. kept enabled if it is being used. Signed-off-by: Shiraz Hashim <shiraz.hashim@st.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
This commit is contained in:
parent
9a932145f2
commit
53fe628558
1 changed files with 10 additions and 8 deletions
|
@ -320,11 +320,12 @@ static int spear_kbd_suspend(struct device *dev)
|
||||||
|
|
||||||
mutex_lock(&input_dev->mutex);
|
mutex_lock(&input_dev->mutex);
|
||||||
|
|
||||||
if (input_dev->users)
|
if (device_may_wakeup(&pdev->dev)) {
|
||||||
clk_enable(kbd->clk);
|
|
||||||
|
|
||||||
if (device_may_wakeup(&pdev->dev))
|
|
||||||
enable_irq_wake(kbd->irq);
|
enable_irq_wake(kbd->irq);
|
||||||
|
} else {
|
||||||
|
if (input_dev->users)
|
||||||
|
clk_disable(kbd->clk);
|
||||||
|
}
|
||||||
|
|
||||||
mutex_unlock(&input_dev->mutex);
|
mutex_unlock(&input_dev->mutex);
|
||||||
|
|
||||||
|
@ -339,11 +340,12 @@ static int spear_kbd_resume(struct device *dev)
|
||||||
|
|
||||||
mutex_lock(&input_dev->mutex);
|
mutex_lock(&input_dev->mutex);
|
||||||
|
|
||||||
if (device_may_wakeup(&pdev->dev))
|
if (device_may_wakeup(&pdev->dev)) {
|
||||||
disable_irq_wake(kbd->irq);
|
disable_irq_wake(kbd->irq);
|
||||||
|
} else {
|
||||||
if (input_dev->users)
|
if (input_dev->users)
|
||||||
clk_enable(kbd->clk);
|
clk_enable(kbd->clk);
|
||||||
|
}
|
||||||
|
|
||||||
mutex_unlock(&input_dev->mutex);
|
mutex_unlock(&input_dev->mutex);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue