summaryrefslogtreecommitdiff
path: root/sys/dev/pci/azalia.c
diff options
context:
space:
mode:
authorDeanna Phillips <deanna@cvs.openbsd.org>2007-06-13 02:29:11 +0000
committerDeanna Phillips <deanna@cvs.openbsd.org>2007-06-13 02:29:11 +0000
commit9c90af3ee357d76243a2f2b00954450d436db94b (patch)
tree241ba0b63d7a24a0433a4b7dde170e531e35c678 /sys/dev/pci/azalia.c
parentb80ad0b3ac0ae856697de4144f0b147863887fce (diff)
Don't attempt multichannel playback. This workaround allows a stream
to connect to multiple outputs, which is needed for some codecs like the Sigmatel ones found in Macs and on my VAIO. There is a bigger problem with how DACs are grouped that should be solved when we get around to supporting multichannel formats. Tested by many.
Diffstat (limited to 'sys/dev/pci/azalia.c')
-rw-r--r--sys/dev/pci/azalia.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/dev/pci/azalia.c b/sys/dev/pci/azalia.c
index c2d624b66fe..b44f900221d 100644
--- a/sys/dev/pci/azalia.c
+++ b/sys/dev/pci/azalia.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: azalia.c,v 1.26 2007/05/03 14:49:31 deanna Exp $ */
+/* $OpenBSD: azalia.c,v 1.27 2007/06/13 02:29:10 deanna Exp $ */
/* $NetBSD: azalia.c,v 1.20 2006/05/07 08:31:44 kent Exp $ */
/*-
@@ -1431,7 +1431,8 @@ azalia_codec_connect_stream(codec_t *this, int dir, uint16_t fmt, int number)
(number << 4) | startchan, NULL);
if (err)
goto exit;
- startchan += WIDGET_CHANNELS(&this->w[nid]);
+ if (nchan > 2)
+ startchan += WIDGET_CHANNELS(&this->w[nid]);
}
exit: