str_info 654 sound/soc/intel/atom/sst-mfld-platform-pcm.c struct pcm_stream_info *str_info; str_info 661 sound/soc/intel/atom/sst-mfld-platform-pcm.c str_info = &stream->stream_info; str_info 662 sound/soc/intel/atom/sst-mfld-platform-pcm.c ret_val = stream->ops->stream_read_tstamp(sst->dev, str_info); str_info 667 sound/soc/intel/atom/sst-mfld-platform-pcm.c substream->runtime->delay = str_info->pcm_delay; str_info 668 sound/soc/intel/atom/sst-mfld-platform-pcm.c return str_info->buffer_ptr; str_info 121 sound/soc/intel/atom/sst-mfld-platform.h int (*stream_init)(struct device *dev, struct pcm_stream_info *str_info); str_info 126 sound/soc/intel/atom/sst-mfld-platform.h int (*stream_read_tstamp)(struct device *dev, struct pcm_stream_info *str_info); str_info 121 sound/soc/intel/atom/sst/sst_drv_interface.c struct stream_info *str_info; str_info 129 sound/soc/intel/atom/sst/sst_drv_interface.c str_info = &ctx->streams[retval]; str_info 130 sound/soc/intel/atom/sst/sst_drv_interface.c str_info->sfreq = sst_get_sfreq(str_param); str_info 279 sound/soc/intel/atom/sst/sst_drv_interface.c struct stream_info *str_info; str_info 284 sound/soc/intel/atom/sst/sst_drv_interface.c str_info = get_stream_info(ctx, str_id); str_info 285 sound/soc/intel/atom/sst/sst_drv_interface.c if (!str_info) str_info 288 sound/soc/intel/atom/sst/sst_drv_interface.c dev_dbg(dev, "pipe id = %d\n", str_info->pipe_id); str_info 289 sound/soc/intel/atom/sst/sst_drv_interface.c retval = sst_prepare_and_post_msg(ctx, str_info->task_id, IPC_CMD, str_info 290 sound/soc/intel/atom/sst/sst_drv_interface.c IPC_IA_SET_STREAM_PARAMS_MRFLD, str_info->pipe_id, str_info 314 sound/soc/intel/atom/sst/sst_drv_interface.c struct stream_info *str_info; str_info 317 sound/soc/intel/atom/sst/sst_drv_interface.c str_info = get_stream_info(ctx, str_id); str_info 318 sound/soc/intel/atom/sst/sst_drv_interface.c if (!str_info) str_info 320 sound/soc/intel/atom/sst/sst_drv_interface.c str_info->prev = str_info->status; str_info 321 sound/soc/intel/atom/sst/sst_drv_interface.c str_info->status = STREAM_RUNNING; str_info 545 sound/soc/intel/atom/sst/sst_drv_interface.c struct stream_info *str_info; str_info 550 sound/soc/intel/atom/sst/sst_drv_interface.c str_info = get_stream_info(ctx, str_id); str_info 551 sound/soc/intel/atom/sst/sst_drv_interface.c if (!str_info) str_info 553 sound/soc/intel/atom/sst/sst_drv_interface.c str_info->prev = str_info->status; str_info 554 sound/soc/intel/atom/sst/sst_drv_interface.c str_info->status = STREAM_RUNNING; str_info 562 sound/soc/intel/atom/sst/sst_drv_interface.c struct stream_info *str_info; str_info 568 sound/soc/intel/atom/sst/sst_drv_interface.c str_info = get_stream_info(ctx, str_id); str_info 569 sound/soc/intel/atom/sst/sst_drv_interface.c if (!str_info) str_info 571 sound/soc/intel/atom/sst/sst_drv_interface.c str_info->prev = STREAM_UN_INIT; str_info 572 sound/soc/intel/atom/sst/sst_drv_interface.c str_info->status = STREAM_INIT; str_info 578 sound/soc/intel/atom/sst/sst_drv_interface.c struct stream_info *str_info; str_info 584 sound/soc/intel/atom/sst/sst_drv_interface.c str_info = get_stream_info(ctx, str_id); str_info 585 sound/soc/intel/atom/sst/sst_drv_interface.c if (!str_info) str_info 593 sound/soc/intel/atom/sst/sst_drv_interface.c struct stream_info *str_info; str_info 599 sound/soc/intel/atom/sst/sst_drv_interface.c str_info = get_stream_info(ctx, str_id); str_info 600 sound/soc/intel/atom/sst/sst_drv_interface.c if (!str_info) str_info 605 sound/soc/intel/atom/sst/sst_drv_interface.c static int sst_stream_init(struct device *dev, struct pcm_stream_info *str_info) str_info 611 sound/soc/intel/atom/sst/sst_drv_interface.c str_id = str_info->str_id; str_info 621 sound/soc/intel/atom/sst/sst_drv_interface.c stream->pcm_substream = str_info->arg; str_info 622 sound/soc/intel/atom/sst/sst_drv_interface.c stream->period_elapsed = str_info->period_elapsed; str_info 623 sound/soc/intel/atom/sst/sst_drv_interface.c stream->sfreq = str_info->sfreq; str_info 33 sound/soc/intel/atom/sst/sst_stream.c struct stream_info *str_info; str_info 40 sound/soc/intel/atom/sst/sst_stream.c str_info = get_stream_info(sst_drv_ctx, str_id); str_info 41 sound/soc/intel/atom/sst/sst_stream.c if (!str_info) str_info 44 sound/soc/intel/atom/sst/sst_stream.c memset(&str_info->alloc_param, 0, sizeof(str_info->alloc_param)); str_info 45 sound/soc/intel/atom/sst/sst_stream.c str_info->alloc_param.operation = str_params->ops; str_info 46 sound/soc/intel/atom/sst/sst_stream.c str_info->alloc_param.codec_type = str_params->codec; str_info 47 sound/soc/intel/atom/sst/sst_stream.c str_info->alloc_param.sg_count = str_params->aparams.sg_count; str_info 48 sound/soc/intel/atom/sst/sst_stream.c str_info->alloc_param.ring_buf_info[0].addr = str_info 50 sound/soc/intel/atom/sst/sst_stream.c str_info->alloc_param.ring_buf_info[0].size = str_info 52 sound/soc/intel/atom/sst/sst_stream.c str_info->alloc_param.frag_size = str_params->aparams.frag_size; str_info 54 sound/soc/intel/atom/sst/sst_stream.c memcpy(&str_info->alloc_param.codec_params, &str_params->sparams, str_info 64 sound/soc/intel/atom/sst/sst_stream.c pcm_params = &str_info->alloc_param.codec_params.uc.pcm_params; str_info 79 sound/soc/intel/atom/sst/sst_stream.c str_info->alloc_param.ts = sst_drv_ctx->info.mailbox_start + str_info 82 sound/soc/intel/atom/sst/sst_stream.c str_info->alloc_param.ts = sst_drv_ctx->mailbox_add + str_info 86 sound/soc/intel/atom/sst/sst_stream.c str_info->alloc_param.ts); str_info 88 sound/soc/intel/atom/sst/sst_stream.c str_info->pipe_id, str_info->task_id); str_info 105 sound/soc/intel/atom/sst/sst_stream.c struct stream_info *str_info; str_info 109 sound/soc/intel/atom/sst/sst_stream.c str_info = get_stream_info(sst_drv_ctx, str_id); str_info 110 sound/soc/intel/atom/sst/sst_stream.c if (!str_info) str_info 114 sound/soc/intel/atom/sst/sst_stream.c str_id, str_info->pipe_id); str_info 116 sound/soc/intel/atom/sst/sst_stream.c ret = sst_prepare_and_post_msg(sst_drv_ctx, str_info->task_id, IPC_CMD, str_info 117 sound/soc/intel/atom/sst/sst_stream.c IPC_IA_ALLOC_STREAM_MRFLD, str_info->pipe_id, str_info 118 sound/soc/intel/atom/sst/sst_stream.c sizeof(str_info->alloc_param), &str_info->alloc_param, str_info 124 sound/soc/intel/atom/sst/sst_stream.c str_info->status = STREAM_UN_INIT; str_info 154 sound/soc/intel/atom/sst/sst_stream.c struct stream_info *str_info; str_info 158 sound/soc/intel/atom/sst/sst_stream.c str_info = get_stream_info(sst_drv_ctx, str_id); str_info 159 sound/soc/intel/atom/sst/sst_stream.c if (!str_info) str_info 161 sound/soc/intel/atom/sst/sst_stream.c if (str_info->status != STREAM_RUNNING) str_info 164 sound/soc/intel/atom/sst/sst_stream.c retval = sst_prepare_and_post_msg(sst_drv_ctx, str_info->task_id, str_info 165 sound/soc/intel/atom/sst/sst_stream.c IPC_CMD, IPC_IA_START_STREAM_MRFLD, str_info->pipe_id, str_info 245 sound/soc/intel/atom/sst/sst_stream.c struct stream_info *str_info; str_info 248 sound/soc/intel/atom/sst/sst_stream.c str_info = get_stream_info(sst_drv_ctx, str_id); str_info 249 sound/soc/intel/atom/sst/sst_stream.c if (!str_info) str_info 251 sound/soc/intel/atom/sst/sst_stream.c if (str_info->status == STREAM_PAUSED) str_info 253 sound/soc/intel/atom/sst/sst_stream.c if (str_info->status == STREAM_RUNNING || str_info 254 sound/soc/intel/atom/sst/sst_stream.c str_info->status == STREAM_INIT) { str_info 255 sound/soc/intel/atom/sst/sst_stream.c if (str_info->prev == STREAM_UN_INIT) str_info 258 sound/soc/intel/atom/sst/sst_stream.c retval = sst_prepare_and_post_msg(sst_drv_ctx, str_info->task_id, IPC_CMD, str_info 259 sound/soc/intel/atom/sst/sst_stream.c IPC_IA_PAUSE_STREAM_MRFLD, str_info->pipe_id, str_info 263 sound/soc/intel/atom/sst/sst_stream.c str_info->prev = str_info->status; str_info 264 sound/soc/intel/atom/sst/sst_stream.c str_info->status = STREAM_PAUSED; str_info 268 sound/soc/intel/atom/sst/sst_stream.c sst_clean_stream(str_info); str_info 289 sound/soc/intel/atom/sst/sst_stream.c struct stream_info *str_info; str_info 292 sound/soc/intel/atom/sst/sst_stream.c str_info = get_stream_info(sst_drv_ctx, str_id); str_info 293 sound/soc/intel/atom/sst/sst_stream.c if (!str_info) str_info 295 sound/soc/intel/atom/sst/sst_stream.c if (str_info->status == STREAM_RUNNING) str_info 298 sound/soc/intel/atom/sst/sst_stream.c if (str_info->resume_status == STREAM_PAUSED && str_info 299 sound/soc/intel/atom/sst/sst_stream.c str_info->resume_prev == STREAM_RUNNING) { str_info 305 sound/soc/intel/atom/sst/sst_stream.c str_info->status = STREAM_RUNNING; str_info 306 sound/soc/intel/atom/sst/sst_stream.c str_info->prev = STREAM_PAUSED; str_info 308 sound/soc/intel/atom/sst/sst_stream.c str_info->resume_status = STREAM_UN_INIT; str_info 309 sound/soc/intel/atom/sst/sst_stream.c } else if (str_info->resume_status == STREAM_PAUSED && str_info 310 sound/soc/intel/atom/sst/sst_stream.c str_info->resume_prev == STREAM_INIT) { str_info 316 sound/soc/intel/atom/sst/sst_stream.c str_info->status = STREAM_INIT; str_info 317 sound/soc/intel/atom/sst/sst_stream.c str_info->prev = STREAM_PAUSED; str_info 318 sound/soc/intel/atom/sst/sst_stream.c str_info->resume_status = STREAM_UN_INIT; str_info 319 sound/soc/intel/atom/sst/sst_stream.c } else if (str_info->status == STREAM_PAUSED) { str_info 320 sound/soc/intel/atom/sst/sst_stream.c retval = sst_prepare_and_post_msg(sst_drv_ctx, str_info->task_id, str_info 322 sound/soc/intel/atom/sst/sst_stream.c str_info->pipe_id, 0, NULL, NULL, str_info 326 sound/soc/intel/atom/sst/sst_stream.c if (str_info->prev == STREAM_RUNNING) str_info 327 sound/soc/intel/atom/sst/sst_stream.c str_info->status = STREAM_RUNNING; str_info 329 sound/soc/intel/atom/sst/sst_stream.c str_info->status = STREAM_INIT; str_info 330 sound/soc/intel/atom/sst/sst_stream.c str_info->prev = STREAM_PAUSED; str_info 334 sound/soc/intel/atom/sst/sst_stream.c sst_clean_stream(str_info); str_info 356 sound/soc/intel/atom/sst/sst_stream.c struct stream_info *str_info; str_info 359 sound/soc/intel/atom/sst/sst_stream.c str_info = get_stream_info(sst_drv_ctx, str_id); str_info 360 sound/soc/intel/atom/sst/sst_stream.c if (!str_info) str_info 363 sound/soc/intel/atom/sst/sst_stream.c if (str_info->status != STREAM_UN_INIT) { str_info 364 sound/soc/intel/atom/sst/sst_stream.c str_info->prev = STREAM_UN_INIT; str_info 365 sound/soc/intel/atom/sst/sst_stream.c str_info->status = STREAM_INIT; str_info 366 sound/soc/intel/atom/sst/sst_stream.c str_info->cumm_bytes = 0; str_info 367 sound/soc/intel/atom/sst/sst_stream.c retval = sst_prepare_and_post_msg(sst_drv_ctx, str_info->task_id, str_info 369 sound/soc/intel/atom/sst/sst_stream.c str_info->pipe_id, 0, NULL, NULL, str_info 374 sound/soc/intel/atom/sst/sst_stream.c str_info->status); str_info 390 sound/soc/intel/atom/sst/sst_stream.c struct stream_info *str_info; str_info 393 sound/soc/intel/atom/sst/sst_stream.c str_info = get_stream_info(sst_drv_ctx, str_id); str_info 394 sound/soc/intel/atom/sst/sst_stream.c if (!str_info) str_info 396 sound/soc/intel/atom/sst/sst_stream.c if (str_info->status != STREAM_RUNNING && str_info 397 sound/soc/intel/atom/sst/sst_stream.c str_info->status != STREAM_INIT && str_info 398 sound/soc/intel/atom/sst/sst_stream.c str_info->status != STREAM_PAUSED) { str_info 400 sound/soc/intel/atom/sst/sst_stream.c str_info->status); str_info 404 sound/soc/intel/atom/sst/sst_stream.c retval = sst_prepare_and_post_msg(sst_drv_ctx, str_info->task_id, IPC_CMD, str_info 405 sound/soc/intel/atom/sst/sst_stream.c IPC_IA_DRAIN_STREAM_MRFLD, str_info->pipe_id, str_info 426 sound/soc/intel/atom/sst/sst_stream.c struct stream_info *str_info; str_info 436 sound/soc/intel/atom/sst/sst_stream.c str_info = get_stream_info(sst_drv_ctx, str_id); str_info 437 sound/soc/intel/atom/sst/sst_stream.c if (!str_info) str_info 440 sound/soc/intel/atom/sst/sst_stream.c mutex_lock(&str_info->lock); str_info 441 sound/soc/intel/atom/sst/sst_stream.c if (str_info->status != STREAM_UN_INIT) { str_info 442 sound/soc/intel/atom/sst/sst_stream.c str_info->prev = str_info->status; str_info 443 sound/soc/intel/atom/sst/sst_stream.c str_info->status = STREAM_UN_INIT; str_info 444 sound/soc/intel/atom/sst/sst_stream.c mutex_unlock(&str_info->lock); str_info 447 sound/soc/intel/atom/sst/sst_stream.c str_id, str_info->pipe_id); str_info 448 sound/soc/intel/atom/sst/sst_stream.c retval = sst_prepare_and_post_msg(sst_drv_ctx, str_info->task_id, IPC_CMD, str_info 449 sound/soc/intel/atom/sst/sst_stream.c IPC_IA_FREE_STREAM_MRFLD, str_info->pipe_id, 0, str_info 455 sound/soc/intel/atom/sst/sst_stream.c sst_clean_stream(str_info); str_info 459 sound/soc/intel/atom/sst/sst_stream.c mutex_unlock(&str_info->lock);