mirror of https://github.com/thesofproject/sof.git
ipc4: skip component in the incomplete pipeline
Fix a error found by ipc4 Linux driver. Some component pipeline may be incomplete, so the pipeline is not updated to the component. Skip this pipeline and return dai of null. Signed-off-by: Rander Wang <rander.wang@intel.com>
This commit is contained in:
parent
421f3b6006
commit
f6d83ba510
|
@ -431,6 +431,11 @@ struct comp_dev *pipeline_get_dai_comp(uint32_t pipeline_id, uint32_t *latency)
|
||||||
buffer = buffer_from_list(comp_buffer_list(sink->cd, PPL_DIR_DOWNSTREAM)->next,
|
buffer = buffer_from_list(comp_buffer_list(sink->cd, PPL_DIR_DOWNSTREAM)->next,
|
||||||
struct comp_buffer, PPL_DIR_DOWNSTREAM);
|
struct comp_buffer, PPL_DIR_DOWNSTREAM);
|
||||||
buff_comp = buffer_get_comp(buffer, PPL_DIR_DOWNSTREAM);
|
buff_comp = buffer_get_comp(buffer, PPL_DIR_DOWNSTREAM);
|
||||||
|
|
||||||
|
/* buffer_comp is in another pipeline and it is not complete */
|
||||||
|
if (!buff_comp->pipeline)
|
||||||
|
return NULL;
|
||||||
|
|
||||||
sink = ipc_get_ppl_sink_comp(ipc, buff_comp->pipeline->pipeline_id);
|
sink = ipc_get_ppl_sink_comp(ipc, buff_comp->pipeline->pipeline_id);
|
||||||
|
|
||||||
if (!sink)
|
if (!sink)
|
||||||
|
|
Loading…
Reference in New Issue