usb: renesas: fix scheduling in atomic context bug
authorGuennadi Liakhovetski <g.liakhovetski@gmx.de>
Tue, 14 Feb 2012 10:37:21 +0000 (11:37 +0100)
committerFelipe Balbi <balbi@ti.com>
Tue, 14 Feb 2012 11:44:53 +0000 (13:44 +0200)
commit6e4b74e4690dd03b5664fa4895c3db0607d64742
tree607c5bd1c23be029b589971e512458fde91ed0fa
parentd5261286949fc9ada701c7e30bf89e08a6dbf4de
usb: renesas: fix scheduling in atomic context bug

The current renesas_usbhs driver triggers

BUG: scheduling while atomic: ksoftirqd/0/3/0x00000102

with enabled CONFIG_DEBUG_ATOMIC_SLEEP, by submitting DMA transfers from
an atomic (tasklet) context, which is not supported by the shdma dmaengine
driver. Fix it by switching to a work.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Felipe Balbi <balbi@ti.com>
drivers/usb/renesas_usbhs/fifo.c
drivers/usb/renesas_usbhs/fifo.h