22 #define OSS_MAX_AUDIO_CHANNELS 8
35 typedef int (*
cnv_func_t) (adev_p adev, dmap_p dmap,
void **srcp,
int *srcl,
68 #define DMAP_NOTIMEOUT 0x00000001
69 #define DMAP_POST 0x00000002
70 #define DMAP_PREPARED 0x00000004
71 #define DMAP_FRAGFIXED 0x00000008
72 #define DMAP_STARTED 0x00000010
73 #define DMAP_COOKED 0x00000020
74 #define DMAP_ACTIVE 0x00000040
77 #define DMODE_OUTPUT PCM_ENABLE_OUTPUT
78 #define DMODE_INPUT PCM_ENABLE_INPUT
99 #define DMA_MAP_MAPPED 0x00000001
102 #ifdef SPARCAUDIO_EMU
103 #define EOFLIST_SIZE 16
104 void *devaudio_sigproc;
105 int devaudio_sigmask;
106 int eof_head, eof_tail;
107 int eof_list[EOFLIST_SIZE], eof_counts[EOFLIST_SIZE];
123 unsigned char *cbuf,
int len);
126 struct audio_buffer * buf,
unsigned char *cbuf,
131 unsigned char *cbuf,
int len);
134 void *frombuf,
void *tobuf,
135 int maxspace,
int *fromlen,
int *tolen);
146 int count,
int fragsize,
int intrflag);
148 int count,
int fragsize,
int intrflag);
149 int (*
ioctl) (
int dev,
unsigned int cmd, ioctl_arg arg);
155 WR_BUF_CONST snd_rw_buf * userbuf,
int useroffs,
156 int *
len,
int max_space);
176 #define SYNC_PREPARE 1
177 #define SYNC_TRIGGER 2
184 int (*
bind) (
int dev,
unsigned int cmd, ioctl_arg arg);
199 #define NOTHING_SPECIAL 0x00
200 #define NEEDS_RESTART 0x01
201 #define DMA_AUTOMODE 0x02
202 #define DMA_DUPLEX 0x04
203 #define DMA_COLD 0x08
204 #define DMA_UNUSED1 0x10
205 #define DMA_UNUSED2 0x40
206 #define DMA_UNUSED3 0x80
207 #define DMA_ISA 0x100
208 #define DMA_VIRTUAL 0x400
209 #define DMA_OPENED 0x800
210 #define DMA_NOCONVERT 0x1000
211 #define DMA_DUALBUF 0x2000
212 #define DMA_USEPHYSADDR 0x4000
213 #define DMA_DISABLED 0x8000
214 #define DMA_NOINPUT 0x10000
215 #define DMA_NOOUTPUT 0x20000
216 #define DMA_FIXEDRATE 0x40000
217 #define DMA_16BITONLY 0x80000
218 #define DMA_STEREOONLY 0x100000
219 #define DMA_HUSHOUTPUT 0x200000
220 #define DMA_SHADOW 0x400000
221 #define DMA_ISABUS 0x800000
222 #define DMA_NODMA 0x1000000
223 #define DMA_8BITONLY 0x2000000
224 #define DMA_32BITONLY 0x4000000
225 #define DMA_NOSOFTOSS 0x8000000
226 #define DMA_NOSRC 0x10000000
227 #define DMA_SPECIAL 0x20000000
228 #define DMA_NOMMAP 0x40000000
229 #define DMA_SOFTOSS_DISABLE 0x80000000
256 #define VMIX_MULTIFRAG 0x00000001
266 #define DMASK_OUT 0x01
267 #define DMASK_IN 0x02
272 #define SYNC_MASTER 0x01
273 #define SYNC_SLAVE 0x02
279 #define MAX_SAMPLE_RATES 20
303 #define UNIT_EXPAND 1024
unsigned int(* set_bits)(int dev, unsigned int bits)
const char * oss_checksum
void(* preprocess_read)(int dev)
struct dma_buffparms * dmap_out
int dmap_get_qhead(dma_buffparms *dmap)
int(* free_buffer)(int dev, struct dma_buffparms *dmap, int direction)
struct oss_card_desc oss_card_desc_t
int(* alloc_buffer)(int dev, struct dma_buffparms *dmap, int direction)
volatile oss_native_ulonglong byte_counter
void(* output_block)(int dev, oss_native_ulong buf, int count, int fragsize, int intrflag)
int(* ioctl)(int dev, unsigned int cmd, ioctl_arg arg)
int(* set_speed)(int dev, int speed)
void(* postprocess_write)(int dev)
int(* get_input_pointer)(int dev, struct dma_buffparms *dmap, int direction)
struct dma_buffparms * dmap_p
int(* open)(int dev, int mode, int open_flags)
GLsizei GLsizei GLcharARB * source
void(* halt_output)(int dev)
GLuint GLuint GLsizei count
int(* check_output)(int dev)
void(* outputintr)(int dev, int xx)
int(* user_export)(struct audio_operations *adev, struct dma_buffparms *dmap, sample_parms *parms, struct audio_buffer *buf, unsigned char *cbuf, int maxbytes)
#define OSS_MAX_AUDIO_CHANNELS
int(* prepare_for_input)(int dev, int bufsize, int nbufs)
void(* start_input)(int dev, oss_native_ulong buf, int count, int fragsize, int intrflag)
void(* trigger)(int dev, int bits)
void(* inputintr)(int dev)
int(* copy_user)(int dev, char *localbuf, int localoffs, WR_BUF_CONST snd_rw_buf *userbuf, int useroffs, int *len, int max_space)
void(* lock_buffer)(int dev, int direction)
struct audio_operations * adev_p
void(* halt_input)(int dev)
void(* audio_callback)(int dev, int parm)
int rates[MAX_SAMPLE_RATES]
int(* get_buffer_pointer)(int dev, struct dma_buffparms *dmap, int direction)
struct audio_operations * next
int(* local_qlen)(int dev)
short(* set_channels)(int dev, short channels)
struct oss_card_desc * oss_card_desc_p
int dmap_get_qlen(dma_buffparms *dmap)
int(* get_output_pointer)(int dev, struct dma_buffparms *dmap, int direction)
void(* setup_fragments)(int dev, dmap_p dmap, int direction)
int(* prepare_for_output)(int dev, int bufsize, int nbufs)
unsigned int convert_mode
struct dma_buffparms * dmap_in
int(* sync_control)(int dev, int event, int mode)
void(* close)(int dev, int mode)
int(* bind)(int dev, unsigned int cmd, ioctl_arg arg)
const char * oss_version_string
oss_native_ulong raw_buf_phys
struct audio_operations ** audio_devs
typedef void(APIENTRYP PFNGLBLENDCOLORPROC)(GLclampf red
int dmap_get_qtail(dma_buffparms *dmap)
unsigned char * leftover_buf
oss_card_desc_p * oss_cardlist
int(* device_write)(struct audio_operations *adev, struct dma_buffparms *dmap, void *frombuf, void *tobuf, int maxspace, int *fromlen, int *tolen)
void * srcstate[OSS_MAX_AUDIO_CHANNELS]
volatile oss_native_ulonglong user_counter
void(* prepare_to_stop)(int dev)
int(* calibrate_speed)(int dev, int nominal_rate, int true_rate)
int(* check_input)(int dev)
struct audio_operations * sync_next
int(* cnv_func_t)(adev_p adev, dmap_p dmap, void **srcp, int *srcl, void **tgtp, sample_parms *source, sample_parms *target)