Re: [PATCH 2/4] input/nomadik-ske: suspend and resume support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Linus,

On Sun, Jun 17, 2012 at 04:17:51PM +0200, Linus Walleij wrote:
> From: Naveen Kumar Gaddipati <naveen.gaddipati@xxxxxxxxxxxxxx>
> 
> Suspend and resume support for ske keypad by using disable or
> enable of keypad.

I do not understand this changelog entry. The driver appears to already
have suspend/resume handling, but apparently it is deficient. Please
explain exactly why old implementation is not enough.

> 
> Signed-off-by: Naveen Kumar Gaddipati <naveen.gaddipati@xxxxxxxxxxxxxx>
> Reviewed-by: Srinidhi Kasagar <srinidhi.kasagar@xxxxxxxxxxxxxx>
> Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
> ---
>  drivers/input/keyboard/nomadik-ske-keypad.c |   12 +++++++++---
>  1 file changed, 9 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/input/keyboard/nomadik-ske-keypad.c b/drivers/input/keyboard/nomadik-ske-keypad.c
> index 6857454..68c36a7 100644
> --- a/drivers/input/keyboard/nomadik-ske-keypad.c
> +++ b/drivers/input/keyboard/nomadik-ske-keypad.c
> @@ -368,8 +368,11 @@ static int ske_keypad_suspend(struct device *dev)
>  
>  	if (device_may_wakeup(dev))
>  		enable_irq_wake(irq);
> -	else
> +	else {
> +		disable_irq(keypad->irq);
>  		ske_keypad_set_bits(keypad, SKE_IMSC, ~SKE_KPIMA, 0x0);
> +		clk_disable(keypad->clk);
> +	}
>  
>  	return 0;
>  }
> @@ -382,8 +385,11 @@ static int ske_keypad_resume(struct device *dev)
>  
>  	if (device_may_wakeup(dev))
>  		disable_irq_wake(irq);
> -	else
> -		ske_keypad_set_bits(keypad, SKE_IMSC, 0x0, SKE_KPIMA);
> +	else {
> +		clk_enable(keypad->clk);
> +		enable_irq(keypad->irq);
> +		ske_keypad_chip_init(keypad);

ske_keypad_chip_init() is marked __init, if it is used in resume it has
to lose this markup.

Thanks.

-- 
Dmitry
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux