summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjakemsr <jakemsr@openbsd.org>2007-07-06 04:40:20 +0000
committerjakemsr <jakemsr@openbsd.org>2007-07-06 04:40:20 +0000
commit8e29a96522eafbe7baaf50322b01ebc650f6c29c (patch)
tree3f2b9b8e156ec0888a7ae8102c220c894052a236
parentthe AUDIO_WSEEK ioctl should return the number of bytes in the play (diff)
downloadwireguard-openbsd-8e29a96522eafbe7baaf50322b01ebc650f6c29c.tar.xz
wireguard-openbsd-8e29a96522eafbe7baaf50322b01ebc650f6c29c.zip
- enable full-duplex mode by default if a device is opened
read-write and it supports full-duplex operation. - update documentation to match this behaviour. see http://marc.info/?l=openbsd-tech&m=118310788926431&w=2 for more background on this change "patches look correct to me" marc@
-rw-r--r--share/man/man4/audio.47
-rw-r--r--sys/dev/audio.c6
2 files changed, 5 insertions, 8 deletions
diff --git a/share/man/man4/audio.4 b/share/man/man4/audio.4
index fbae1c8c3d1..17afb388b6a 100644
--- a/share/man/man4/audio.4
+++ b/share/man/man4/audio.4
@@ -1,4 +1,4 @@
-.\" $OpenBSD: audio.4,v 1.40 2007/05/31 19:19:49 jmc Exp $
+.\" $OpenBSD: audio.4,v 1.41 2007/07/06 04:40:20 jakemsr Exp $
.\" $NetBSD: audio.4,v 1.20 1998/05/28 17:27:15 augustss Exp $
.\"
.\" Copyright (c) 1996 The NetBSD Foundation, Inc.
@@ -35,7 +35,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd $Mdocdate: May 31 2007 $
+.Dd $Mdocdate: July 6 2007 $
.Dt AUDIO 4
.Os
.Sh NAME
@@ -118,8 +118,7 @@ concurrently without interference.
If a full-duplex capable
.Nm audio
device is opened for both reading and writing,
-it will start in half-duplex play mode; full-duplex mode has to be set
-explicitly.
+it will start in full-duplex playback and recording mode.
On either type of device, if the playback mode is paused then silence is
played instead of the provided samples and, if recording is paused, then
the process blocks in
diff --git a/sys/dev/audio.c b/sys/dev/audio.c
index c924fbf6114..cc814273ea8 100644
--- a/sys/dev/audio.c
+++ b/sys/dev/audio.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: audio.c,v 1.59 2007/07/06 04:25:28 jakemsr Exp $ */
+/* $OpenBSD: audio.c,v 1.60 2007/07/06 04:40:20 jakemsr Exp $ */
/* $NetBSD: audio.c,v 1.119 1999/11/09 16:50:47 augustss Exp $ */
/*
@@ -999,11 +999,9 @@ audio_open(dev, sc, flags, ifmt, p)
sc->sc_eof = 0;
sc->sc_playdrop = 0;
- sc->sc_full_duplex = 0;
-/* doesn't always work right on SB.
+ sc->sc_full_duplex =
(flags & (FWRITE|FREAD)) == (FWRITE|FREAD) &&
(sc->hw_if->get_props(sc->hw_hdl) & AUDIO_PROP_FULLDUPLEX);
-*/
mode = 0;
if (flags & FREAD) {