[alsa-devel] als4000: enable burst mode
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@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-03 23:50:08.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) | 0x04); spin_unlock_irq(&chip->reg_lock); }
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@rainbow-software.org
Applied now. Thanks.
Takashi
--- 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-03 23:50:08.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));
spin_unlock_irq(&chip->reg_lock);snd_als4k_gcr_read(chip, ALS4K_GCR99_DMA_EMULATION_CTRL) | 0x04);
}
-- Ondrej Zary _______________________________________________ Alsa-devel mailing list Alsa-devel@alsa-project.org http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
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@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@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); }
At Wed, 4 Aug 2010 21:08:14 +0200, Ondrej Zary wrote:
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@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@rainbow-software.org
As the previous patch was already applied, could you give the incremental change?
thanks,
Takashi
--- 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));
spin_unlock_irq(&chip->reg_lock);(snd_als4k_gcr_read(chip, ALS4K_GCR99_DMA_EMULATION_CTRL) & ~0x07) | 0x04);
}
-- Ondrej Zary
On Wednesday 04 August 2010 21:31:32 Takashi Iwai wrote:
At Wed, 4 Aug 2010 21:08:14 +0200,
Ondrej Zary wrote:
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@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@rainbow-software.org
As the previous patch was already applied, could you give the incremental change?
Of course, sorry for that.
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 patch fixes this potential problem.
Signed-off-by: Ondrej Zary linux@rainbow-software.org
--- linux-2.6.35-rc3-/sound/pci/als4000.c 2010-08-04 21:53:48.000000000 +0200 +++ linux-2.6.35-rc3/sound/pci/als4000.c 2010-08-04 20:57:00.000000000 +0200 @@ -765,7 +765,7 @@ static void snd_als4000_configure(struct 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) | 0x04); + (snd_als4k_gcr_read(chip, ALS4K_GCR99_DMA_EMULATION_CTRL) & ~0x07) | 0x04); spin_unlock_irq(&chip->reg_lock); }
At Wed, 4 Aug 2010 21:56:44 +0200, Ondrej Zary wrote:
On Wednesday 04 August 2010 21:31:32 Takashi Iwai wrote:
At Wed, 4 Aug 2010 21:08:14 +0200,
Ondrej Zary wrote:
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@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@rainbow-software.org
As the previous patch was already applied, could you give the incremental change?
Of course, sorry for that.
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 patch fixes this potential problem.
Signed-off-by: Ondrej Zary linux@rainbow-software.org
Applied now. Thanks!
Takashi
--- linux-2.6.35-rc3-/sound/pci/als4000.c 2010-08-04 21:53:48.000000000 +0200 +++ linux-2.6.35-rc3/sound/pci/als4000.c 2010-08-04 20:57:00.000000000 +0200 @@ -765,7 +765,7 @@ static void snd_als4000_configure(struct 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) | 0x04);
spin_unlock_irq(&chip->reg_lock);(snd_als4k_gcr_read(chip, ALS4K_GCR99_DMA_EMULATION_CTRL) & ~0x07) | 0x04);
}
-- Ondrej Zary
participants (2)
-
Ondrej Zary
-
Takashi Iwai