summaryrefslogtreecommitdiffstats
path: root/sys/dev/sound/pci
diff options
context:
space:
mode:
authorjoel <joel@FreeBSD.org>2010-04-01 11:30:46 +0000
committerjoel <joel@FreeBSD.org>2010-04-01 11:30:46 +0000
commit1a85220ab58d79540370a49fd4773d952ae552c4 (patch)
treeee67c0b1a4a2659c943b7149d287fda62488b7a9 /sys/dev/sound/pci
parent648144045d4aa71db14153ad891b5e3563af8de7 (diff)
downloadFreeBSD-src-1a85220ab58d79540370a49fd4773d952ae552c4.zip
FreeBSD-src-1a85220ab58d79540370a49fd4773d952ae552c4.tar.gz
Fix the gap between mute and lowest possible volume. The es1370 mixer
volumes were incorrectly calculated. I've tested this with one of my es1370 cards and I can confirm that it works. PR: 98167 Submitted by: Joseph Terner <jtsn@gmx.de> Approved by: kib
Diffstat (limited to 'sys/dev/sound/pci')
-rw-r--r--sys/dev/sound/pci/es137x.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/sound/pci/es137x.c b/sys/dev/sound/pci/es137x.c
index 8d04f70..5b9591a 100644
--- a/sys/dev/sound/pci/es137x.c
+++ b/sys/dev/sound/pci/es137x.c
@@ -355,7 +355,7 @@ es1370_mixset(struct snd_mixer *m, unsigned dev, unsigned left, unsigned right)
if (mixtable[dev].left == 0xf)
rl = (l < 2) ? 0x80 : 7 - (l - 2) / 14;
else
- rl = (l < 10) ? 0x80 : 15 - (l - 10) / 6;
+ rl = (l < 7) ? 0x80 : 31 - (l - 7) / 3;
es = mix_getdevinfo(m);
ES_LOCK(es);
if (dev == SOUND_MIXER_PCM && (ES_SINGLE_PCM_MIX(es->escfg)) &&
@@ -364,7 +364,7 @@ es1370_mixset(struct snd_mixer *m, unsigned dev, unsigned left, unsigned right)
else
set_dac1 = 0;
if (mixtable[dev].stereo) {
- rr = (r < 10) ? 0x80 : 15 - (r - 10) / 6;
+ rr = (r < 7) ? 0x80 : 31 - (r - 7) / 3;
es1370_wrcodec(es, mixtable[dev].right, rr);
if (set_dac1 && mixtable[SOUND_MIXER_SYNTH].stereo)
es1370_wrcodec(es,
OpenPOWER on IntegriCloud