Re: [PATCHv3 1/2] Input: pwm-vibra: new driver
From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Date: 2017-05-10 21:56:56
Also in:
linux-devicetree, linux-omap, lkml
From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Date: 2017-05-10 21:56:56
Also in:
linux-devicetree, linux-omap, lkml
On Mon, May 08, 2017 at 08:51:28PM +0200, Sebastian Reichel wrote:
On Sun, May 07, 2017 at 02:38:00PM -0700, Dmitry Torokhov wrote:quoted
quoted
+static int __maybe_unused pwm_vibrator_suspend(struct device *dev) +{ + struct platform_device *pdev = to_platform_device(dev); + struct pwm_vibrator *vibrator = platform_get_drvdata(pdev); + struct input_dev *input = vibrator->input; + unsigned long flags; + + spin_lock_irqsave(&input->event_lock, flags);Hmm, no, this is not goting to work. The original patch had a chance if PWM was not sleeping, but with introduction of regulator and work this definitely sleeps.Actually PWM is sleeping, that's why I added work (regulator was added later) :)quoted
I think we should solve issue of events [not] being delivered during suspend transition in input core, and simply drop spin_lock_irqsave() here and in resume().Sounds good. will you take care of the input-core change?
Yeah, I'll add it to my todo... In the mean time, when you sending a new version of this driver simply drop spin_lock_irqsave/spin_unlock_irqrestore. Thanks. -- Dmitry