@@ -233,7 +233,7 @@ struct ipc_comp_dev *ipc_get_comp_by_ppl_id(struct ipc *ipc, uint16_t type,
233233 * This function currently only decodes the payload and prints out
234234 * data it finds, but it does not store it anywhere.
235235 */
236- __cold static int ipc4_create_pipeline_payload_decode (char * data )
236+ __cold static int ipc4_create_pipeline_payload_decode (char * data , struct pipeline_params * pparams )
237237{
238238 const struct ipc4_pipeline_ext_payload * hdr =
239239 (struct ipc4_pipeline_ext_payload * )data ;
@@ -314,7 +314,8 @@ __cold static int ipc4_create_pipeline_payload_decode(char *data)
314314 return 0 ;
315315}
316316
317- __cold static int ipc4_create_pipeline (struct ipc4_pipeline_create * pipe_desc )
317+ __cold static int ipc4_create_pipeline (struct ipc4_pipeline_create * pipe_desc ,
318+ struct pipeline_params * pparams )
318319{
319320 struct ipc_comp_dev * ipc_pipe ;
320321 struct pipeline * pipe ;
@@ -331,7 +332,8 @@ __cold static int ipc4_create_pipeline(struct ipc4_pipeline_create *pipe_desc)
331332 }
332333
333334 /* create the pipeline */
334- pipe = pipeline_new (pipe_desc -> primary .r .instance_id , pipe_desc -> primary .r .ppl_priority , 0 );
335+ pipe = pipeline_new (pipe_desc -> primary .r .instance_id , pipe_desc -> primary .r .ppl_priority , 0 ,
336+ pparams );
335337 if (!pipe ) {
336338 tr_err (& ipc_tr , "ipc: pipeline_new() failed" );
337339 return IPC4_OUT_OF_MEMORY ;
@@ -386,7 +388,7 @@ __cold static inline char *ipc4_get_pipe_create_data(void)
386388__cold int ipc_pipeline_new (struct ipc * ipc , ipc_pipe_new * _pipe_desc )
387389{
388390 struct ipc4_pipeline_create * pipe_desc = ipc_from_pipe_new (_pipe_desc );
389-
391+ struct pipeline_params pparams ;
390392 assert_can_be_cold ();
391393
392394 tr_dbg (& ipc_tr , "ipc: pipeline id = %u" , (uint32_t )pipe_desc -> primary .r .instance_id );
@@ -400,10 +402,10 @@ __cold int ipc_pipeline_new(struct ipc *ipc, ipc_pipe_new *_pipe_desc)
400402
401403 data = ipc4_get_pipe_create_data ();
402404
403- ipc4_create_pipeline_payload_decode (data );
405+ ipc4_create_pipeline_payload_decode (data , & pparams );
404406 }
405407
406- return ipc4_create_pipeline (pipe_desc );
408+ return ipc4_create_pipeline (pipe_desc , & pparams );
407409}
408410
409411__cold static inline int ipc_comp_free_remote (struct comp_dev * dev )
0 commit comments