ASoC: nau8825: improve semaphore control
authorJohn Hsu <KCHSU0@nuvoton.com>
Fri, 1 Dec 2017 02:01:50 +0000 (10:01 +0800)
committerMark Brown <broonie@kernel.org>
Mon, 4 Dec 2017 18:14:42 +0000 (18:14 +0000)
commit70424d8e6e15abd32e189130be220d0063e082bc
treeaa415170b6f98fa07cac4810810c168600d27ca5
parente3fee43a968fd39dcc56be3757fcdfe250964125
ASoC: nau8825: improve semaphore control

After reviewing the crosstalk protection, there are two flaws at
semaphore control. The first one is that the semaphore releases are
not enough; and the other is that down_interruptible has an risk to
make the ISR sleep.
Therefore, the driver add more releases before the funcitons return.
Take down_trylock to replace down_interruptible. The ISR can control
the protection as well and never sleep by semaphore.

Signed-off-by: John Hsu <KCHSU0@nuvoton.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/nau8825.c