diff options
author | Takashi Iwai <tiwai@suse.de> | 2008-06-25 17:17:00 +0200 |
---|---|---|
committer | Jaroslav Kysela <perex@perex.cz> | 2008-06-27 08:51:10 +0200 |
commit | 4a3b6983232cd296ea260e06461d031f10065d63 (patch) | |
tree | 1cf2132112ff614e2298a75a8cc644198f13e4f8 /sound/pci/ymfpci | |
parent | c7e0757a461db87157bbf92c4f5afda87cbe05f6 (diff) | |
download | kernel-crypto-4a3b6983232cd296ea260e06461d031f10065d63.tar.gz kernel-crypto-4a3b6983232cd296ea260e06461d031f10065d63.tar.xz kernel-crypto-4a3b6983232cd296ea260e06461d031f10065d63.zip |
ALSA: ymfpci - fix initial volume for 44.1kHz output
YDSXGR_BUF441OUTVOL register isn't initialized properly. This may lead to
a silent output at full volume of unchanged "Wave Playback Volume".
http://bugzilla.kernel.org/show_bug.cgi?id=10963
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Diffstat (limited to 'sound/pci/ymfpci')
-rw-r--r-- | sound/pci/ymfpci/ymfpci_main.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sound/pci/ymfpci/ymfpci_main.c b/sound/pci/ymfpci/ymfpci_main.c index 29b3056c510..7129df5f315 100644 --- a/sound/pci/ymfpci/ymfpci_main.c +++ b/sound/pci/ymfpci/ymfpci_main.c @@ -2205,6 +2205,7 @@ static int __devinit snd_ymfpci_memalloc(struct snd_ymfpci *chip) for (reg = 0x80; reg < 0xc0; reg += 4) snd_ymfpci_writel(chip, reg, 0); snd_ymfpci_writel(chip, YDSXGR_NATIVEDACOUTVOL, 0x3fff3fff); + snd_ymfpci_writel(chip, YDSXGR_BUF441OUTVOL, 0x3fff3fff); snd_ymfpci_writel(chip, YDSXGR_ZVOUTVOL, 0x3fff3fff); snd_ymfpci_writel(chip, YDSXGR_SPDIFOUTVOL, 0x3fff3fff); snd_ymfpci_writel(chip, YDSXGR_NATIVEADCINVOL, 0x3fff3fff); @@ -2324,6 +2325,7 @@ int snd_ymfpci_suspend(struct pci_dev *pci, pm_message_t state) chip->saved_regs[i] = snd_ymfpci_readl(chip, saved_regs_index[i]); chip->saved_ydsxgr_mode = snd_ymfpci_readl(chip, YDSXGR_MODE); snd_ymfpci_writel(chip, YDSXGR_NATIVEDACOUTVOL, 0); + snd_ymfpci_writel(chip, YDSXGR_BUF441OUTVOL, 0); snd_ymfpci_disable_dsp(chip); pci_disable_device(pci); pci_save_state(pci); |