summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorratchov <ratchov@openbsd.org>2013-06-21 09:34:06 +0000
committerratchov <ratchov@openbsd.org>2013-06-21 09:34:06 +0000
commit5416f6fb24e20b346eee30f940e3f5ff44f06468 (patch)
tree26a6cf7bed6eaa585fed096c4e46cba3ca2e460e
parentDe-static. (diff)
downloadwireguard-openbsd-5416f6fb24e20b346eee30f940e3f5ff44f06468.tar.xz
wireguard-openbsd-5416f6fb24e20b346eee30f940e3f5ff44f06468.zip
enable 24-bit, lsb-aligned encoding, which is the device's
native one. Allows encoding conversions to be handled in userland
-rw-r--r--sys/arch/sgi/dev/mavb.c17
1 files changed, 12 insertions, 5 deletions
diff --git a/sys/arch/sgi/dev/mavb.c b/sys/arch/sgi/dev/mavb.c
index 4304652fbaf..a94079f28e5 100644
--- a/sys/arch/sgi/dev/mavb.c
+++ b/sys/arch/sgi/dev/mavb.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: mavb.c,v 1.15 2013/05/15 08:29:23 ratchov Exp $ */
+/* $OpenBSD: mavb.c,v 1.16 2013/06/21 09:34:06 ratchov Exp $ */
/*
* Copyright (c) 2005 Mark Kettenis
@@ -522,7 +522,10 @@ mavb_set_params(void *hdl, int setmode, int usemode,
return (EINVAL);
}
} else {
- return (EINVAL);
+ play->factor = 1;
+ play->sw_code = NULL;
+ play->channels = 2;
+ play->precision = 24;
}
break;
default:
@@ -538,7 +541,7 @@ mavb_set_params(void *hdl, int setmode, int usemode,
return (error);
play->bps = AUDIO_BPS(play->precision);
- play->msb = 1;
+ play->msb = 0;
}
if (setmode & AUMODE_RECORD) {
@@ -556,7 +559,11 @@ mavb_set_params(void *hdl, int setmode, int usemode,
rec->factor = 2;
rec->sw_code = linear24_to_linear16_be;
} else {
- return (EINVAL);
+ rec->factor = 1;
+ rec->sw_code = NULL;
+ rec->channels = 2;
+ rec->precision = 24;
+ break;
}
break;
default:
@@ -575,7 +582,7 @@ mavb_set_params(void *hdl, int setmode, int usemode,
return (error);
rec->bps = AUDIO_BPS(rec->precision);
- rec->msb = 1;
+ rec->msb = 0;
}
return (0);