2 * ossp - OSS Proxy: emulate OSS device using CUSE
4 * Copyright (C) 2008-2010 SUSE Linux Products GmbH
5 * Copyright (C) 2008-2010 Tejun Heo <tj@kernel.org>
7 * This file is released under the GPLv2.
13 #include <sys/types.h>
15 #include <sys/soundcard.h>
17 #define OSSP_VERSION "1.3.2"
18 #define OSSP_CMD_MAGIC 0xdeadbeef
19 #define OSSP_REPLY_MAGIC 0xbeefdead
20 #define OSSP_NOTIFY_MAGIC 0xbebebebe
42 OSSP_DSP_GET_CHANNELS,
47 OSSP_DSP_SET_CHANNELS,
49 OSSP_DSP_SET_SUBDIVISION,
51 OSSP_DSP_SET_FRAGMENT,
63 enum ossp_notify_opcode {
68 OSSP_NR_NOTIFY_OPCODES,
71 struct ossp_mixer_arg {
75 struct ossp_dsp_open_arg {
80 struct ossp_dsp_rw_arg {
84 struct ossp_dsp_mmap_arg {
91 enum ossp_opcode opcode;
99 size_t dout_size; /* <= cmd.data_in_size */
104 enum ossp_notify_opcode opcode;
107 struct ossp_arg_size {
113 extern const struct ossp_arg_size ossp_arg_sizes[OSSP_NR_OPCODES];
114 extern const char *ossp_cmd_str[OSSP_NR_OPCODES];
115 extern const char *ossp_notify_str[OSSP_NR_NOTIFY_OPCODES];