Merge branch 'master'
[linux-2.6] / sound / oss / sound_calls.h
1 /*
2  *      DMA buffer calls
3  */
4
5 int DMAbuf_open(int dev, int mode);
6 int DMAbuf_release(int dev, int mode);
7 int DMAbuf_getwrbuffer(int dev, char **buf, int *size, int dontblock);
8 int DMAbuf_getrdbuffer(int dev, char **buf, int *len, int dontblock);
9 int DMAbuf_rmchars(int dev, int buff_no, int c);
10 int DMAbuf_start_output(int dev, int buff_no, int l);
11 int DMAbuf_move_wrpointer(int dev, int l);
12 /* int DMAbuf_ioctl(int dev, unsigned int cmd, void __user *arg, int local); */
13 void DMAbuf_init(int dev, int dma1, int dma2);
14 void DMAbuf_deinit(int dev);
15 int DMAbuf_start_dma (int dev, unsigned long physaddr, int count, int dma_mode);
16 int DMAbuf_open_dma (int dev);
17 void DMAbuf_close_dma (int dev);
18 void DMAbuf_inputintr(int dev);
19 void DMAbuf_outputintr(int dev, int underflow_flag);
20 struct dma_buffparms;
21 int DMAbuf_space_in_queue (int dev);
22 int DMAbuf_activate_recording (int dev, struct dma_buffparms *dmap);
23 int DMAbuf_get_buffer_pointer (int dev, struct dma_buffparms *dmap, int direction);
24 void DMAbuf_launch_output(int dev, struct dma_buffparms *dmap);
25 unsigned int DMAbuf_poll(struct file *file, int dev, poll_table *wait);
26 void DMAbuf_start_devices(unsigned int devmask);
27 void DMAbuf_reset (int dev);
28 int DMAbuf_sync (int dev);
29
30 /*
31  *      System calls for /dev/dsp and /dev/audio (audio.c)
32  */
33
34 int audio_read (int dev, struct file *file, char __user *buf, int count);
35 int audio_write (int dev, struct file *file, const char __user *buf, int count);
36 int audio_open (int dev, struct file *file);
37 void audio_release (int dev, struct file *file);
38 int audio_ioctl (int dev, struct file *file,
39            unsigned int cmd, void __user *arg);
40 void audio_init_devices (void);
41 void reorganize_buffers (int dev, struct dma_buffparms *dmap, int recording);
42
43 /*
44  *      System calls for the /dev/sequencer
45  */
46
47 int sequencer_read (int dev, struct file *file, char __user *buf, int count);
48 int sequencer_write (int dev, struct file *file, const char __user *buf, int count);
49 int sequencer_open (int dev, struct file *file);
50 void sequencer_release (int dev, struct file *file);
51 int sequencer_ioctl (int dev, struct file *file, unsigned int cmd, void __user *arg);
52 unsigned int sequencer_poll(int dev, struct file *file, poll_table * wait);
53
54 void sequencer_init (void);
55 void sequencer_unload (void);
56 void sequencer_timer(unsigned long dummy);
57 int note_to_freq(int note_num);
58 unsigned long compute_finetune(unsigned long base_freq, int bend, int range,
59                                int vibrato_bend);
60 void seq_input_event(unsigned char *event, int len);
61 void seq_copy_to_input (unsigned char *event, int len);
62
63 /*
64  *      System calls for the /dev/midi
65  */
66
67 int MIDIbuf_read (int dev, struct file *file, char __user *buf, int count);
68 int MIDIbuf_write (int dev, struct file *file, const char __user *buf, int count);
69 int MIDIbuf_open (int dev, struct file *file);
70 void MIDIbuf_release (int dev, struct file *file);
71 int MIDIbuf_ioctl (int dev, struct file *file, unsigned int cmd, void __user *arg);
72 unsigned int MIDIbuf_poll(int dev, struct file *file, poll_table * wait);
73 int MIDIbuf_avail(int dev);
74
75 void MIDIbuf_bytes_received(int dev, unsigned char *buf, int count);
76 void MIDIbuf_init(void);
77
78
79 /*      From soundcard.c        */
80 void request_sound_timer (int count);
81 void sound_stop_timer(void);
82 void conf_printf(char *name, struct address_info *hw_config);
83 void conf_printf2(char *name, int base, int irq, int dma, int dma2);
84
85 /*      From sound_timer.c */
86 void sound_timer_interrupt(void);
87 void sound_timer_syncinterval(unsigned int new_usecs);
88
89 /*      From midi_synth.c       */
90 void do_midi_msg (int synthno, unsigned char *msg, int mlen);