@@ -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 ;
@@ -313,7 +313,8 @@ __cold static int ipc4_create_pipeline_payload_decode(char *data)
313313 return 0 ;
314314}
315315
316- __cold static int ipc4_create_pipeline (struct ipc4_pipeline_create * pipe_desc )
316+ __cold static int ipc4_create_pipeline (struct ipc4_pipeline_create * pipe_desc ,
317+ struct pipeline_params * pparams )
317318{
318319 struct ipc_comp_dev * ipc_pipe ;
319320 struct pipeline * pipe ;
@@ -330,7 +331,8 @@ __cold static int ipc4_create_pipeline(struct ipc4_pipeline_create *pipe_desc)
330331 }
331332
332333 /* create the pipeline */
333- pipe = pipeline_new (pipe_desc -> primary .r .instance_id , pipe_desc -> primary .r .ppl_priority , 0 );
334+ pipe = pipeline_new (pipe_desc -> primary .r .instance_id , pipe_desc -> primary .r .ppl_priority , 0 ,
335+ pparams );
334336 if (!pipe ) {
335337 tr_err (& ipc_tr , "ipc: pipeline_new() failed" );
336338 return IPC4_OUT_OF_MEMORY ;
@@ -385,7 +387,7 @@ __cold static inline char *ipc4_get_pipe_create_data(void)
385387__cold int ipc_pipeline_new (struct ipc * ipc , ipc_pipe_new * _pipe_desc )
386388{
387389 struct ipc4_pipeline_create * pipe_desc = ipc_from_pipe_new (_pipe_desc );
388-
390+ struct pipeline_params pparams ;
389391 assert_can_be_cold ();
390392
391393 tr_dbg (& ipc_tr , "ipc: pipeline id = %u" , (uint32_t )pipe_desc -> primary .r .instance_id );
@@ -399,10 +401,10 @@ __cold int ipc_pipeline_new(struct ipc *ipc, ipc_pipe_new *_pipe_desc)
399401
400402 data = ipc4_get_pipe_create_data ();
401403
402- ipc4_create_pipeline_payload_decode (data );
404+ ipc4_create_pipeline_payload_decode (data , & pparams );
403405 }
404406
405- return ipc4_create_pipeline (pipe_desc );
407+ return ipc4_create_pipeline (pipe_desc , & pparams );
406408}
407409
408410__cold static inline int ipc_comp_free_remote (struct comp_dev * dev )
0 commit comments