Lines Matching refs:dmix

133 	snd_pcm_type_t type;		/* type (dmix, dsnoop, dshare) */
190 } dmix;
274 int snd_pcm_direct_semaphore_create_or_connect(snd_pcm_direct_t *dmix);
276 static inline int snd_pcm_direct_semaphore_discard(snd_pcm_direct_t *dmix)
278 if (dmix->semid >= 0) {
279 if (semctl(dmix->semid, 0, IPC_RMID, NULL) < 0)
281 dmix->semid = -1;
286 static inline int snd_pcm_direct_semaphore_down(snd_pcm_direct_t *dmix, int sem_num)
289 int err = semop(dmix->semid, op, 2);
291 dmix->locked[sem_num]++;
297 static inline int snd_pcm_direct_semaphore_up(snd_pcm_direct_t *dmix, int sem_num)
300 int err = semop(dmix->semid, &op, 1);
302 dmix->locked[sem_num]--;
308 static inline int snd_pcm_direct_semaphore_final(snd_pcm_direct_t *dmix, int sem_num)
310 if (dmix->locked[sem_num] != 1) {
311 SNDMSG("invalid semaphore count to finalize %d: %d", sem_num, dmix->locked[sem_num]);
314 return snd_pcm_direct_semaphore_up(dmix, sem_num);
317 int snd_pcm_direct_shm_create_or_connect(snd_pcm_direct_t *dmix);
318 int snd_pcm_direct_shm_discard(snd_pcm_direct_t *dmix);
319 int snd_pcm_direct_server_create(snd_pcm_direct_t *dmix);
320 int snd_pcm_direct_server_discard(snd_pcm_direct_t *dmix);
321 int snd_pcm_direct_client_connect(snd_pcm_direct_t *dmix);
322 int snd_pcm_direct_client_discard(snd_pcm_direct_t *dmix);
323 int snd_pcm_direct_initialize_slave(snd_pcm_direct_t *dmix, snd_pcm_t *spcm, struct slave_params *params);
324 int snd_pcm_direct_initialize_secondary_slave(snd_pcm_direct_t *dmix, snd_pcm_t *spcm, struct slave_params *params);
325 int snd_pcm_direct_initialize_poll_fd(snd_pcm_direct_t *dmix);
326 int snd_pcm_direct_check_interleave(snd_pcm_direct_t *dmix, snd_pcm_t *pcm);
327 int snd_pcm_direct_parse_bindings(snd_pcm_direct_t *dmix,
345 int snd_pcm_direct_timer_stop(snd_pcm_direct_t *dmix);
346 int snd_pcm_direct_clear_timer_queue(snd_pcm_direct_t *dmix);
347 int snd_pcm_direct_set_timer_params(snd_pcm_direct_t *dmix);
348 int snd_pcm_direct_open_secondary_client(snd_pcm_t **spcmp, snd_pcm_direct_t *dmix, const char *client_name);
357 void snd_pcm_direct_reset_slave_ptr(snd_pcm_t *pcm, snd_pcm_direct_t *dmix, snd_pcm_uframes_t hw_ptr);