Lines Matching refs:voices

214 		voice = &chip->voices[idx];  in voice_alloc()
215 voice2 = pair ? &chip->voices[idx+1] : NULL; in voice_alloc()
332 if (ypcm->voices[1]) in snd_ymfpci_pcm_interrupt()
333 bank = &ypcm->voices[1]->bank[next_bank]; in snd_ymfpci_pcm_interrupt()
385 if (ypcm->voices[0] == NULL) { in snd_ymfpci_playback_trigger()
393 chip->ctrl_playback[ypcm->voices[0]->number + 1] = cpu_to_le32(ypcm->voices[0]->bank_addr); in snd_ymfpci_playback_trigger()
394 if (ypcm->voices[1] != NULL && !ypcm->use_441_slot) in snd_ymfpci_playback_trigger()
395 chip->ctrl_playback[ypcm->voices[1]->number + 1] = cpu_to_le32(ypcm->voices[1]->bank_addr); in snd_ymfpci_playback_trigger()
406 chip->ctrl_playback[ypcm->voices[0]->number + 1] = 0; in snd_ymfpci_playback_trigger()
407 if (ypcm->voices[1] != NULL && !ypcm->use_441_slot) in snd_ymfpci_playback_trigger()
408 chip->ctrl_playback[ypcm->voices[1]->number + 1] = 0; in snd_ymfpci_playback_trigger()
453 static int snd_ymfpci_pcm_voice_alloc(struct snd_ymfpci_pcm *ypcm, int voices) in snd_ymfpci_pcm_voice_alloc() argument
457 if (ypcm->voices[1] != NULL && voices < 2) { in snd_ymfpci_pcm_voice_alloc()
458 snd_ymfpci_voice_free(ypcm->chip, ypcm->voices[1]); in snd_ymfpci_pcm_voice_alloc()
459 ypcm->voices[1] = NULL; in snd_ymfpci_pcm_voice_alloc()
461 if (voices == 1 && ypcm->voices[0] != NULL) in snd_ymfpci_pcm_voice_alloc()
463 if (voices == 2 && ypcm->voices[0] != NULL && ypcm->voices[1] != NULL) in snd_ymfpci_pcm_voice_alloc()
465 if (voices > 1) { in snd_ymfpci_pcm_voice_alloc()
466 if (ypcm->voices[0] != NULL && ypcm->voices[1] == NULL) { in snd_ymfpci_pcm_voice_alloc()
467 snd_ymfpci_voice_free(ypcm->chip, ypcm->voices[0]); in snd_ymfpci_pcm_voice_alloc()
468 ypcm->voices[0] = NULL; in snd_ymfpci_pcm_voice_alloc()
471 err = snd_ymfpci_voice_alloc(ypcm->chip, YMFPCI_PCM, voices > 1, &ypcm->voices[0]); in snd_ymfpci_pcm_voice_alloc()
474 ypcm->voices[0]->ypcm = ypcm; in snd_ymfpci_pcm_voice_alloc()
475 ypcm->voices[0]->interrupt = snd_ymfpci_pcm_interrupt; in snd_ymfpci_pcm_voice_alloc()
476 if (voices > 1) { in snd_ymfpci_pcm_voice_alloc()
477 ypcm->voices[1] = &ypcm->chip->voices[ypcm->voices[0]->number + 1]; in snd_ymfpci_pcm_voice_alloc()
478 ypcm->voices[1]->ypcm = ypcm; in snd_ymfpci_pcm_voice_alloc()
487 struct snd_ymfpci_voice *voice = ypcm->voices[voiceidx]; in snd_ymfpci_pcm_init_voice()
648 if (ypcm->voices[1]) { in snd_ymfpci_playback_hw_free()
649 snd_ymfpci_voice_free(chip, ypcm->voices[1]); in snd_ymfpci_playback_hw_free()
650 ypcm->voices[1] = NULL; in snd_ymfpci_playback_hw_free()
652 if (ypcm->voices[0]) { in snd_ymfpci_playback_hw_free()
653 snd_ymfpci_voice_free(chip, ypcm->voices[0]); in snd_ymfpci_playback_hw_free()
654 ypcm->voices[0] = NULL; in snd_ymfpci_playback_hw_free()
741 struct snd_ymfpci_voice *voice = ypcm->voices[0]; in snd_ymfpci_playback_pointer()
786 voice = &chip->voices[nvoice]; in snd_ymfpci_interrupt()
2109 chip->voices[voice].number = voice; in snd_ymfpci_memalloc()
2110 chip->voices[voice].bank = (struct snd_ymfpci_playback_bank *)ptr; in snd_ymfpci_memalloc()
2111 chip->voices[voice].bank_addr = ptr_addr; in snd_ymfpci_memalloc()