Lines Matching refs:runtime
45 static void vx_pcm_read_per_bytes(struct vx_core *chip, struct snd_pcm_runtime *runtime,
49 unsigned char *buf = (unsigned char *)(runtime->dma_area + offset);
53 buf = (unsigned char *)runtime->dma_area;
58 buf = (unsigned char *)runtime->dma_area;
146 * @runtime: pcm runtime instance to be referred
151 struct snd_pcm_runtime *runtime)
155 if (runtime->channels == 1)
157 if (snd_pcm_format_little_endian(runtime->format))
159 if (runtime->rate < 32000 && runtime->rate > 11025)
161 else if (runtime->rate <= 11025)
164 switch (snd_pcm_format_physical_width(runtime->format)) {
516 struct snd_pcm_runtime *runtime = subs->runtime;
543 runtime->hw = vx_pcm_playback_hw;
544 runtime->hw.period_bytes_min = chip->ibl.size;
545 runtime->private_data = pipe;
548 snd_pcm_hw_constraint_step(runtime, 0, SNDRV_PCM_HW_PARAM_BUFFER_BYTES, 4);
549 snd_pcm_hw_constraint_step(runtime, 0, SNDRV_PCM_HW_PARAM_PERIOD_BYTES, 4);
562 if (! subs->runtime->private_data)
565 pipe = subs->runtime->private_data;
612 struct snd_pcm_runtime *runtime,
634 vx_pseudo_dma_write(chip, runtime, pipe, size);
650 struct snd_pcm_runtime *runtime,
667 if (pipe->position >= (int)runtime->buffer_size)
668 pipe->position %= runtime->buffer_size;
682 struct snd_pcm_runtime *runtime = subs->runtime;
687 err = vx_pcm_playback_transfer_chunk(chip, runtime, pipe,
703 struct snd_pcm_runtime *runtime = subs->runtime;
706 err = vx_update_pipe_position(chip, runtime, pipe);
709 if (pipe->transferred >= (int)runtime->period_size) {
710 pipe->transferred %= runtime->period_size;
722 struct vx_pipe *pipe = subs->runtime->private_data;
776 struct snd_pcm_runtime *runtime = subs->runtime;
777 struct vx_pipe *pipe = runtime->private_data;
787 struct snd_pcm_runtime *runtime = subs->runtime;
788 struct vx_pipe *pipe = runtime->private_data;
817 if (chip->pcm_running && chip->freq != runtime->rate) {
820 runtime->rate, chip->freq);
823 vx_set_clock(chip, runtime->rate);
825 err = vx_set_format(chip, pipe, runtime);
835 pipe->buffer_bytes = frames_to_bytes(runtime, runtime->buffer_size);
836 pipe->period_bytes = frames_to_bytes(runtime, runtime->period_size);
840 vx_update_pipe_position(chip, runtime, pipe);
892 struct snd_pcm_runtime *runtime = subs->runtime;
935 runtime->hw = vx_pcm_capture_hw;
936 runtime->hw.period_bytes_min = chip->ibl.size;
937 runtime->private_data = pipe;
940 snd_pcm_hw_constraint_step(runtime, 0, SNDRV_PCM_HW_PARAM_BUFFER_BYTES, 4);
941 snd_pcm_hw_constraint_step(runtime, 0, SNDRV_PCM_HW_PARAM_PERIOD_BYTES, 4);
955 if (! subs->runtime->private_data)
957 pipe = subs->runtime->private_data;
989 struct snd_pcm_runtime *runtime = subs->runtime;
994 size = runtime->buffer_size - snd_pcm_capture_avail(runtime);
997 size = frames_to_bytes(runtime, size);
1017 vx_pcm_read_per_bytes(chip, runtime, pipe);
1025 vx_pseudo_dma_read(chip, runtime, pipe, space);
1033 vx_pcm_read_per_bytes(chip, runtime, pipe);
1041 vx_pcm_read_per_bytes(chip, runtime, pipe);
1063 struct snd_pcm_runtime *runtime = subs->runtime;
1064 struct vx_pipe *pipe = runtime->private_data;
1065 return bytes_to_frames(runtime, pipe->hw_ptr);