Lines Matching full:scomp

393  * @scomp: pointer to pointer to SOC component
400 static int sof_ipc4_get_audio_fmt(struct snd_soc_component *scomp, in sof_ipc4_get_audio_fmt() argument
409 ret = sof_update_ipc_object(scomp, available_fmt, in sof_ipc4_get_audio_fmt()
413 dev_err(scomp->dev, "Failed to parse audio format token count\n"); in sof_ipc4_get_audio_fmt()
418 dev_err(scomp->dev, "No input/output pin formats set in topology\n"); in sof_ipc4_get_audio_fmt()
422 dev_dbg(scomp->dev, in sof_ipc4_get_audio_fmt()
427 ret = sof_update_ipc_object(scomp, module_base_cfg, SOF_COMP_TOKENS, swidget->tuples, in sof_ipc4_get_audio_fmt()
430 dev_err(scomp->dev, "parse comp tokens for %s failed, error: %d\n", in sof_ipc4_get_audio_fmt()
435 dev_dbg(scomp->dev, "widget %s: is_pages: %d\n", swidget->widget->name, in sof_ipc4_get_audio_fmt()
445 ret = sof_update_ipc_object(scomp, in_format, in sof_ipc4_get_audio_fmt()
450 dev_err(scomp->dev, "parse input audio fmt tokens failed %d\n", ret); in sof_ipc4_get_audio_fmt()
454 dev_dbg(scomp->dev, "Input audio formats for %s\n", swidget->widget->name); in sof_ipc4_get_audio_fmt()
455 sof_ipc4_dbg_audio_format(scomp->dev, in_format, in sof_ipc4_get_audio_fmt()
467 ret = sof_update_ipc_object(scomp, out_format, in sof_ipc4_get_audio_fmt()
472 dev_err(scomp->dev, "parse output audio fmt tokens failed\n"); in sof_ipc4_get_audio_fmt()
477 dev_dbg(scomp->dev, "Output audio formats for %s\n", swidget->widget->name); in sof_ipc4_get_audio_fmt()
478 sof_ipc4_dbg_audio_format(scomp->dev, out_format, in sof_ipc4_get_audio_fmt()
509 struct snd_soc_component *scomp = swidget->scomp; in sof_ipc4_widget_set_module_info() local
510 struct snd_sof_dev *sdev = snd_soc_component_get_drvdata(scomp); in sof_ipc4_widget_set_module_info()
559 struct snd_soc_component *scomp = swidget->scomp; in sof_ipc4_widget_update_kcontrol_module_id() local
560 struct snd_sof_dev *sdev = snd_soc_component_get_drvdata(scomp); in sof_ipc4_widget_update_kcontrol_module_id()
581 struct snd_soc_component *scomp = spcm->scomp; in sof_ipc4_update_card_components_string() local
582 struct snd_soc_card *card = scomp->card; in sof_ipc4_update_card_components_string()
625 struct snd_soc_component *scomp = swidget->scomp; in sof_ipc4_widget_setup_pcm() local
638 dev_dbg(scomp->dev, "Updating IPC structure for %s\n", swidget->widget->name); in sof_ipc4_widget_setup_pcm()
640 ret = sof_ipc4_get_audio_fmt(scomp, swidget, available_fmt, in sof_ipc4_widget_setup_pcm()
652 ret = sof_update_ipc_object(scomp, &node_type, in sof_ipc4_widget_setup_pcm()
657 dev_err(scomp->dev, "parse host copier node type token failed %d\n", in sof_ipc4_widget_setup_pcm()
661 dev_dbg(scomp->dev, "host copier '%s' node_type %u\n", swidget->widget->name, node_type); in sof_ipc4_widget_setup_pcm()
663 spcm = snd_sof_find_spcm_comp(scomp, swidget->comp_id, &dir); in sof_ipc4_widget_setup_pcm()
674 sof_update_ipc_object(scomp, &sps->dsp_max_burst_size_in_ms, in sof_ipc4_widget_setup_pcm()
712 dev_err(scomp->dev, "invalid widget type %d\n", swidget->id); in sof_ipc4_widget_setup_pcm()
752 struct snd_soc_component *scomp = swidget->scomp; in sof_ipc4_widget_setup_comp_dai() local
753 struct snd_sof_dev *sdev = snd_soc_component_get_drvdata(scomp); in sof_ipc4_widget_setup_comp_dai()
767 dev_dbg(scomp->dev, "Updating IPC structure for %s\n", swidget->widget->name); in sof_ipc4_widget_setup_comp_dai()
769 ret = sof_ipc4_get_audio_fmt(scomp, swidget, available_fmt, in sof_ipc4_widget_setup_comp_dai()
774 ret = sof_update_ipc_object(scomp, &node_type, in sof_ipc4_widget_setup_comp_dai()
778 dev_err(scomp->dev, "parse dai node type failed %d\n", ret); in sof_ipc4_widget_setup_comp_dai()
782 ret = sof_update_ipc_object(scomp, ipc4_copier, in sof_ipc4_widget_setup_comp_dai()
786 dev_err(scomp->dev, "parse dai copier node token failed %d\n", ret); in sof_ipc4_widget_setup_comp_dai()
790 dev_dbg(scomp->dev, "dai %s node_type %u dai_type %u dai_index %d\n", swidget->widget->name, in sof_ipc4_widget_setup_comp_dai()
801 dev_err(scomp->dev, "Bad DAI type '%d', Chain DMA is not supported\n", in sof_ipc4_widget_setup_comp_dai()
879 dai->scomp = scomp; in sof_ipc4_widget_setup_comp_dai()
896 dai->scomp = NULL; in sof_ipc4_widget_setup_comp_dai()
929 struct snd_soc_component *scomp = swidget->scomp; in sof_ipc4_widget_setup_comp_pipeline() local
938 ret = sof_update_ipc_object(scomp, pipeline, SOF_SCHED_TOKENS, swidget->tuples, in sof_ipc4_widget_setup_comp_pipeline()
941 dev_err(scomp->dev, "parsing scheduler tokens failed\n"); in sof_ipc4_widget_setup_comp_pipeline()
953 dev_dbg(scomp->dev, "Set up chain DMA for %s\n", swidget->widget->name); in sof_ipc4_widget_setup_comp_pipeline()
959 ret = sof_update_ipc_object(scomp, swidget, SOF_PIPELINE_TOKENS, swidget->tuples, in sof_ipc4_widget_setup_comp_pipeline()
962 dev_err(scomp->dev, "parsing pipeline tokens failed\n"); in sof_ipc4_widget_setup_comp_pipeline()
966 dev_dbg(scomp->dev, "pipeline '%s': id %d, pri %d, core_id %u, lp mode %d direction %d\n", in sof_ipc4_widget_setup_comp_pipeline()
989 struct snd_soc_component *scomp = swidget->scomp; in sof_ipc4_widget_setup_comp_pga() local
1002 ret = sof_ipc4_get_audio_fmt(scomp, swidget, &gain->available_fmt, &gain->data.base_config); in sof_ipc4_widget_setup_comp_pga()
1006 ret = sof_update_ipc_object(scomp, &gain->data.params, SOF_GAIN_TOKENS, in sof_ipc4_widget_setup_comp_pga()
1009 dev_err(scomp->dev, "Parsing gain tokens failed\n"); in sof_ipc4_widget_setup_comp_pga()
1013 dev_dbg(scomp->dev, in sof_ipc4_widget_setup_comp_pga()
1046 struct snd_soc_component *scomp = swidget->scomp; in sof_ipc4_widget_setup_comp_mixer() local
1050 dev_dbg(scomp->dev, "Updating IPC structure for %s\n", swidget->widget->name); in sof_ipc4_widget_setup_comp_mixer()
1058 ret = sof_ipc4_get_audio_fmt(scomp, swidget, &mixer->available_fmt, in sof_ipc4_widget_setup_comp_mixer()
1077 struct snd_soc_component *scomp = swidget->scomp; in sof_ipc4_widget_setup_comp_src() local
1082 dev_dbg(scomp->dev, "Updating IPC structure for %s\n", swidget->widget->name); in sof_ipc4_widget_setup_comp_src()
1090 ret = sof_ipc4_get_audio_fmt(scomp, swidget, &src->available_fmt, in sof_ipc4_widget_setup_comp_src()
1095 ret = sof_update_ipc_object(scomp, &src->data, SOF_SRC_TOKENS, swidget->tuples, in sof_ipc4_widget_setup_comp_src()
1098 dev_err(scomp->dev, "Parsing SRC tokens failed\n"); in sof_ipc4_widget_setup_comp_src()
1104 dev_dbg(scomp->dev, "SRC sink rate %d\n", src->data.sink_rate); in sof_ipc4_widget_setup_comp_src()
1120 struct snd_soc_component *scomp = swidget->scomp; in sof_ipc4_widget_setup_comp_asrc() local
1125 dev_dbg(scomp->dev, "Updating IPC structure for %s\n", swidget->widget->name); in sof_ipc4_widget_setup_comp_asrc()
1133 ret = sof_ipc4_get_audio_fmt(scomp, swidget, &asrc->available_fmt, in sof_ipc4_widget_setup_comp_asrc()
1138 ret = sof_update_ipc_object(scomp, &asrc->data, SOF_ASRC_TOKENS, swidget->tuples, in sof_ipc4_widget_setup_comp_asrc()
1141 dev_err(scomp->dev, "Parsing ASRC tokens failed\n"); in sof_ipc4_widget_setup_comp_asrc()
1147 dev_dbg(scomp->dev, "ASRC sink rate %d, mode 0x%08x\n", in sof_ipc4_widget_setup_comp_asrc()
1203 struct snd_soc_component *scomp = swidget->scomp; in sof_ipc4_widget_setup_comp_process() local
1216 ret = sof_ipc4_get_audio_fmt(scomp, swidget, &process->available_fmt, in sof_ipc4_widget_setup_comp_process()
2042 struct snd_soc_component *scomp = swidget->scomp; in sof_ipc4_prepare_copier_module() local
2043 struct snd_sof_dev *sdev = snd_soc_component_get_drvdata(scomp); in sof_ipc4_prepare_copier_module()
2075 ret = sof_update_ipc_object(scomp, &deep_buffer_dma_ms, in sof_ipc4_prepare_copier_module()
2079 dev_err(scomp->dev, "Failed to parse deep buffer dma size for %s\n", in sof_ipc4_prepare_copier_module()
2507 struct snd_soc_component *scomp = swidget->scomp; in sof_ipc4_prepare_gain_module() local
2508 struct snd_sof_dev *sdev = snd_soc_component_get_drvdata(scomp); in sof_ipc4_prepare_gain_module()
2552 struct snd_soc_component *scomp = swidget->scomp; in sof_ipc4_prepare_mixer_module() local
2553 struct snd_sof_dev *sdev = snd_soc_component_get_drvdata(scomp); in sof_ipc4_prepare_mixer_module()
2597 struct snd_soc_component *scomp = swidget->scomp; in sof_ipc4_prepare_src_module() local
2598 struct snd_sof_dev *sdev = snd_soc_component_get_drvdata(scomp); in sof_ipc4_prepare_src_module()
2672 struct snd_soc_component *scomp = swidget->scomp; in sof_ipc4_process_set_pin_formats() local
2719 dev_err(scomp->dev, "%s pin %d format not found for %s\n", in sof_ipc4_process_set_pin_formats()
2748 struct snd_soc_component *scomp = swidget->scomp; in sof_ipc4_prepare_process_module() local
2749 struct snd_sof_dev *sdev = snd_soc_component_get_drvdata(scomp); in sof_ipc4_prepare_process_module()
3345 struct snd_soc_component *scomp; in sof_ipc4_get_queue_id() local
3366 scomp = current_swidget->scomp; in sof_ipc4_get_queue_id()
3369 dev_err(scomp->dev, "invalid %s num_pins: %d for queue allocation for %s\n", in sof_ipc4_get_queue_id()
3389 dev_err(scomp->dev, "no %s queue id found from pin binding array for %s\n", in sof_ipc4_get_queue_id()
3710 static int sof_ipc4_parse_manifest(struct snd_soc_component *scomp, int index, in sof_ipc4_parse_manifest() argument
3713 struct snd_sof_dev *sdev = snd_soc_component_get_drvdata(scomp); in sof_ipc4_parse_manifest()
3723 dev_err(scomp->dev, "%s: Invalid topology ABI size: %u\n", in sof_ipc4_parse_manifest()
3730 dev_info(scomp->dev, in sof_ipc4_parse_manifest()
3760 dev_warn(scomp->dev, "Skipping unknown manifest data type %d\n", in sof_ipc4_parse_manifest()