linux-stable/sound/pci/oxygen
Clemens Ladisch df91bc23dc ALSA: oxygen: fix distorted output on AK4396-based cards
When changing the sample rate, the CMI8788's master clock output becomes
unstable for a short time.  The AK4396 needs the master clock to do SPI
writes, so writing to an AK4396 control register directly after a sample
rate change will garble the value.  In our case, this leads to the DACs
being misconfigured to I2S sample format, which results in a wrong
output level and horrible distortions on samples louder than -6 dB.

To fix this, we need to wait until the new master clock signal has
become stable before doing SPI writes.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-08-29 14:15:19 +02:00
..
ak4396.h [ALSA] add TempoTec HiFier driver 2008-01-31 17:30:15 +01:00
cm9780.h [ALSA] oxygen: add more symbols 2008-01-31 17:30:07 +01:00
cs4362a.h [ALSA] virtuoso: add Xonar DX support 2008-04-24 12:00:32 +02:00
cs4398.h [ALSA] virtuoso: add Xonar DX support 2008-04-24 12:00:32 +02:00
hifier.c ALSA: oxygen: fix distorted output on AK4396-based cards 2008-08-29 14:15:19 +02:00
Makefile [ALSA] add TempoTec HiFier driver 2008-01-31 17:30:15 +01:00
oxygen.c ALSA: oxygen: fix distorted output on AK4396-based cards 2008-08-29 14:15:19 +02:00
oxygen.h [ALSA] oxygen: add PM support 2008-05-19 13:19:17 +02:00
oxygen_io.c [ALSA] oxygen: save register writes 2008-05-19 13:19:16 +02:00
oxygen_lib.c [ALSA] oxygen: add PM support 2008-05-19 13:19:17 +02:00
oxygen_mixer.c ALSA: oxygen: prevent muting of nonexistent AC97 controls 2008-08-26 12:43:13 +02:00
oxygen_pcm.c [ALSA] virtuoso: restrict period time to less than 10 s 2008-05-19 13:19:17 +02:00
oxygen_regs.h [ALSA] oxygen: fix DAC source register fields 2008-01-31 17:30:08 +01:00
pcm1796.h [ALSA] virtuoso: move PCM1796 symbols to a header file 2008-04-24 12:00:27 +02:00
virtuoso.c ALSA: virtuoso: add Xonar D1 support 2008-08-14 10:44:13 +02:00
wm8785.h [ALSA] oxygen: move WM8785 symbols to a header file 2008-04-24 12:00:27 +02:00