@@ -133,7 +133,6 @@ static int crossover_assign_sinks(struct processing_module *mod,
133133 struct sof_crossover_config * config = cd -> config ;
134134 struct comp_dev * dev = mod -> dev ;
135135 struct comp_buffer * sink ;
136- struct comp_buffer * sink_c ;
137136 struct list_item * sink_list ;
138137 int num_sinks = 0 ;
139138 int i ;
@@ -143,14 +142,12 @@ static int crossover_assign_sinks(struct processing_module *mod,
143142 unsigned int sink_id , state ;
144143
145144 sink = container_of (sink_list , struct comp_buffer , source_list );
146- sink_c = buffer_acquire (sink );
147145#if CONFIG_IPC_MAJOR_4
148146 sink_id = cd -> output_pin_index [j ];
149147#else
150- sink_id = sink_c -> pipeline_id ;
148+ sink_id = sink -> pipeline_id ;
151149#endif
152- state = sink_c -> sink -> state ;
153- buffer_release (sink_c );
150+ state = sink -> sink -> state ;
154151 if (state != dev -> state ) {
155152 j ++ ;
156153 continue ;
@@ -486,7 +483,6 @@ static int crossover_check_sink_assign(struct processing_module *mod,
486483{
487484 struct comp_dev * dev = mod -> dev ;
488485 struct comp_buffer * sink ;
489- struct comp_buffer * sink_c ;
490486 struct list_item * sink_list ;
491487 int num_assigned_sinks = 0 ;
492488 uint8_t assigned_sinks [SOF_CROSSOVER_MAX_STREAMS ] = {0 };
@@ -496,9 +492,7 @@ static int crossover_check_sink_assign(struct processing_module *mod,
496492 unsigned int pipeline_id ;
497493
498494 sink = container_of (sink_list , struct comp_buffer , source_list );
499- sink_c = buffer_acquire (sink );
500- pipeline_id = sink_c -> pipeline_id ;
501- buffer_release (sink_c );
495+ pipeline_id = sink -> pipeline_id ;
502496
503497 i = crossover_get_stream_index (mod , config , pipeline_id );
504498 if (i < 0 ) {
@@ -691,7 +685,6 @@ static int crossover_process_audio_stream(struct processing_module *mod,
691685static void crossover_params (struct processing_module * mod )
692686{
693687 struct sof_ipc_stream_params * params = mod -> stream_params ;
694- struct comp_buffer * sink_c , * source_c ;
695688 struct comp_buffer * sinkb , * sourceb ;
696689 struct list_item * sink_list ;
697690 struct comp_dev * dev = mod -> dev ;
@@ -702,15 +695,11 @@ static void crossover_params(struct processing_module *mod)
702695 component_set_nearest_period_frames (dev , params -> rate );
703696
704697 sourceb = list_first_item (& dev -> bsource_list , struct comp_buffer , sink_list );
705- source_c = buffer_acquire (sourceb );
706- ipc4_update_buffer_format (source_c , & mod -> priv .cfg .base_cfg .audio_fmt );
707- buffer_release (source_c );
698+ ipc4_update_buffer_format (sourceb , & mod -> priv .cfg .base_cfg .audio_fmt );
708699
709700 list_for_item (sink_list , & dev -> bsink_list ) {
710701 sinkb = container_of (sink_list , struct comp_buffer , source_list );
711- sink_c = buffer_acquire (sinkb );
712- ipc4_update_buffer_format (sink_c , & mod -> priv .cfg .base_cfg .audio_fmt );
713- buffer_release (sink_c );
702+ ipc4_update_buffer_format (sinkb , & mod -> priv .cfg .base_cfg .audio_fmt );
714703 }
715704}
716705#endif
@@ -727,7 +716,6 @@ static int crossover_prepare(struct processing_module *mod,
727716 struct comp_data * cd = module_get_private_data (mod );
728717 struct comp_dev * dev = mod -> dev ;
729718 struct comp_buffer * source , * sink ;
730- struct comp_buffer * source_c , * sink_c ;
731719 struct list_item * sink_list ;
732720 int channels ;
733721 int ret = 0 ;
@@ -741,27 +729,23 @@ static int crossover_prepare(struct processing_module *mod,
741729 /* Crossover has a variable number of sinks */
742730 mod -> max_sinks = SOF_CROSSOVER_MAX_STREAMS ;
743731 source = list_first_item (& dev -> bsource_list , struct comp_buffer , sink_list );
744- source_c = buffer_acquire (source );
745732
746733 /* Get source data format */
747- cd -> source_format = audio_stream_get_frm_fmt (& source_c -> stream );
748- channels = audio_stream_get_channels (& source_c -> stream );
749- audio_stream_init_alignment_constants (1 , 1 , & source_c -> stream );
750- buffer_release (source_c );
734+ cd -> source_format = audio_stream_get_frm_fmt (& source -> stream );
735+ channels = audio_stream_get_channels (& source -> stream );
736+ audio_stream_init_alignment_constants (1 , 1 , & source -> stream );
751737
752738 /* Validate frame format and buffer size of sinks */
753739 list_for_item (sink_list , & dev -> bsink_list ) {
754740 sink = container_of (sink_list , struct comp_buffer , source_list );
755- sink_c = buffer_acquire (sink );
756- if (cd -> source_format == audio_stream_get_frm_fmt (& sink_c -> stream )) {
757- audio_stream_init_alignment_constants (1 , 1 , & sink_c -> stream );
741+ if (cd -> source_format == audio_stream_get_frm_fmt (& sink -> stream )) {
742+ audio_stream_init_alignment_constants (1 , 1 , & sink -> stream );
758743 } else {
759744 comp_err (dev , "crossover_prepare(): Source fmt %d and sink fmt %d are different." ,
760- cd -> source_format , audio_stream_get_frm_fmt (& sink_c -> stream ));
745+ cd -> source_format , audio_stream_get_frm_fmt (& sink -> stream ));
761746 ret = - EINVAL ;
762747 }
763748
764- buffer_release (sink_c );
765749 if (ret < 0 )
766750 return ret ;
767751 }
0 commit comments