lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <ZXVd3RcTdHi3MifB@google.com>
Date:   Sat, 9 Dec 2023 22:42:37 -0800
From:   Dmitry Torokhov <dmitry.torokhov@...il.com>
To:     Andreas Kemnade <andreas@...nade.info>
Cc:     tony@...mide.com, frank.li@...o.com,
        u.kleine-koenig@...gutronix.de, Jonathan.Cameron@...wei.com,
        robh@...nel.org, linux-input@...r.kernel.org,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH RESEND] Input: omap4-keypad: react on keypresses if
 device is runtime-suspended

Hi Andreas,

On Sat, Dec 09, 2023 at 12:20:58PM +0100, Andreas Kemnade wrote:
> According to SWPU235AB, table 26-6, fclk is required to generate events
> at least on OMAP4460, so keep fclk enabled all the time the device
> is opened.
> 
> Suggested-by: Tony Lindgren <tony@...mide.com>
> Signed-off-by: Andreas Kemnade <andreas@...nade.info>
> Reviewed-by: Tony Lindgren <tony@...mide.com>
> ---
> Changes since RFC:
> - add R-by:
> 
>  drivers/input/keyboard/omap4-keypad.c | 10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/drivers/input/keyboard/omap4-keypad.c b/drivers/input/keyboard/omap4-keypad.c
> index d3f8688fdd9c3..7d83aff95617f 100644
> --- a/drivers/input/keyboard/omap4-keypad.c
> +++ b/drivers/input/keyboard/omap4-keypad.c
> @@ -11,6 +11,7 @@
>  #include <linux/module.h>
>  #include <linux/interrupt.h>
>  #include <linux/platform_device.h>
> +#include <linux/clk.h>
>  #include <linux/errno.h>
>  #include <linux/io.h>
>  #include <linux/of.h>
> @@ -83,6 +84,7 @@ struct omap4_keypad {
>  	bool no_autorepeat;
>  	u64 keys;
>  	unsigned short *keymap;
> +	struct clk *fck;
>  };
>  
>  static int kbd_readl(struct omap4_keypad *keypad_data, u32 offset)
> @@ -211,6 +213,8 @@ static int omap4_keypad_open(struct input_dev *input)
>  
>  	disable_irq(keypad_data->irq);
>  
> +	clk_prepare_enable(keypad_data->fck);

I believe this needs error handling.

Thanks.

-- 
Dmitry

Powered by blists - more mailing lists