summaryrefslogtreecommitdiff
path: root/sys/arch/usermode/include
diff options
context:
space:
mode:
authorjmcneill <jmcneill@NetBSD.org>2011-12-26 21:06:42 +0000
committerjmcneill <jmcneill@NetBSD.org>2011-12-26 21:06:42 +0000
commit012e670af2df5590aa02ff385dbe8e763c8a2129 (patch)
tree3fa881f0e1f0f221eb38d773c9f364e740718b51 /sys/arch/usermode/include
parent491d368d482074fd871ec977e3789e028a9c2b42 (diff)
add vaudio(4) audio device driver
Diffstat (limited to 'sys/arch/usermode/include')
-rw-r--r--sys/arch/usermode/include/mainbus.h6
-rw-r--r--sys/arch/usermode/include/thunk.h19
2 files changed, 23 insertions, 2 deletions
diff --git a/sys/arch/usermode/include/mainbus.h b/sys/arch/usermode/include/mainbus.h
index 9fa1d41615d..d4aacab69e6 100644
--- a/sys/arch/usermode/include/mainbus.h
+++ b/sys/arch/usermode/include/mainbus.h
@@ -1,4 +1,4 @@
-/* $NetBSD: mainbus.h,v 1.5 2011/12/26 12:39:19 jmcneill Exp $ */
+/* $NetBSD: mainbus.h,v 1.6 2011/12/26 21:06:42 jmcneill Exp $ */
/*-
* Copyright (c) 2007 Jared D. McNeill <jmcneill@invisible.ca>
@@ -37,6 +37,7 @@ struct thunkbus_attach_args {
#define THUNKBUS_TYPE_DISKIMAGE 3
#define THUNKBUS_TYPE_GENFB 4
#define THUNKBUS_TYPE_VETH 5
+#define THUNKBUS_TYPE_VAUDIO 6
union {
struct {
@@ -46,6 +47,9 @@ struct thunkbus_attach_args {
const char *device;
const char *eaddr;
} veth;
+ struct {
+ const char *device;
+ } vaudio;
} u;
};
diff --git a/sys/arch/usermode/include/thunk.h b/sys/arch/usermode/include/thunk.h
index 76031423f51..80ce0aea0ee 100644
--- a/sys/arch/usermode/include/thunk.h
+++ b/sys/arch/usermode/include/thunk.h
@@ -1,4 +1,4 @@
-/* $NetBSD: thunk.h,v 1.45 2011/12/26 12:39:19 jmcneill Exp $ */
+/* $NetBSD: thunk.h,v 1.46 2011/12/26 21:06:42 jmcneill Exp $ */
/*-
* Copyright (c) 2011 Jared D. McNeill <jmcneill@invisible.ca>
@@ -152,6 +152,23 @@ int thunk_open_tap(const char *);
int thunk_pollin_tap(int, int);
int thunk_pollout_tap(int, int);
+typedef struct {
+ unsigned int sample_rate;
+ unsigned int precision;
+ unsigned int validbits;
+ unsigned int channels;
+} thunk_audio_config_t;
+
+int thunk_audio_open(const char *);
+int thunk_audio_close(int);
+int thunk_audio_drain(int);
+int thunk_audio_config(int, const thunk_audio_config_t *,
+ const thunk_audio_config_t *);
+int thunk_audio_pollout(int);
+int thunk_audio_pollin(int);
+int thunk_audio_write(int, const void *, size_t);
+int thunk_audio_read(int, void *, size_t);
+
int thunk_sdl_init(unsigned int, unsigned int, unsigned short);
void * thunk_sdl_getfb(size_t);
int thunk_sdl_getchar(void);