Skip to content

Commit fec9e99

Browse files
andyrosslgirdwood
authored andcommitted
various components: Remove default/stub init_alignment_constants usage
Traditionally audio_stream has failed to initialize its computed alignment fields, forcing components to do this themselves even when they don't actually have special alignment requirements. Remove all the code that was merely setting default values, leaving only a handful of spots with specialr equirements (e.g. eq/area need to treat pairs of samples, a few others have HiFi-optimized variants which need SIMD alignment). Signed-off-by: Andy Ross <andyross@google.com>
1 parent 4175ac7 commit fec9e99

File tree

13 files changed

+5
-110
lines changed

13 files changed

+5
-110
lines changed

src/audio/aria/aria.c

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -162,9 +162,7 @@ static void aria_set_stream_params(struct comp_buffer *buffer,
162162
const struct ipc4_audio_format *audio_fmt = &mod->priv.cfg.base_cfg.audio_fmt;
163163

164164
ipc4_update_buffer_format(buffer, audio_fmt);
165-
#ifdef ARIA_GENERIC
166-
audio_stream_init_alignment_constants(1, 1, &buffer->stream);
167-
#else
165+
#ifndef ARIA_GENERIC
168166
audio_stream_init_alignment_constants(8, 1, &buffer->stream);
169167
#endif
170168
}

src/audio/asrc/asrc.c

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -550,9 +550,6 @@ static int asrc_prepare(struct processing_module *mod,
550550
sinkb = list_first_item(&dev->bsink_list,
551551
struct comp_buffer, source_list);
552552

553-
audio_stream_init_alignment_constants(1, 1, &sourceb->stream);
554-
audio_stream_init_alignment_constants(1, 1, &sinkb->stream);
555-
556553
/* get source data format and period bytes */
557554
cd->source_format = audio_stream_get_frm_fmt(&sourceb->stream);
558555
source_period_bytes = audio_stream_period_bytes(&sourceb->stream,

src/audio/crossover/crossover.c

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -546,14 +546,11 @@ static int crossover_prepare(struct processing_module *mod,
546546
/* Get source data format */
547547
cd->source_format = audio_stream_get_frm_fmt(&source->stream);
548548
channels = audio_stream_get_channels(&source->stream);
549-
audio_stream_init_alignment_constants(1, 1, &source->stream);
550549

551550
/* Validate frame format and buffer size of sinks */
552551
list_for_item(sink_list, &dev->bsink_list) {
553552
sink = container_of(sink_list, struct comp_buffer, source_list);
554-
if (cd->source_format == audio_stream_get_frm_fmt(&sink->stream)) {
555-
audio_stream_init_alignment_constants(1, 1, &sink->stream);
556-
} else {
553+
if (cd->source_format != audio_stream_get_frm_fmt(&sink->stream)) {
557554
comp_err(dev, "crossover_prepare(): Source fmt %d and sink fmt %d are different.",
558555
cd->source_format, audio_stream_get_frm_fmt(&sink->stream));
559556
ret = -EINVAL;

src/audio/dcblock/dcblock.c

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -183,17 +183,6 @@ static int dcblock_process(struct processing_module *mod,
183183
return 0;
184184
}
185185

186-
/* init and calculate the aligned setting for available frames and free frames retrieve*/
187-
static inline void dcblock_set_frame_alignment(struct audio_stream *source,
188-
struct audio_stream *sink)
189-
{
190-
const uint32_t byte_align = 1;
191-
const uint32_t frame_align_req = 1;
192-
193-
audio_stream_init_alignment_constants(byte_align, frame_align_req, source);
194-
audio_stream_init_alignment_constants(byte_align, frame_align_req, sink);
195-
}
196-
197186
/**
198187
* \brief Prepares DC Blocking Filter component for processing.
199188
* \param[in,out] dev DC Blocking Filter base component device.
@@ -221,8 +210,6 @@ static int dcblock_prepare(struct processing_module *mod,
221210
/* get sink data format and period bytes */
222211
cd->sink_format = audio_stream_get_frm_fmt(&sinkb->stream);
223212

224-
dcblock_set_frame_alignment(&sourceb->stream, &sinkb->stream);
225-
226213
dcblock_init_state(cd);
227214
cd->dcblock_func = dcblock_find_func(cd->source_format);
228215
if (!cd->dcblock_func) {

src/audio/drc/drc.c

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -260,14 +260,6 @@ static int drc_get_config(struct processing_module *mod,
260260
return comp_data_blob_get_cmd(cd->model_handler, cdata, fragment_size);
261261
}
262262

263-
static void drc_set_alignment(struct audio_stream *source,
264-
struct audio_stream *sink)
265-
{
266-
/* Currently no optimizations those would use wider loads and stores */
267-
audio_stream_init_alignment_constants(1, 1, source);
268-
audio_stream_init_alignment_constants(1, 1, sink);
269-
}
270-
271263
static int drc_process(struct processing_module *mod,
272264
struct input_stream_buffer *input_buffers,
273265
int num_input_buffers,
@@ -344,7 +336,6 @@ static int drc_prepare(struct processing_module *mod,
344336
/* DRC component will only ever have 1 source and 1 sink buffer */
345337
sourceb = list_first_item(&dev->bsource_list, struct comp_buffer, sink_list);
346338
sinkb = list_first_item(&dev->bsink_list, struct comp_buffer, source_list);
347-
drc_set_alignment(&sourceb->stream, &sinkb->stream);
348339

349340
/* get source data format */
350341
cd->source_format = audio_stream_get_frm_fmt(&sourceb->stream);

src/audio/google/google_rtc_audio_processing.c

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -576,7 +576,6 @@ static int google_rtc_audio_processing_prepare(struct processing_module *mod,
576576
microphone_stream_channels);
577577
}
578578

579-
audio_stream_init_alignment_constants(1, 1, &source->stream);
580579
i++;
581580
}
582581

@@ -592,7 +591,6 @@ static int google_rtc_audio_processing_prepare(struct processing_module *mod,
592591
return -EINVAL;
593592
}
594593

595-
audio_stream_init_alignment_constants(1, 1, &output->stream);
596594
frame_fmt = audio_stream_get_frm_fmt(&output->stream);
597595
rate = audio_stream_get_rate(&output->stream);
598596
output_stream_channels = audio_stream_get_channels(&output->stream);

src/audio/kpb.c

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -893,16 +893,12 @@ static int kpb_prepare(struct comp_dev *dev)
893893
*/
894894
if (kpb->ipc4_cfg.base_cfg.ibs != kpb->ipc4_cfg.base_cfg.obs) {
895895
struct list_item *sink_list;
896-
const uint32_t byte_align = 1;
897-
const uint32_t frame_align_req = 1;
898896
uint32_t sink_id;
899897

900898
list_for_item(sink_list, &dev->bsink_list) {
901899
struct comp_buffer *sink =
902900
container_of(sink_list, struct comp_buffer, source_list);
903901

904-
audio_stream_init_alignment_constants(byte_align, frame_align_req,
905-
&sink->stream);
906902
sink_id = buf_get_id(sink);
907903

908904
if (sink_id == 0)

src/audio/mfcc/mfcc.c

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -177,15 +177,6 @@ static int mfcc_process(struct processing_module *mod,
177177
return 0;
178178
}
179179

180-
static void mfcc_set_alignment(struct audio_stream *source, struct audio_stream *sink)
181-
{
182-
const uint32_t byte_align = 1;
183-
const uint32_t frame_align_req = 1;
184-
185-
audio_stream_init_alignment_constants(byte_align, frame_align_req, source);
186-
audio_stream_init_alignment_constants(byte_align, frame_align_req, sink);
187-
}
188-
189180
static int mfcc_prepare(struct processing_module *mod,
190181
struct sof_source **sources, int num_of_sources,
191182
struct sof_sink **sinks, int num_of_sinks)
@@ -208,9 +199,6 @@ static int mfcc_prepare(struct processing_module *mod,
208199
/* get source data format */
209200
source_format = audio_stream_get_frm_fmt(&sourceb->stream);
210201

211-
/* set align requirements */
212-
mfcc_set_alignment(&sourceb->stream, &sinkb->stream);
213-
214202
/* get sink data format and period bytes */
215203
sink_format = audio_stream_get_frm_fmt(&sinkb->stream);
216204
sink_period_bytes = audio_stream_period_bytes(&sinkb->stream, dev->frames);

src/audio/mixer/mixer.c

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -205,17 +205,8 @@ static inline void mixer_set_frame_alignment(struct audio_stream *source)
205205
/*There is no limit for frame number, so set it as 1*/
206206
const uint32_t frame_align_req = 1;
207207

208-
#else
209-
210-
/* Since the generic version process signal sample by sample, so there is no
211-
* limit for it, then set the byte_align and frame_align_req to be 1.
212-
*/
213-
const uint32_t byte_align = 1;
214-
const uint32_t frame_align_req = 1;
215-
216-
#endif
217-
218208
audio_stream_init_alignment_constants(byte_align, frame_align_req, source);
209+
#endif
219210
}
220211

221212
static int mixer_prepare(struct processing_module *mod,

src/audio/multiband_drc/multiband_drc.c

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -310,14 +310,6 @@ static int multiband_drc_get_config(struct processing_module *mod,
310310
return multiband_drc_get_ipc_config(mod, cdata, fragment_size);
311311
}
312312

313-
static void multiband_drc_set_alignment(struct audio_stream *source,
314-
struct audio_stream *sink)
315-
{
316-
/* Currently no optimizations those would use wider loads and stores */
317-
audio_stream_init_alignment_constants(1, 1, source);
318-
audio_stream_init_alignment_constants(1, 1, sink);
319-
}
320-
321313
static int multiband_drc_process(struct processing_module *mod,
322314
struct input_stream_buffer *input_buffers, int num_input_buffers,
323315
struct output_stream_buffer *output_buffers,
@@ -356,7 +348,7 @@ static int multiband_drc_prepare(struct processing_module *mod,
356348
{
357349
struct multiband_drc_comp_data *cd = module_get_private_data(mod);
358350
struct comp_dev *dev = mod->dev;
359-
struct comp_buffer *sourceb, *sinkb;
351+
struct comp_buffer *sourceb;
360352
int channels;
361353
int rate;
362354
int ret = 0;
@@ -369,9 +361,6 @@ static int multiband_drc_prepare(struct processing_module *mod,
369361

370362
/* DRC component will only ever have 1 source and 1 sink buffer */
371363
sourceb = list_first_item(&dev->bsource_list, struct comp_buffer, sink_list);
372-
sinkb = list_first_item(&dev->bsink_list, struct comp_buffer, source_list);
373-
374-
multiband_drc_set_alignment(&sourceb->stream, &sinkb->stream);
375364

376365
/* get source data format */
377366
cd->source_format = audio_stream_get_frm_fmt(&sourceb->stream);

0 commit comments

Comments
 (0)