home *** CD-ROM | disk | FTP | other *** search
/ Il CD di internet / CD.iso / SOURCE / KERNEL-S / V1.0 / LINUX-1.0 / LINUX-1 / linux / drivers / sound / sound_calls.h < prev    next >
Encoding:
C/C++ Source or Header  |  1993-12-14  |  6.8 KB  |  204 lines

  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_read (int dev, snd_rw_buf *user_buf, int count);
  8. int DMAbuf_getwrbuffer(int dev, char **buf, int *size);
  9. int DMAbuf_getrdbuffer(int dev, char **buf, int *len);
  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_ioctl(int dev, unsigned int cmd, unsigned int arg, int local);
  13. long DMAbuf_init(long mem_start);
  14. int DMAbuf_start_dma (int dev, unsigned long physaddr, int count, int dma_mode);
  15. int DMAbuf_open_dma (int chan);
  16. void DMAbuf_close_dma (int chan);
  17. void DMAbuf_reset_dma (int chan);
  18. void DMAbuf_inputintr(int dev);
  19. void DMAbuf_outputintr(int dev, int underflow_flag);
  20.  
  21. /*
  22.  *    System calls for /dev/dsp and /dev/audio
  23.  */
  24.  
  25. int audio_read (int dev, struct fileinfo *file, snd_rw_buf *buf, int count);
  26. int audio_write (int dev, struct fileinfo *file, snd_rw_buf *buf, int count);
  27. int audio_open (int dev, struct fileinfo *file);
  28. void audio_release (int dev, struct fileinfo *file);
  29. int audio_ioctl (int dev, struct fileinfo *file,
  30.        unsigned int cmd, unsigned int arg);
  31. int audio_lseek (int dev, struct fileinfo *file, off_t offset, int orig);
  32. long audio_init (long mem_start);
  33.  
  34. /*
  35.  *    System calls for the /dev/sequencer
  36.  */
  37.  
  38. int sequencer_read (int dev, struct fileinfo *file, snd_rw_buf *buf, int count);
  39. int sequencer_write (int dev, struct fileinfo *file, snd_rw_buf *buf, int count);
  40. int sequencer_open (int dev, struct fileinfo *file);
  41. void sequencer_release (int dev, struct fileinfo *file);
  42. int sequencer_ioctl (int dev, struct fileinfo *file,
  43.        unsigned int cmd, unsigned int arg);
  44. int sequencer_lseek (int dev, struct fileinfo *file, off_t offset, int orig);
  45. long sequencer_init (long mem_start);
  46. void sequencer_timer(void);
  47. int note_to_freq(int note_num);
  48. unsigned long compute_finetune(unsigned long base_freq, int bend, int range);
  49.  
  50. #ifdef ALLOW_SELECT
  51. int sequencer_select(int dev, struct fileinfo *file, int sel_type, select_table * wait);
  52. #endif
  53.  
  54. /*
  55.  *    System calls for the /dev/midi
  56.  */
  57.  
  58. int MIDIbuf_read (int dev, struct fileinfo *file, snd_rw_buf *buf, int count);
  59. int MIDIbuf_write (int dev, struct fileinfo *file, snd_rw_buf *buf, int count);
  60. int MIDIbuf_open (int dev, struct fileinfo *file);
  61. void MIDIbuf_release (int dev, struct fileinfo *file);
  62. int MIDIbuf_ioctl (int dev, struct fileinfo *file,
  63.        unsigned int cmd, unsigned int arg);
  64. int MIDIbuf_lseek (int dev, struct fileinfo *file, off_t offset, int orig);
  65. void MIDIbuf_bytes_received(int dev, unsigned char *buf, int count);
  66. long MIDIbuf_init(long mem_start);
  67.  
  68. /*
  69.  *    System calls for the generic midi interface.
  70.  *
  71.  */
  72.  
  73. long  CMIDI_init  (long mem_start);
  74. int   CMIDI_open  (int dev, struct fileinfo *file);
  75. int   CMIDI_write (int dev, struct fileinfo *file, snd_rw_buf *buf, int count);
  76. int   CMIDI_read  (int dev, struct fileinfo *file, snd_rw_buf *buf, int count);
  77. int   CMIDI_close (int dev, struct fileinfo *file); 
  78.  
  79. /*
  80.  *
  81.  *    Misc calls from various sources
  82.  */
  83.  
  84. /*     From pro_midi.c     */
  85.  
  86. long pro_midi_attach(long mem_start);
  87. int  pro_midi_open(int dev, int mode);
  88. void pro_midi_close(int dev);
  89. int pro_midi_write(int dev, snd_rw_buf *uio);
  90. int pro_midi_read(int dev, snd_rw_buf *uio);
  91.  
  92. /*    From soundcard.c    */
  93. long soundcard_init(long mem_start);
  94. void tenmicrosec(void);
  95. void request_sound_timer (int count);
  96. void sound_stop_timer(void);
  97. int snd_ioctl_return(int *addr, int value);
  98. int snd_set_irq_handler (int interrupt_level, void(*hndlr)(int));
  99. void snd_release_irq(int vect);
  100. void sound_dma_malloc(int dev);
  101. void sound_dma_free(int dev);
  102.  
  103. /*    From sound_switch.c    */
  104. int sound_read_sw (int dev, struct fileinfo *file, snd_rw_buf *buf, int count);
  105. int sound_write_sw (int dev, struct fileinfo *file, snd_rw_buf *buf, int count);
  106. int sound_open_sw (int dev, struct fileinfo *file);
  107. void sound_release_sw (int dev, struct fileinfo *file);
  108. int sound_ioctl_sw (int dev, struct fileinfo *file,
  109.          unsigned int cmd, unsigned long arg);
  110.  
  111. /*    From sb_dsp.c    */
  112. int sb_dsp_detect (struct address_info *hw_config);
  113. long sb_dsp_init (long mem_start, struct address_info *hw_config);
  114. void sb_dsp_disable_midi(void);
  115. int sb_get_irq(void);
  116. void sb_free_irq(void);
  117. int sb_dsp_command (unsigned char val);
  118. int sb_reset_dsp (void);
  119.  
  120. /*    From sb16_dsp.c    */
  121. void sb16_dsp_interrupt (int unused);
  122. long sb16_dsp_init(long mem_start, struct address_info *hw_config);
  123. int sb16_dsp_detect(struct address_info *hw_config);
  124.  
  125. /*    From sb16_midi.c    */
  126. void sb16midiintr (int unit);
  127. long attach_sb16midi(long mem_start, struct address_info * hw_config);
  128. int probe_sb16midi(struct address_info *hw_config);
  129.  
  130. /*    From sb_midi.c    */
  131. void sb_midi_init(int model);
  132.  
  133. /*    From sb_mixer.c    */
  134. void sb_setmixer (unsigned int port, unsigned int value);
  135. int sb_getmixer (unsigned int port);
  136. void sb_mixer_set_stereo(int mode);
  137. void sb_mixer_init(int major_model);
  138.  
  139. /*    From opl3.c    */
  140. int opl3_detect (int ioaddr);
  141. long opl3_init(long mem_start);
  142.  
  143. /*    From sb_card.c    */
  144. long attach_sb_card(long mem_start, struct address_info *hw_config);
  145. int probe_sb(struct address_info *hw_config);
  146.  
  147. /*    From adlib_card.c    */
  148. long attach_adlib_card(long mem_start, struct address_info *hw_config);
  149. int probe_adlib(struct address_info *hw_config);
  150.  
  151. /*    From pas_card.c    */
  152. long attach_pas_card(long mem_start, struct address_info *hw_config);
  153. int probe_pas(struct address_info *hw_config);
  154. int pas_set_intr(int mask);
  155. int pas_remove_intr(int mask);
  156. unsigned char pas_read(int ioaddr);
  157. void pas_write(unsigned char data, int ioaddr);
  158.  
  159. /*    From pas_audio.c */
  160. void pas_pcm_interrupt(unsigned char status, int cause);
  161. long pas_pcm_init(long mem_start, struct address_info *hw_config);
  162.  
  163. /*    From pas_mixer.c */
  164. int pas_init_mixer(void);
  165.  
  166. /*    From pas_midi.c */
  167. long pas_midi_init(long mem_start);
  168. void pas_midi_interrupt(void);
  169.  
  170. /*    From gus_card.c */
  171. long attach_gus_card(long mem_start, struct address_info * hw_config);
  172. int probe_gus(struct address_info *hw_config);
  173. int gus_set_midi_irq(int num);
  174. void gusintr(int);
  175.  
  176. /*    From gus_wave.c */
  177. int gus_wave_detect(int baseaddr);
  178. long gus_wave_init(long mem_start, int irq, int dma);
  179. void gus_voice_irq(void);
  180. unsigned char gus_read8 (int reg);
  181. void gus_write8(int reg, unsigned int data);
  182. void guswave_dma_irq(void);
  183. void gus_delay(void);
  184.  
  185. /*    From gus_midi.c */
  186. long gus_midi_init(long mem_start);
  187. void gus_midi_interrupt(int dummy);
  188.  
  189. /*    From mpu401.c */
  190. long attach_mpu401(long mem_start, struct address_info * hw_config);
  191. int probe_mpu401(struct address_info *hw_config);
  192.  
  193. /*    From opl3.c */
  194. void enable_opl3_mode(int left, int right, int both);
  195.  
  196. /*    From patmgr.c */
  197. int pmgr_open(int dev);
  198. void pmgr_release(int dev);
  199. int pmgr_read (int dev, struct fileinfo *file, snd_rw_buf * buf, int count);
  200. int pmgr_write (int dev, struct fileinfo *file, snd_rw_buf * buf, int count);
  201. int pmgr_access(int dev, struct patmgr_info *rec);
  202. int pmgr_inform(int dev, int event, unsigned long parm1, unsigned long parm2,
  203.                     unsigned long parm3, unsigned long parm4);
  204.