Re: [PATCH 3/7] Input: ep93xx_keypad: Prepare clock before using it

From: Dmitry Torokhov
Date: Mon Jun 14 2021 - 17:56:09 EST


Hi Alexander,

On Mon, Jun 14, 2021 at 01:30:37AM +0200, Alexander Sverdlin wrote:
> Use clk_prepare_enable()/clk_disable_unprepare() in preparation for switch
> to Common Clock Framework.

Can this be merged standalone?

>
> Signed-off-by: Alexander Sverdlin <alexander.sverdlin@xxxxxxxxx>
> ---
> drivers/input/keyboard/ep93xx_keypad.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/input/keyboard/ep93xx_keypad.c b/drivers/input/keyboard/ep93xx_keypad.c
> index c8194333d612..e0e931e796fa 100644
> --- a/drivers/input/keyboard/ep93xx_keypad.c
> +++ b/drivers/input/keyboard/ep93xx_keypad.c
> @@ -157,7 +157,7 @@ static int ep93xx_keypad_open(struct input_dev *pdev)
>
> if (!keypad->enabled) {
> ep93xx_keypad_config(keypad);
> - clk_enable(keypad->clk);
> + clk_prepare_enable(keypad->clk);
> keypad->enabled = true;
> }
>
> @@ -169,7 +169,7 @@ static void ep93xx_keypad_close(struct input_dev *pdev)
> struct ep93xx_keypad *keypad = input_get_drvdata(pdev);
>
> if (keypad->enabled) {
> - clk_disable(keypad->clk);
> + clk_disable_unprepare(keypad->clk);
> keypad->enabled = false;

While we are at it, I wonder about handling suspend/resume. I see that
we disable the clock even if keyboard is configured as a wakeup source.
Is it really capable of waking up the system when clock is off?

Thanks.

--
Dmitry