diff options
Diffstat (limited to 'sys/dev/pci/auvia.c')
-rw-r--r-- | sys/dev/pci/auvia.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/sys/dev/pci/auvia.c b/sys/dev/pci/auvia.c index a42729021bf..57f192602dc 100644 --- a/sys/dev/pci/auvia.c +++ b/sys/dev/pci/auvia.c @@ -1,4 +1,4 @@ -/* $OpenBSD: auvia.c,v 1.35 2008/03/24 07:05:22 jakemsr Exp $ */ +/* $OpenBSD: auvia.c,v 1.36 2008/03/30 08:48:53 jakemsr Exp $ */ /* $NetBSD: auvia.c,v 1.28 2002/11/04 16:38:49 kent Exp $ */ /*- @@ -877,7 +877,16 @@ auvia_mappage(void *addr, void *mem, off_t off, int prot) int auvia_get_props(void *addr) { - return (AUDIO_PROP_MMAP | AUDIO_PROP_INDEPENDENT); + struct auvia_softc *sc = addr; + int props; + + props = AUDIO_PROP_MMAP | AUDIO_PROP_INDEPENDENT; + + /* recording doesn't work correctly on 8233 based devices */ + if (!(sc->sc_flags & AUVIA_FLAGS_VT8233)) + props |= AUDIO_PROP_FULLDUPLEX; + + return props; } |