[alsa-devel] als4000: enable burst mode
Ondrej Zary
linux at rainbow-software.org
Wed Aug 4 21:08:14 CEST 2010
On Wednesday 04 August 2010 07:43:44 Takashi Iwai wrote:
> At Tue, 3 Aug 2010 23:57:05 +0200,
>
> Ondrej Zary wrote:
> > Enable burst mode to prevent dropouts during high PCI bus usage.
> > The card is useless in X without this because of dropouts when anything
> > moves on the screen (at least with PCI VGA card). Enabling this is also
> > recommended by the datasheet (page 48).
> >
> > Signed-off-by: Ondrej Zary <linux at rainbow-software.org>
>
> Applied now. Thanks.
My previous patch assumed that the DMA mode (represented by 3 lowest bits of
ALS4K_GCR99_DMA_EMULATION_CTRL register) is set to the default value 0. If
that's not the case, it might result in invalid mode to be set. This v2 patch
fixes this potential problem.
Signed-off-by: Ondrej Zary <linux at rainbow-software.org>
--- linux-2.6.35-rc2/sound/pci/als4000.c 2010-06-06 05:43:24.000000000 +0200
+++ linux-2.6.35-rc3/sound/pci/als4000.c 2010-08-04 20:57:00.000000000 +0200
@@ -763,9 +763,9 @@ static void snd_als4000_configure(struct
/* SPECS_PAGE: 39 */
for (i = ALS4K_GCR91_DMA0_ADDR; i <= ALS4K_GCR96_DMA3_MODE_COUNT; ++i)
snd_als4k_gcr_write(chip, i, 0);
-
+ /* enable burst mode to prevent dropouts during high PCI bus usage */
snd_als4k_gcr_write(chip, ALS4K_GCR99_DMA_EMULATION_CTRL,
- snd_als4k_gcr_read(chip, ALS4K_GCR99_DMA_EMULATION_CTRL));
+ (snd_als4k_gcr_read(chip, ALS4K_GCR99_DMA_EMULATION_CTRL) & ~0x07) | 0x04);
spin_unlock_irq(&chip->reg_lock);
}
--
Ondrej Zary
More information about the Alsa-devel
mailing list