]> git.karo-electronics.de Git - karo-tx-linux.git/commit
ASoC: fsi: don't reschedule DMA from an atomic context
authorGuennadi Liakhovetski <g.liakhovetski@gmx.de>
Wed, 3 Oct 2012 12:33:50 +0000 (14:33 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 21 Oct 2012 16:28:01 +0000 (09:28 -0700)
commite9eeac8fd06a74dfcadac8970b7d5797dab652c1
treecde49daf7dfaf015b5329ccbb6b2ae1b6ca48e7a
parentbb4e97376e84d98994a5f576e2bd080d3aeee232
ASoC: fsi: don't reschedule DMA from an atomic context

commit 57451e437796548d658d03c2c4aab659eafcd799 upstream.

shdma doesn't support transfer re-scheduling or triggering from callbacks
or from atomic context. The fsi driver issues DMA transfers from a tasklet
context, which is a bug. To fix it convert tasklet to a work.

Reported-by: Do Q.Thang <dq-thang@jinso.co.jp>
Tested-by: Do Q.Thang <dq-thang@jinso.co.jp>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sound/soc/sh/fsi.c