Hi Tony, On Wed, Jan 06, 2021 at 02:58:21PM +0200, Tony Lindgren wrote: > @@ -301,6 +348,7 @@ static int omap4_keypad_probe(struct platform_device *pdev) > } > > keypad_data->irq = irq; > + mutex_init(&keypad_data->lock); > > error = omap4_keypad_parse_dt(&pdev->dev, keypad_data); > if (error) > @@ -320,6 +368,8 @@ static int omap4_keypad_probe(struct platform_device *pdev) > goto err_release_mem; > } > > + pm_runtime_use_autosuspend(&pdev->dev); > + pm_runtime_set_autosuspend_delay(&pdev->dev, OMAP4_KEYPAD_AUTOIDLE_MS); This, and corresponding changes in open() and close() seem like a separate improvement. Do you mind splitting them into a separate patch, and have the missing key release fix go on top of it? Thanks. -- Dmitry