Lines Matching refs:pcm
1412 struct snd_pcm *pcm; in snd_emu10k1_pcm() local
1416 if ((err = snd_pcm_new(emu->card, "emu10k1", device, 32, 1, &pcm)) < 0) in snd_emu10k1_pcm()
1419 pcm->private_data = emu; in snd_emu10k1_pcm()
1421 snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_emu10k1_playback_ops); in snd_emu10k1_pcm()
1422 snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_emu10k1_capture_ops); in snd_emu10k1_pcm()
1424 pcm->info_flags = 0; in snd_emu10k1_pcm()
1425 pcm->dev_subclass = SNDRV_PCM_SUBCLASS_GENERIC_MIX; in snd_emu10k1_pcm()
1426 strcpy(pcm->name, "ADC Capture/Standard PCM Playback"); in snd_emu10k1_pcm()
1427 emu->pcm = pcm; in snd_emu10k1_pcm()
1429 …for (substream = pcm->streams[SNDRV_PCM_STREAM_PLAYBACK].substream; substream; substream = substre… in snd_emu10k1_pcm()
1433 …for (substream = pcm->streams[SNDRV_PCM_STREAM_CAPTURE].substream; substream; substream = substrea… in snd_emu10k1_pcm()
1441 struct snd_pcm *pcm; in snd_emu10k1_pcm_multi() local
1445 if ((err = snd_pcm_new(emu->card, "emu10k1", device, 1, 0, &pcm)) < 0) in snd_emu10k1_pcm_multi()
1448 pcm->private_data = emu; in snd_emu10k1_pcm_multi()
1450 snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_emu10k1_efx_playback_ops); in snd_emu10k1_pcm_multi()
1452 pcm->info_flags = 0; in snd_emu10k1_pcm_multi()
1453 pcm->dev_subclass = SNDRV_PCM_SUBCLASS_GENERIC_MIX; in snd_emu10k1_pcm_multi()
1454 strcpy(pcm->name, "Multichannel Playback"); in snd_emu10k1_pcm_multi()
1455 emu->pcm_multi = pcm; in snd_emu10k1_pcm_multi()
1457 …for (substream = pcm->streams[SNDRV_PCM_STREAM_PLAYBACK].substream; substream; substream = substre… in snd_emu10k1_pcm_multi()
1478 struct snd_pcm *pcm; in snd_emu10k1_pcm_mic() local
1481 if ((err = snd_pcm_new(emu->card, "emu10k1 mic", device, 0, 1, &pcm)) < 0) in snd_emu10k1_pcm_mic()
1484 pcm->private_data = emu; in snd_emu10k1_pcm_mic()
1486 snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_emu10k1_capture_mic_ops); in snd_emu10k1_pcm_mic()
1488 pcm->info_flags = 0; in snd_emu10k1_pcm_mic()
1489 strcpy(pcm->name, "Mic Capture"); in snd_emu10k1_pcm_mic()
1490 emu->pcm_mic = pcm; in snd_emu10k1_pcm_mic()
1492 …snd_pcm_lib_preallocate_pages_for_all(pcm, SNDRV_DMA_TYPE_DEV, snd_dma_pci_data(emu->pci), 64*1024… in snd_emu10k1_pcm_mic()
1612 struct snd_emu10k1_fx8010_pcm *pcm = &emu->fx8010.pcm[substream->number]; in fx8010_pb_trans_copy() local
1613 unsigned int tram_size = pcm->buffer_size; in fx8010_pb_trans_copy()
1616 unsigned int tram_pos = pcm->tram_pos; in fx8010_pb_trans_copy()
1617 unsigned int tram_shift = pcm->tram_shift; in fx8010_pb_trans_copy()
1633 pcm->tram_pos = tram_pos; in fx8010_pb_trans_copy()
1634 pcm->tram_shift = tram_shift; in fx8010_pb_trans_copy()
1640 struct snd_emu10k1_fx8010_pcm *pcm = &emu->fx8010.pcm[substream->number]; in snd_emu10k1_fx8010_playback_transfer() local
1642 return snd_pcm_indirect_playback_transfer(substream, &pcm->pcm_rec, in snd_emu10k1_fx8010_playback_transfer()
1655 struct snd_emu10k1_fx8010_pcm *pcm = &emu->fx8010.pcm[substream->number]; in snd_emu10k1_fx8010_playback_hw_free() local
1658 for (i = 0; i < pcm->channels; i++) in snd_emu10k1_fx8010_playback_hw_free()
1659 snd_emu10k1_ptr_write(emu, TANKMEMADDRREGBASE + 0x80 + pcm->etram[i], 0, 0); in snd_emu10k1_fx8010_playback_hw_free()
1668 struct snd_emu10k1_fx8010_pcm *pcm = &emu->fx8010.pcm[substream->number]; in snd_emu10k1_fx8010_playback_prepare() local
1677 memset(&pcm->pcm_rec, 0, sizeof(pcm->pcm_rec)); in snd_emu10k1_fx8010_playback_prepare()
1678 pcm->pcm_rec.hw_buffer_size = pcm->buffer_size * 2; /* byte size */ in snd_emu10k1_fx8010_playback_prepare()
1679 pcm->pcm_rec.sw_buffer_size = snd_pcm_lib_buffer_bytes(substream); in snd_emu10k1_fx8010_playback_prepare()
1680 pcm->tram_pos = INITIAL_TRAM_POS(pcm->buffer_size); in snd_emu10k1_fx8010_playback_prepare()
1681 pcm->tram_shift = 0; in snd_emu10k1_fx8010_playback_prepare()
1682 snd_emu10k1_ptr_write(emu, emu->gpr_base + pcm->gpr_running, 0, 0); /* reset */ in snd_emu10k1_fx8010_playback_prepare()
1683 snd_emu10k1_ptr_write(emu, emu->gpr_base + pcm->gpr_trigger, 0, 0); /* reset */ in snd_emu10k1_fx8010_playback_prepare()
1684 snd_emu10k1_ptr_write(emu, emu->gpr_base + pcm->gpr_size, 0, runtime->buffer_size); in snd_emu10k1_fx8010_playback_prepare()
1685 snd_emu10k1_ptr_write(emu, emu->gpr_base + pcm->gpr_ptr, 0, 0); /* reset ptr number */ in snd_emu10k1_fx8010_playback_prepare()
1686 snd_emu10k1_ptr_write(emu, emu->gpr_base + pcm->gpr_count, 0, runtime->period_size); in snd_emu10k1_fx8010_playback_prepare()
1687 snd_emu10k1_ptr_write(emu, emu->gpr_base + pcm->gpr_tmpcount, 0, runtime->period_size); in snd_emu10k1_fx8010_playback_prepare()
1688 for (i = 0; i < pcm->channels; i++) in snd_emu10k1_fx8010_playback_prepare()
1689 … TANKMEMADDRREGBASE + 0x80 + pcm->etram[i], 0, (TANKMEMADDRREG_READ|TANKMEMADDRREG_ALIGN) + i * (r… in snd_emu10k1_fx8010_playback_prepare()
1696 struct snd_emu10k1_fx8010_pcm *pcm = &emu->fx8010.pcm[substream->number]; in snd_emu10k1_fx8010_playback_trigger() local
1717 …_register_irq_handler(emu, snd_emu10k1_fx8010_playback_irq, pcm->gpr_running, substream, &pcm->irq… in snd_emu10k1_fx8010_playback_trigger()
1721 snd_emu10k1_ptr_write(emu, emu->gpr_base + pcm->gpr_trigger, 0, 1); in snd_emu10k1_fx8010_playback_trigger()
1726 snd_emu10k1_fx8010_unregister_irq_handler(emu, &pcm->irq); in snd_emu10k1_fx8010_playback_trigger()
1727 snd_emu10k1_ptr_write(emu, emu->gpr_base + pcm->gpr_trigger, 0, 0); in snd_emu10k1_fx8010_playback_trigger()
1728 pcm->tram_pos = INITIAL_TRAM_POS(pcm->buffer_size); in snd_emu10k1_fx8010_playback_trigger()
1729 pcm->tram_shift = 0; in snd_emu10k1_fx8010_playback_trigger()
1743 struct snd_emu10k1_fx8010_pcm *pcm = &emu->fx8010.pcm[substream->number]; in snd_emu10k1_fx8010_playback_pointer() local
1746 if (!snd_emu10k1_ptr_read(emu, emu->gpr_base + pcm->gpr_trigger, 0)) in snd_emu10k1_fx8010_playback_pointer()
1748 ptr = snd_emu10k1_ptr_read(emu, emu->gpr_base + pcm->gpr_ptr, 0) << 2; in snd_emu10k1_fx8010_playback_pointer()
1749 return snd_pcm_indirect_playback_pointer(substream, &pcm->pcm_rec, ptr); in snd_emu10k1_fx8010_playback_pointer()
1775 struct snd_emu10k1_fx8010_pcm *pcm = &emu->fx8010.pcm[substream->number]; in snd_emu10k1_fx8010_playback_open() local
1778 runtime->hw.channels_min = runtime->hw.channels_max = pcm->channels; in snd_emu10k1_fx8010_playback_open()
1779 runtime->hw.period_bytes_max = (pcm->buffer_size * 2) / 2; in snd_emu10k1_fx8010_playback_open()
1781 if (pcm->valid == 0) { in snd_emu10k1_fx8010_playback_open()
1785 pcm->opened = 1; in snd_emu10k1_fx8010_playback_open()
1793 struct snd_emu10k1_fx8010_pcm *pcm = &emu->fx8010.pcm[substream->number]; in snd_emu10k1_fx8010_playback_close() local
1796 pcm->opened = 0; in snd_emu10k1_fx8010_playback_close()
1815 struct snd_pcm *pcm; in snd_emu10k1_pcm_efx() local
1819 if ((err = snd_pcm_new(emu->card, "emu10k1 efx", device, 8, 1, &pcm)) < 0) in snd_emu10k1_pcm_efx()
1822 pcm->private_data = emu; in snd_emu10k1_pcm_efx()
1824 snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_emu10k1_fx8010_playback_ops); in snd_emu10k1_pcm_efx()
1825 snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_emu10k1_capture_efx_ops); in snd_emu10k1_pcm_efx()
1827 pcm->info_flags = 0; in snd_emu10k1_pcm_efx()
1828 strcpy(pcm->name, "Multichannel Capture/PT Playback"); in snd_emu10k1_pcm_efx()
1829 emu->pcm_efx = pcm; in snd_emu10k1_pcm_efx()
1864 …snd_pcm_lib_preallocate_pages_for_all(pcm, SNDRV_DMA_TYPE_DEV, snd_dma_pci_data(emu->pci), 64*1024… in snd_emu10k1_pcm_efx()