aboutsummaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorJaroslav Kysela <perex@suse.cz>2004-04-24 19:57:05 +0200
committerJaroslav Kysela <perex@suse.cz>2004-04-24 19:57:05 +0200
commitbbc4ce241df19f2bb59fbf9313b35ff6a7d17889 (patch)
tree8608cecc685becb7d6e89c094d2d9c89d1d706dd /sound
parent5ea317ac11eb1d05f324ca218374ed47c6fda93d (diff)
downloadhistory-bbc4ce241df19f2bb59fbf9313b35ff6a7d17889.tar.gz
ALSA CVS update - Takashi Iwai <tiwai@suse.de>
Intel8x0 driver fixed MX440 workaround in suspend/resume.
Diffstat (limited to 'sound')
-rw-r--r--sound/pci/intel8x0.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/sound/pci/intel8x0.c b/sound/pci/intel8x0.c
index 7a50c1826b7c25..6ed2b01c88534d 100644
--- a/sound/pci/intel8x0.c
+++ b/sound/pci/intel8x0.c
@@ -2215,10 +2215,27 @@ static int intel8x0_resume(snd_card_t *card, unsigned int state)
pci_enable_device(chip->pci);
pci_set_master(chip->pci);
snd_intel8x0_chip_init(chip, 0);
+
+ /* refill nocache */
+ if (chip->fix_nocache)
+ fill_nocache(chip->bdbars.area, chip->bdbars.bytes, 1);
+
for (i = 0; i < 3; i++)
if (chip->ac97[i])
snd_ac97_resume(chip->ac97[i]);
+ /* refill nocache */
+ if (chip->fix_nocache) {
+ for (i = 0; i < chip->bdbars_count; i++) {
+ ichdev_t *ichdev = &chip->ichd[i];
+ if (ichdev->substream) {
+ snd_pcm_runtime_t *runtime = ichdev->substream->runtime;
+ if (runtime->dma_area)
+ fill_nocache(runtime->dma_area, runtime->dma_bytes, 1);
+ }
+ }
+ }
+
snd_power_change_state(card, SNDRV_CTL_POWER_D0);
return 0;
}