Lines Matching refs:runtime
94 struct snd_compr_runtime *runtime; in snd_compr_open() local
135 runtime = kzalloc(sizeof(*runtime), GFP_KERNEL); in snd_compr_open()
136 if (!runtime) { in snd_compr_open()
141 runtime->state = SNDRV_PCM_STATE_OPEN; in snd_compr_open()
142 init_waitqueue_head(&runtime->sleep); in snd_compr_open()
143 data->stream.runtime = runtime; in snd_compr_open()
149 kfree(runtime); in snd_compr_open()
159 struct snd_compr_runtime *runtime = data->stream.runtime; in snd_compr_free() local
163 switch (runtime->state) { in snd_compr_free()
174 kfree(data->stream.runtime->buffer); in snd_compr_free()
175 kfree(data->stream.runtime); in snd_compr_free()
189 stream->runtime->total_bytes_transferred = tstamp->copied_total; in snd_compr_update_tstamp()
191 stream->runtime->total_bytes_available = tstamp->copied_total; in snd_compr_update_tstamp()
202 if (stream->runtime->total_bytes_available == 0 && in snd_compr_calc_avail()
203 stream->runtime->state == SNDRV_PCM_STATE_SETUP && in snd_compr_calc_avail()
206 return stream->runtime->buffer_size; in snd_compr_calc_avail()
209 stream->runtime->total_bytes_available, in snd_compr_calc_avail()
210 stream->runtime->total_bytes_transferred); in snd_compr_calc_avail()
211 if (stream->runtime->total_bytes_available == in snd_compr_calc_avail()
212 stream->runtime->total_bytes_transferred) { in snd_compr_calc_avail()
215 return stream->runtime->buffer_size; in snd_compr_calc_avail()
222 avail->avail = stream->runtime->total_bytes_available - in snd_compr_calc_avail()
223 stream->runtime->total_bytes_transferred; in snd_compr_calc_avail()
225 avail->avail = stream->runtime->buffer_size - avail->avail; in snd_compr_calc_avail()
247 switch (stream->runtime->state) { in snd_compr_ioctl_avail()
267 struct snd_compr_runtime *runtime = stream->runtime; in snd_compr_write_data() local
269 u64 app_pointer = div64_u64(runtime->total_bytes_available, in snd_compr_write_data()
270 runtime->buffer_size); in snd_compr_write_data()
271 app_pointer = runtime->total_bytes_available - in snd_compr_write_data()
272 (app_pointer * runtime->buffer_size); in snd_compr_write_data()
274 dstn = runtime->buffer + app_pointer; in snd_compr_write_data()
277 if (count < runtime->buffer_size - app_pointer) { in snd_compr_write_data()
281 copy = runtime->buffer_size - app_pointer; in snd_compr_write_data()
284 if (copy_from_user(runtime->buffer, buf + copy, count - copy)) in snd_compr_write_data()
307 switch (stream->runtime->state) { in snd_compr_write()
330 stream->runtime->total_bytes_available += retval; in snd_compr_write()
334 if (stream->runtime->state == SNDRV_PCM_STATE_SETUP) { in snd_compr_write()
335 stream->runtime->state = SNDRV_PCM_STATE_PREPARED; in snd_compr_write()
362 switch (stream->runtime->state) { in snd_compr_read()
387 stream->runtime->total_bytes_transferred += retval; in snd_compr_read()
421 switch (stream->runtime->state) { in snd_compr_poll()
430 poll_wait(f, &stream->runtime->sleep, wait); in snd_compr_poll()
435 switch (stream->runtime->state) { in snd_compr_poll()
441 stream->runtime->state = SNDRV_PCM_STATE_SETUP; in snd_compr_poll()
446 if (avail >= stream->runtime->fragment_size) in snd_compr_poll()
521 stream->runtime->fragment_size = params->buffer.fragment_size; in snd_compr_allocate_buffer()
522 stream->runtime->fragments = params->buffer.fragments; in snd_compr_allocate_buffer()
523 stream->runtime->buffer = buffer; in snd_compr_allocate_buffer()
524 stream->runtime->buffer_size = buffer_size; in snd_compr_allocate_buffer()
551 if (stream->runtime->state == SNDRV_PCM_STATE_OPEN) { in snd_compr_set_params()
578 stream->runtime->state = SNDRV_PCM_STATE_SETUP; in snd_compr_set_params()
580 stream->runtime->state = SNDRV_PCM_STATE_PREPARED; in snd_compr_set_params()
672 if (stream->runtime->state != SNDRV_PCM_STATE_RUNNING) in snd_compr_pause()
676 stream->runtime->state = SNDRV_PCM_STATE_PAUSED; in snd_compr_pause()
684 if (stream->runtime->state != SNDRV_PCM_STATE_PAUSED) in snd_compr_resume()
688 stream->runtime->state = SNDRV_PCM_STATE_RUNNING; in snd_compr_resume()
696 if (stream->runtime->state != SNDRV_PCM_STATE_PREPARED) in snd_compr_start()
700 stream->runtime->state = SNDRV_PCM_STATE_RUNNING; in snd_compr_start()
708 if (stream->runtime->state == SNDRV_PCM_STATE_PREPARED || in snd_compr_stop()
709 stream->runtime->state == SNDRV_PCM_STATE_SETUP) in snd_compr_stop()
714 stream->runtime->total_bytes_available = 0; in snd_compr_stop()
715 stream->runtime->total_bytes_transferred = 0; in snd_compr_stop()
729 wake_up(&stream->runtime->sleep); in error_delayed_work()
746 if (stream->runtime->state == state) in snd_compr_stop_error()
749 stream->runtime->state = state; in snd_compr_stop_error()
771 stream->runtime->state = SNDRV_PCM_STATE_DRAINING; in snd_compress_wait_for_drain()
780 ret = wait_event_interruptible(stream->runtime->sleep, in snd_compress_wait_for_drain()
781 (stream->runtime->state != SNDRV_PCM_STATE_DRAINING)); in snd_compress_wait_for_drain()
788 wake_up(&stream->runtime->sleep); in snd_compress_wait_for_drain()
798 if (stream->runtime->state == SNDRV_PCM_STATE_PREPARED || in snd_compr_drain()
799 stream->runtime->state == SNDRV_PCM_STATE_SETUP) in snd_compr_drain()
805 wake_up(&stream->runtime->sleep); in snd_compr_drain()
817 if (stream->runtime->state != SNDRV_PCM_STATE_RUNNING) in snd_compr_next_track()
837 if (stream->runtime->state == SNDRV_PCM_STATE_PREPARED || in snd_compr_partial_drain()
838 stream->runtime->state == SNDRV_PCM_STATE_SETUP) in snd_compr_partial_drain()
847 wake_up(&stream->runtime->sleep); in snd_compr_partial_drain()