aboutsummaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authorAriff Abdullah <ariff@FreeBSD.org>2006-01-20 03:46:02 +0000
committerAriff Abdullah <ariff@FreeBSD.org>2006-01-20 03:46:02 +0000
commit9ca45dd7dc502a440b42ebf3ff95431bdedb9f7c (patch)
tree85ca08b590e037e006569cf6b7b907bb76ff8367 /sys/dev
parente9186cb94be7619a0548e1c6b614ef42407c88dc (diff)
Notes
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/sound/pcm/vchan.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/sys/dev/sound/pcm/vchan.c b/sys/dev/sound/pcm/vchan.c
index 2f8ce6883c2c..308addcdec4f 100644
--- a/sys/dev/sound/pcm/vchan.c
+++ b/sys/dev/sound/pcm/vchan.c
@@ -441,13 +441,19 @@ vchan_create(struct pcm_channel *parent)
"vchanrate", &speed);
CHN_LOCK(parent);
if (r != 0) {
- speed = VCHAN_DEFAULT_SPEED;
/*
* Workaround for sb16 running
- * poorly at 45k.
+ * poorly at 45k / 49k.
*/
- if (speed > parent_caps->maxspeed)
+ switch (parent_caps->maxspeed) {
+ case 45000:
+ case 49000:
speed = 44100;
+ break;
+ default:
+ speed = VCHAN_DEFAULT_SPEED;
+ break;
+ }
}
}