]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
ALSA: pxa27x: fix ac97 cold reset
authorMike Dunn <mikedunn@newsguy.com>
Mon, 7 Jan 2013 21:55:12 +0000 (13:55 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 17 Jan 2013 16:44:08 +0000 (08:44 -0800)
commite2abf662bcedc0be6f73e7575cc203a5e3c9262c
tree1414164fda1b2b8fa8745bf0f2bfb0ebdb5b7839
parent639fd95292222bf03e1bb8616437b261321e1536
ALSA: pxa27x: fix ac97 cold reset

commit 41b645c8624df6ace020a8863ad1449d69140f7d upstream.

Cold reset on the pxa27x currently fails and

     pxa2xx_ac97_try_cold_reset: cold reset timeout (GSR=0x44)

appears in the kernel log.  Through trial-and-error (the pxa270 developer's
manual is mostly incoherent on the topic of ac97 reset), I got cold reset to
complete by setting the WARM_RST bit in the GCR register (and later noticed that
pxa3xx does this for cold reset as well).  Also, a timeout loop is needed to
wait for the reset to complete.

Tested on a palm treo 680 machine.

Signed-off-by: Mike Dunn <mikedunn@newsguy.com>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sound/arm/pxa2xx-ac97-lib.c