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