linux/sound
Manuel Lauss cdc65fbe18 ASoC: au1x: PSC-AC97 bugfixes
This patch fixes the following bugs:

- only reprogram bitdepth if it has changed since last call to hw_params.
- add locking inside ac97_read/write functions:
  When reprogramming sample depth, the ac97 unit has to be disabled,
  which should not be done in the middle of codec register accesses.

- retry timed-out codec register accesses.

- wait for status bits to set/clear when starting/stopping various
  functional blocks; very important after reenabling AC97 unit else
  sound may be distorted (e.g. high-pitch noise in 1kHz sine wave).

- clear fifos before/after starting/stopping RX/TX.

- longer timeouts waiting for PSC/AC97 ready after cold reset
  with certain codecs this can take ridiculous amounts of time.

Run-tested on various Au1200 platforms with various codecs.

Signed-off-by: Manuel Lauss <manuel.lauss@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-09-08 19:21:27 +01:00
..
aoa
arm ASoC: fix pxa2xx-ac97.c breakage 2009-09-04 20:19:56 +01:00
atmel
core Merge branch 'topic/seq-midi-fix' into for-linus 2009-06-22 17:03:56 +02:00
drivers time: move PIT_TICK_RATE to linux/timex.h 2009-06-16 19:47:27 -07:00
i2c
isa
mips
oss time: move PIT_TICK_RATE to linux/timex.h 2009-06-16 19:47:27 -07:00
parisc
pci Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 2009-06-23 10:45:39 -07:00
pcmcia
ppc
sh
soc ASoC: au1x: PSC-AC97 bugfixes 2009-09-08 19:21:27 +01:00
sparc
spi
synth
usb Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 2009-06-21 13:13:08 -07:00
ac97_bus.c
Kconfig
last.c
Makefile
sound_core.c
sound_firmware.c