Input: pwm-beeper - fix - scheduling while atomic
authorManfred Schlaegl <manfred.schlaegl@gmx.at>
Fri, 27 May 2016 23:36:36 +0000 (16:36 -0700)
committerSasha Levin <sasha.levin@oracle.com>
Mon, 6 Jun 2016 23:12:35 +0000 (19:12 -0400)
commitb289a9dc95c5967d453762a6f33147b3638cb30b
treeab1336be3a8df84b9eb5ae291269d2a108904a9d
parent25fda3aef19fc295e7e0e978ad39445548ef48af
Input: pwm-beeper - fix - scheduling while atomic

[ Upstream commit f49cf3b8b4c841457244c461c66186a719e13bcc ]

Pwm config may sleep so defer it using a worker.

On a Freescale i.MX53 based board we ran into "BUG: scheduling while
atomic" because input_inject_event locks interrupts, but
imx_pwm_config_v2 sleeps.

Tested on Freescale i.MX53 SoC with 4.6.0.

Signed-off-by: Manfred Schlaegl <manfred.schlaegl@gmx.at>
Cc: stable@vger.kernel.org
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
drivers/input/misc/pwm-beeper.c