root/drivers/sound/sound_calls.h

/* [previous][next][first][last][top][bottom][index][help] */

INCLUDED FROM


   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_ioctl(int dev, unsigned int cmd, ioctl_arg arg, int local);
  12 long DMAbuf_init(long mem_start);
  13 int DMAbuf_start_dma (int dev, unsigned long physaddr, int count, int dma_mode);
  14 int DMAbuf_open_dma (int dev);
  15 void DMAbuf_close_dma (int dev);
  16 void DMAbuf_reset_dma (int dev);
  17 void DMAbuf_inputintr(int dev);
  18 void DMAbuf_outputintr(int dev, int underflow_flag);
  19 int DMAbuf_select(int dev, struct fileinfo *file, int sel_type, select_table * wait);
  20 void DMAbuf_start_devices(unsigned int devmask);
  21 
  22 /*
  23  *      System calls for /dev/dsp and /dev/audio
  24  */
  25 
  26 int audio_read (int dev, struct fileinfo *file, snd_rw_buf *buf, int count);
  27 int audio_write (int dev, struct fileinfo *file, const snd_rw_buf *buf, int count);
  28 int audio_open (int dev, struct fileinfo *file);
  29 void audio_release (int dev, struct fileinfo *file);
  30 int audio_ioctl (int dev, struct fileinfo *file,
  31            unsigned int cmd, ioctl_arg arg);
  32 int audio_lseek (int dev, struct fileinfo *file, off_t offset, int orig);
  33 long audio_init (long mem_start);
  34 
  35 int audio_select(int dev, struct fileinfo *file, int sel_type, select_table * wait);
  36 
  37 /*
  38  *      System calls for the /dev/sequencer
  39  */
  40 
  41 int sequencer_read (int dev, struct fileinfo *file, snd_rw_buf *buf, int count);
  42 int sequencer_write (int dev, struct fileinfo *file, const snd_rw_buf *buf, int count);
  43 int sequencer_open (int dev, struct fileinfo *file);
  44 void sequencer_release (int dev, struct fileinfo *file);
  45 int sequencer_ioctl (int dev, struct fileinfo *file,
  46            unsigned int cmd, ioctl_arg arg);
  47 int sequencer_lseek (int dev, struct fileinfo *file, off_t offset, int orig);
  48 long sequencer_init (long mem_start);
  49 void sequencer_timer(unsigned long dummy);
  50 int note_to_freq(int note_num);
  51 unsigned long compute_finetune(unsigned long base_freq, int bend, int range);
  52 void seq_input_event(unsigned char *event, int len);
  53 void seq_copy_to_input (unsigned char *event, int len);
  54 
  55 int sequencer_select(int dev, struct fileinfo *file, int sel_type, select_table * wait);
  56 
  57 /*
  58  *      System calls for the /dev/midi
  59  */
  60 
  61 int MIDIbuf_read (int dev, struct fileinfo *file, snd_rw_buf *buf, int count);
  62 int MIDIbuf_write (int dev, struct fileinfo *file, const snd_rw_buf *buf, int count);
  63 int MIDIbuf_open (int dev, struct fileinfo *file);
  64 void MIDIbuf_release (int dev, struct fileinfo *file);
  65 int MIDIbuf_ioctl (int dev, struct fileinfo *file,
  66            unsigned int cmd, ioctl_arg arg);
  67 int MIDIbuf_lseek (int dev, struct fileinfo *file, off_t offset, int orig);
  68 void MIDIbuf_bytes_received(int dev, unsigned char *buf, int count);
  69 long MIDIbuf_init(long mem_start);
  70 
  71 int MIDIbuf_select(int dev, struct fileinfo *file, int sel_type, select_table * wait);
  72 
  73 /*
  74  *
  75  *      Misc calls from various sources
  76  */
  77 
  78 /*      From soundcard.c        */
  79 void soundcard_init(void);
  80 void tenmicrosec(void);
  81 void request_sound_timer (int count);
  82 void sound_stop_timer(void);
  83 int snd_ioctl_return(int *addr, int value);
  84 int snd_set_irq_handler (int interrupt_level, void(*hndlr)(int, struct pt_regs *), char *name, sound_os_info *osp);
  85 void snd_release_irq(int vect);
  86 void sound_dma_malloc(int dev);
  87 void sound_dma_free(int dev);
  88 
  89 /*      From sound_switch.c     */
  90 int sound_read_sw (int dev, struct fileinfo *file, snd_rw_buf *buf, int count);
  91 int sound_write_sw (int dev, struct fileinfo *file, const snd_rw_buf *buf, int count);
  92 int sound_open_sw (int dev, struct fileinfo *file);
  93 void sound_release_sw (int dev, struct fileinfo *file);
  94 int sound_ioctl_sw (int dev, struct fileinfo *file,
  95              unsigned int cmd, ioctl_arg arg);
  96 
  97 /*      From sb_dsp.c   */
  98 int sb_dsp_detect (struct address_info *hw_config);
  99 long sb_dsp_init (long mem_start, struct address_info *hw_config);
 100 void sb_dsp_disable_midi(void);
 101 int sb_get_irq(void);
 102 void sb_free_irq(void);
 103 int sb_dsp_command (unsigned char val);
 104 int sb_reset_dsp (void);
 105 void sb_dsp_unload(void);
 106 
 107 /*      From sb16_dsp.c */
 108 void sb16_dsp_interrupt (int irq);
 109 long sb16_dsp_init(long mem_start, struct address_info *hw_config);
 110 int sb16_dsp_detect(struct address_info *hw_config);
 111 
 112 /*      From sb16_midi.c        */
 113 void sb16midiintr (int unit);
 114 long attach_sb16midi(long mem_start, struct address_info * hw_config);
 115 int probe_sb16midi(struct address_info *hw_config);
 116 void sb_midi_interrupt(int dummy);
 117 
 118 /*      From sb_midi.c  */
 119 void sb_midi_init(int model);
 120 
 121 /*      From sb_mixer.c */
 122 void sb_setmixer (unsigned int port, unsigned int value);
 123 int sb_getmixer (unsigned int port);
 124 void sb_mixer_set_stereo(int mode);
 125 int sb_mixer_init(int major_model);
 126 
 127 /*      From opl3.c     */
 128 int opl3_detect (int ioaddr, sound_os_info *osp);
 129 long opl3_init(long mem_start, int ioaddr, sound_os_info *osp);
 130 
 131 /*      From sb_card.c  */
 132 long attach_sb_card(long mem_start, struct address_info *hw_config);
 133 int probe_sb(struct address_info *hw_config);
 134 
 135 /*      From adlib_card.c       */
 136 long attach_adlib_card(long mem_start, struct address_info *hw_config);
 137 int probe_adlib(struct address_info *hw_config);
 138 
 139 /*      From pas_card.c */
 140 long attach_pas_card(long mem_start, struct address_info *hw_config);
 141 int probe_pas(struct address_info *hw_config);
 142 int pas_set_intr(int mask);
 143 int pas_remove_intr(int mask);
 144 unsigned char pas_read(int ioaddr);
 145 void pas_write(unsigned char data, int ioaddr);
 146 
 147 /*      From pas_audio.c */
 148 void pas_pcm_interrupt(unsigned char status, int cause);
 149 long pas_pcm_init(long mem_start, struct address_info *hw_config);
 150 
 151 /*      From pas_mixer.c */
 152 int pas_init_mixer(void);
 153 
 154 /*      From pas_midi.c */
 155 long pas_midi_init(long mem_start);
 156 void pas_midi_interrupt(void);
 157 
 158 /*      From gus_card.c */
 159 long attach_gus_card(long mem_start, struct address_info * hw_config);
 160 int probe_gus(struct address_info *hw_config);
 161 int gus_set_midi_irq(int num);
 162 void gusintr(int irq, struct pt_regs * dummy);
 163 long attach_gus_db16(long mem_start, struct address_info * hw_config);
 164 int probe_gus_db16(struct address_info *hw_config);
 165 
 166 /*      From gus_wave.c */
 167 int gus_wave_detect(int baseaddr);
 168 long gus_wave_init(long mem_start, struct address_info *hw_config);
 169 void gus_wave_unload (void);
 170 void gus_voice_irq(void);
 171 unsigned char gus_read8 (int reg);
 172 void gus_write8(int reg, unsigned int data);
 173 void guswave_dma_irq(void);
 174 void gus_delay(void);
 175 int gus_default_mixer_ioctl (int dev, unsigned int cmd, ioctl_arg arg);
 176 void gus_timer_command (unsigned int addr, unsigned int val);
 177 
 178 /*      From gus_midi.c */
 179 long gus_midi_init(long mem_start);
 180 void gus_midi_interrupt(int dummy);
 181 
 182 /*      From mpu401.c */
 183 long attach_mpu401(long mem_start, struct address_info * hw_config);
 184 int probe_mpu401(struct address_info *hw_config);
 185 void mpuintr(int irq, struct pt_regs * dummy);
 186 
 187 /*      From uart6850.c */
 188 long attach_uart6850(long mem_start, struct address_info * hw_config);
 189 int probe_uart6850(struct address_info *hw_config);
 190 
 191 /*      From opl3.c */
 192 void enable_opl3_mode(int left, int right, int both);
 193 
 194 /*      From patmgr.c */
 195 int pmgr_open(int dev);
 196 void pmgr_release(int dev);
 197 int pmgr_read (int dev, struct fileinfo *file, snd_rw_buf * buf, int count);
 198 int pmgr_write (int dev, struct fileinfo *file, const snd_rw_buf * buf, int count);
 199 int pmgr_access(int dev, struct patmgr_info *rec);
 200 int pmgr_inform(int dev, int event, unsigned long parm1, unsigned long parm2,
 201                                     unsigned long parm3, unsigned long parm4);
 202 
 203 /*      From ics2101.c */
 204 long ics2101_mixer_init(long mem_start);
 205 
 206 /*      From sound_timer.c */
 207 void sound_timer_interrupt(void);
 208 void sound_timer_syncinterval(unsigned int new_usecs);
 209 
 210 /*      From ad1848.c */
 211 void ad1848_init (char *name, int io_base, int irq, int dma_playback, int dma_capture, int share_dma, sound_os_info *osp);
 212 void ad1848_unload (int io_base, int irq, int dma_playback, int dma_capture, int share_dma);
 213 
 214 int ad1848_detect (int io_base, int *flags, sound_os_info *osp);
 215 #define AD_F_CS4231     0x0001  /* Returned if a CS4232 (or compatible) detected */
 216 #define AD_F_CS4248     0x0001  /* Returned if a CS4248 (or compatible) detected */
 217 
 218 void     ad1848_interrupt (int irq, struct pt_regs * dummy);
 219 long attach_ms_sound(long mem_start, struct address_info * hw_config);
 220 int probe_ms_sound(struct address_info *hw_config);
 221 long attach_pnp_ad1848(long mem_start, struct address_info * hw_config);
 222 int probe_pnp_ad1848(struct address_info *hw_config);
 223 void unload_pnp_ad1848(struct address_info *hw_info);
 224 
 225 /*      From pss.c */
 226 int probe_pss (struct address_info *hw_config);
 227 long attach_pss (long mem_start, struct address_info *hw_config);
 228 int probe_pss_mpu (struct address_info *hw_config);
 229 long attach_pss_mpu (long mem_start, struct address_info *hw_config);
 230 int probe_pss_mss (struct address_info *hw_config);
 231 long attach_pss_mss (long mem_start, struct address_info *hw_config);
 232 
 233 /*      From sscape.c */
 234 int probe_sscape (struct address_info *hw_config);
 235 long attach_sscape (long mem_start, struct address_info *hw_config);
 236 int probe_ss_ms_sound (struct address_info *hw_config);
 237 long attach_ss_ms_sound(long mem_start, struct address_info * hw_config);
 238 
 239 int pss_read (int dev, struct fileinfo *file, snd_rw_buf *buf, int count);
 240 int pss_write (int dev, struct fileinfo *file, snd_rw_buf *buf, int count);
 241 int pss_open (int dev, struct fileinfo *file);
 242 void pss_release (int dev, struct fileinfo *file);
 243 int pss_ioctl (int dev, struct fileinfo *file,
 244            unsigned int cmd, ioctl_arg arg);
 245 int pss_lseek (int dev, struct fileinfo *file, off_t offset, int orig);
 246 long pss_init(long mem_start);
 247 
 248 /* From aedsp16.c */
 249 int InitAEDSP16_SBPRO(struct address_info *hw_config);
 250 int InitAEDSP16_MSS(struct address_info *hw_config);
 251 int InitAEDSP16_MPU401(struct address_info *hw_config);
 252 
 253 /*      From midi_synth.c       */
 254 void do_midi_msg (int synthno, unsigned char *msg, int mlen);
 255 
 256 /*      From trix.c     */
 257 long attach_trix_wss (long mem_start, struct address_info *hw_config);
 258 int probe_trix_wss (struct address_info *hw_config);
 259 long attach_trix_sb (long mem_start, struct address_info *hw_config);
 260 int probe_trix_sb (struct address_info *hw_config);
 261 long attach_trix_mpu (long mem_start, struct address_info *hw_config);
 262 int probe_trix_mpu (struct address_info *hw_config);
 263 
 264 /*      From mad16.c    */
 265 long attach_mad16 (long mem_start, struct address_info *hw_config);
 266 int probe_mad16 (struct address_info *hw_config);
 267 long attach_mad16_mpu (long mem_start, struct address_info *hw_config);
 268 int probe_mad16_mpu (struct address_info *hw_config);
 269 int mad16_sb_dsp_detect (struct address_info *hw_config);
 270 long mad16_sb_dsp_init (long mem_start, struct address_info *hw_config);
 271 
 272 /*      Unload routines from various source files*/
 273 void unload_pss(struct address_info *hw_info);
 274 void unload_pss_mpu(struct address_info *hw_info);
 275 void unload_pss_mss(struct address_info *hw_info);
 276 void unload_mad16(struct address_info *hw_info);
 277 void unload_mad16_mpu(struct address_info *hw_info);
 278 void unload_adlib(struct address_info *hw_info);
 279 void unload_pas(struct address_info *hw_info);
 280 void unload_mpu401(struct address_info *hw_info);
 281 void unload_maui(struct address_info *hw_info);
 282 void unload_uart6850(struct address_info *hw_info);
 283 void unload_sb(struct address_info *hw_info);
 284 void unload_sb16(struct address_info *hw_info);
 285 void unload_sb16midi(struct address_info *hw_info);
 286 void unload_gus_db16(struct address_info *hw_info);
 287 void unload_ms_sound(struct address_info *hw_info);
 288 void unload_gus(struct address_info *hw_info);
 289 void unload_sscape(struct address_info *hw_info);
 290 void unload_ss_ms_sound(struct address_info *hw_info);
 291 void unload_trix_wss(struct address_info *hw_info);
 292 void unload_trix_sb(struct address_info *hw_info);
 293 void unload_trix_mpu(struct address_info *hw_info);
 294 void unload_cs4232(struct address_info *hw_info);
 295 void unload_cs4232_mpu(struct address_info *hw_info);
 296 
 297 /* From cs4232.c */
 298 
 299 int probe_cs4232 (struct address_info *hw_config);
 300 long attach_cs4232 (long mem_start, struct address_info *hw_config);
 301 int probe_cs4232_mpu (struct address_info *hw_config);
 302 long attach_cs4232_mpu (long mem_start, struct address_info *hw_config);
 303 
 304 /*      From maui.c */
 305 long attach_maui(long mem_start, struct address_info * hw_config);
 306 int probe_maui(struct address_info *hw_config);
 307 
 308 /*      From sound_pnp.c */
 309 void sound_pnp_init(void);
 310 void sound_pnp_disconnect(void);

/* [previous][next][first][last][top][bottom][index][help] */