diff --git a/src/audio/aria/aria.c b/src/audio/aria/aria.c index 85dc7b64719f..b9f321a5c807 100644 --- a/src/audio/aria/aria.c +++ b/src/audio/aria/aria.c @@ -309,9 +309,6 @@ static const struct module_interface aria_interface = { .set_configuration = aria_set_config, }; -DECLARE_MODULE_ADAPTER(aria_interface, aria_uuid, aria_comp_tr); -SOF_MODULE_INIT(aria, sys_comp_module_aria_interface_init); - #if CONFIG_COMP_ARIA_MODULE /* modular: llext dynamic link */ @@ -326,4 +323,9 @@ static const struct sof_man_module_manifest mod_manifest __section(".module") __ SOF_LLEXT_BUILDINFO; +#else + +DECLARE_MODULE_ADAPTER(aria_interface, aria_uuid, aria_comp_tr); +SOF_MODULE_INIT(aria, sys_comp_module_aria_interface_init); + #endif diff --git a/src/audio/asrc/asrc.c b/src/audio/asrc/asrc.c index 19c06518379c..57b6f75d47c3 100644 --- a/src/audio/asrc/asrc.c +++ b/src/audio/asrc/asrc.c @@ -872,9 +872,6 @@ static const struct module_interface asrc_interface = { .free = asrc_free, }; -DECLARE_MODULE_ADAPTER(asrc_interface, ASRC_UUID, asrc_tr); -SOF_MODULE_INIT(asrc, sys_comp_module_asrc_interface_init); - #if CONFIG_COMP_ASRC_MODULE /* modular: llext dynamic link */ @@ -889,4 +886,10 @@ static const struct sof_man_module_manifest mod_manifest[] __section(".module") }; SOF_LLEXT_BUILDINFO; + +#else + +DECLARE_MODULE_ADAPTER(asrc_interface, ASRC_UUID, asrc_tr); +SOF_MODULE_INIT(asrc, sys_comp_module_asrc_interface_init); + #endif diff --git a/src/audio/codec/dts/dts.c b/src/audio/codec/dts/dts.c index 0563ea130599..83a112ab0ae3 100644 --- a/src/audio/codec/dts/dts.c +++ b/src/audio/codec/dts/dts.c @@ -468,9 +468,6 @@ static const struct module_interface dts_interface = { .free = dts_codec_free }; -DECLARE_MODULE_ADAPTER(dts_interface, dts_uuid, dts_tr); -SOF_MODULE_INIT(dts, sys_comp_module_dts_interface_init); - #if CONFIG_DTS_CODEC_MODULE /* modular: llext dynamic link */ @@ -485,4 +482,9 @@ static const struct sof_man_module_manifest mod_manifest __section(".module") __ SOF_LLEXT_BUILDINFO; +#else + +DECLARE_MODULE_ADAPTER(dts_interface, dts_uuid, dts_tr); +SOF_MODULE_INIT(dts, sys_comp_module_dts_interface_init); + #endif diff --git a/src/audio/crossover/crossover.c b/src/audio/crossover/crossover.c index 2511556263c2..e98379389633 100644 --- a/src/audio/crossover/crossover.c +++ b/src/audio/crossover/crossover.c @@ -633,9 +633,6 @@ static const struct module_interface crossover_interface = { .free = crossover_free }; -DECLARE_MODULE_ADAPTER(crossover_interface, crossover_uuid, crossover_tr); -SOF_MODULE_INIT(crossover, sys_comp_module_crossover_interface_init); - #if CONFIG_COMP_CROSSOVER_MODULE /* modular: llext dynamic link */ @@ -650,4 +647,9 @@ static const struct sof_man_module_manifest mod_manifest __section(".module") __ SOF_LLEXT_BUILDINFO; +#else + +DECLARE_MODULE_ADAPTER(crossover_interface, crossover_uuid, crossover_tr); +SOF_MODULE_INIT(crossover, sys_comp_module_crossover_interface_init); + #endif diff --git a/src/audio/dcblock/dcblock.c b/src/audio/dcblock/dcblock.c index 180a71099825..b32a25c7bb8a 100644 --- a/src/audio/dcblock/dcblock.c +++ b/src/audio/dcblock/dcblock.c @@ -254,9 +254,6 @@ static const struct module_interface dcblock_interface = { .free = dcblock_free, }; -DECLARE_MODULE_ADAPTER(dcblock_interface, dcblock_uuid, dcblock_tr); -SOF_MODULE_INIT(dcblock, sys_comp_module_dcblock_interface_init); - #if CONFIG_COMP_DCBLOCK_MODULE /* modular: llext dynamic link */ @@ -271,4 +268,9 @@ static const struct sof_man_module_manifest mod_manifest __section(".module") __ SOF_LLEXT_BUILDINFO; +#else + +DECLARE_MODULE_ADAPTER(dcblock_interface, dcblock_uuid, dcblock_tr); +SOF_MODULE_INIT(dcblock, sys_comp_module_dcblock_interface_init); + #endif diff --git a/src/audio/drc/drc.c b/src/audio/drc/drc.c index 6b473f000bea..bd22c557478f 100644 --- a/src/audio/drc/drc.c +++ b/src/audio/drc/drc.c @@ -412,9 +412,6 @@ static const struct module_interface drc_interface = { .free = drc_free }; -DECLARE_MODULE_ADAPTER(drc_interface, drc_uuid, drc_tr); -SOF_MODULE_INIT(drc, sys_comp_module_drc_interface_init); - #if CONFIG_COMP_DRC_MODULE /* modular: llext dynamic link */ @@ -428,4 +425,9 @@ static const struct sof_man_module_manifest mod_manifest __section(".module") __ SOF_LLEXT_BUILDINFO; +#else + +DECLARE_MODULE_ADAPTER(drc_interface, drc_uuid, drc_tr); +SOF_MODULE_INIT(drc, sys_comp_module_drc_interface_init); + #endif diff --git a/src/audio/eq_fir/eq_fir.c b/src/audio/eq_fir/eq_fir.c index 3380d79047de..f9a4b4bd196e 100644 --- a/src/audio/eq_fir/eq_fir.c +++ b/src/audio/eq_fir/eq_fir.c @@ -478,9 +478,6 @@ static const struct module_interface eq_fir_interface = { .reset = eq_fir_reset, }; -DECLARE_MODULE_ADAPTER(eq_fir_interface, eq_fir_uuid, eq_fir_tr); -SOF_MODULE_INIT(eq_fir, sys_comp_module_eq_fir_interface_init); - #if CONFIG_COMP_FIR_MODULE /* modular: llext dynamic link */ @@ -495,4 +492,9 @@ static const struct sof_man_module_manifest mod_manifest __section(".module") __ SOF_LLEXT_BUILDINFO; +#else + +DECLARE_MODULE_ADAPTER(eq_fir_interface, eq_fir_uuid, eq_fir_tr); +SOF_MODULE_INIT(eq_fir, sys_comp_module_eq_fir_interface_init); + #endif diff --git a/src/audio/eq_iir/eq_iir.c b/src/audio/eq_iir/eq_iir.c index 96d4899ed643..d5dd63a1e568 100644 --- a/src/audio/eq_iir/eq_iir.c +++ b/src/audio/eq_iir/eq_iir.c @@ -248,9 +248,6 @@ static const struct module_interface eq_iir_interface = { .free = eq_iir_free }; -DECLARE_MODULE_ADAPTER(eq_iir_interface, eq_iir_uuid, eq_iir_tr); -SOF_MODULE_INIT(eq_iir, sys_comp_module_eq_iir_interface_init); - #if CONFIG_COMP_IIR_MODULE /* modular: llext dynamic link */ @@ -265,4 +262,9 @@ static const struct sof_man_module_manifest mod_manifest __section(".module") __ SOF_LLEXT_BUILDINFO; +#else + +DECLARE_MODULE_ADAPTER(eq_iir_interface, eq_iir_uuid, eq_iir_tr); +SOF_MODULE_INIT(eq_iir, sys_comp_module_eq_iir_interface_init); + #endif diff --git a/src/audio/google/google_ctc_audio_processing.c b/src/audio/google/google_ctc_audio_processing.c index 8639e598dd04..b78ee2514a87 100644 --- a/src/audio/google/google_ctc_audio_processing.c +++ b/src/audio/google/google_ctc_audio_processing.c @@ -454,11 +454,6 @@ static const struct module_interface google_ctc_audio_processing_interface = { .reset = ctc_reset, }; -DECLARE_MODULE_ADAPTER(google_ctc_audio_processing_interface, - google_ctc_audio_processing_uuid, google_ctc_audio_processing_tr); -SOF_MODULE_INIT(google_ctc_audio_processing, - sys_comp_module_google_ctc_audio_processing_interface_init); - #if CONFIG_COMP_GOOGLE_CTC_AUDIO_PROCESSING_MODULE /* modular: llext dynamic link */ @@ -474,4 +469,11 @@ static const struct sof_man_module_manifest mod_manifest __section(".module") __ SOF_LLEXT_BUILDINFO; +#else + +DECLARE_MODULE_ADAPTER(google_ctc_audio_processing_interface, + google_ctc_audio_processing_uuid, google_ctc_audio_processing_tr); +SOF_MODULE_INIT(google_ctc_audio_processing, + sys_comp_module_google_ctc_audio_processing_interface_init); + #endif diff --git a/src/audio/google/google_rtc_audio_processing.c b/src/audio/google/google_rtc_audio_processing.c index da673b7e52fa..a856899888e6 100644 --- a/src/audio/google/google_rtc_audio_processing.c +++ b/src/audio/google/google_rtc_audio_processing.c @@ -849,11 +849,6 @@ static const struct module_interface google_rtc_audio_processing_interface = { .reset = google_rtc_audio_processing_reset, }; -DECLARE_MODULE_ADAPTER(google_rtc_audio_processing_interface, - google_rtc_audio_processing_uuid, google_rtc_audio_processing_tr); -SOF_MODULE_INIT(google_rtc_audio_processing, - sys_comp_module_google_rtc_audio_processing_interface_init); - #if CONFIG_COMP_GOOGLE_RTC_AUDIO_PROCESSING_MODULE /* modular: llext dynamic link */ @@ -869,4 +864,11 @@ static const struct sof_man_module_manifest mod_manifest __section(".module") __ SOF_LLEXT_BUILDINFO; +#else + +DECLARE_MODULE_ADAPTER(google_rtc_audio_processing_interface, + google_rtc_audio_processing_uuid, google_rtc_audio_processing_tr); +SOF_MODULE_INIT(google_rtc_audio_processing, + sys_comp_module_google_rtc_audio_processing_interface_init); + #endif diff --git a/src/audio/igo_nr/igo_nr.c b/src/audio/igo_nr/igo_nr.c index 1750b5972508..f53124e71e6e 100644 --- a/src/audio/igo_nr/igo_nr.c +++ b/src/audio/igo_nr/igo_nr.c @@ -883,9 +883,6 @@ static const struct module_interface igo_nr_interface = { .free = igo_nr_free }; -DECLARE_MODULE_ADAPTER(igo_nr_interface, igo_nr_uuid, igo_nr_tr); -SOF_MODULE_INIT(igo_nr, sys_comp_module_igo_nr_interface_init); - #if CONFIG_COMP_IGO_NR_MODULE /* modular: llext dynamic link */ @@ -900,4 +897,9 @@ static const struct sof_man_module_manifest mod_manifest __section(".module") __ SOF_LLEXT_BUILDINFO; +#else + +DECLARE_MODULE_ADAPTER(igo_nr_interface, igo_nr_uuid, igo_nr_tr); +SOF_MODULE_INIT(igo_nr, sys_comp_module_igo_nr_interface_init); + #endif diff --git a/src/audio/mfcc/mfcc.c b/src/audio/mfcc/mfcc.c index 489df60c40b3..11cae843829e 100644 --- a/src/audio/mfcc/mfcc.c +++ b/src/audio/mfcc/mfcc.c @@ -256,9 +256,6 @@ static const struct module_interface mfcc_interface = { .reset = mfcc_reset, }; -DECLARE_MODULE_ADAPTER(mfcc_interface, mfcc_uuid, mfcc_tr); -SOF_MODULE_INIT(mfcc, sys_comp_module_mfcc_interface_init); - #if CONFIG_COMP_MFCC_MODULE /* modular: llext dynamic link */ @@ -273,4 +270,9 @@ static const struct sof_man_module_manifest mod_manifest __section(".module") __ SOF_LLEXT_BUILDINFO; +#else + +DECLARE_MODULE_ADAPTER(mfcc_interface, mfcc_uuid, mfcc_tr); +SOF_MODULE_INIT(mfcc, sys_comp_module_mfcc_interface_init); + #endif diff --git a/src/audio/mixin_mixout/mixin_mixout.c b/src/audio/mixin_mixout/mixin_mixout.c index fe9120946dec..13e7d2caad0f 100644 --- a/src/audio/mixin_mixout/mixin_mixout.c +++ b/src/audio/mixin_mixout/mixin_mixout.c @@ -926,9 +926,6 @@ static const struct module_interface mixin_interface = { .free = mixin_free }; -DECLARE_MODULE_ADAPTER(mixin_interface, mixin_uuid, mixin_tr); -SOF_MODULE_INIT(mixin, sys_comp_module_mixin_interface_init); - static const struct module_interface mixout_interface = { .init = mixout_init, .prepare = mixout_prepare, @@ -939,9 +936,6 @@ static const struct module_interface mixout_interface = { .unbind = mixout_unbind }; -DECLARE_MODULE_ADAPTER(mixout_interface, mixout_uuid, mixout_tr); -SOF_MODULE_INIT(mixout, sys_comp_module_mixout_interface_init); - #if CONFIG_COMP_MIXIN_MIXOUT_MODULE /* modular: llext dynamic link */ @@ -960,4 +954,12 @@ static const struct sof_man_module_manifest mod_manifest[] __section(".module") SOF_LLEXT_BUILDINFO; +#else + +DECLARE_MODULE_ADAPTER(mixin_interface, mixin_uuid, mixin_tr); +SOF_MODULE_INIT(mixin, sys_comp_module_mixin_interface_init); + +DECLARE_MODULE_ADAPTER(mixout_interface, mixout_uuid, mixout_tr); +SOF_MODULE_INIT(mixout, sys_comp_module_mixout_interface_init); + #endif diff --git a/src/audio/module_adapter/module/waves/waves.c b/src/audio/module_adapter/module/waves/waves.c index 8f83e4a15462..5df71d159d8a 100644 --- a/src/audio/module_adapter/module/waves/waves.c +++ b/src/audio/module_adapter/module/waves/waves.c @@ -904,9 +904,6 @@ static const struct module_interface waves_interface = { .free = waves_codec_free }; -DECLARE_MODULE_ADAPTER(waves_interface, waves_uuid, waves_tr); -SOF_MODULE_INIT(waves, sys_comp_module_waves_interface_init); - #if CONFIG_WAVES_CODEC_MODULE && CONFIG_WAVES_CODEC_STUB /* modular: llext dynamic link */ @@ -921,4 +918,9 @@ static const struct sof_man_module_manifest mod_manifest __section(".module") __ SOF_LLEXT_BUILDINFO; +#else + +DECLARE_MODULE_ADAPTER(waves_interface, waves_uuid, waves_tr); +SOF_MODULE_INIT(waves, sys_comp_module_waves_interface_init); + #endif diff --git a/src/audio/multiband_drc/multiband_drc.c b/src/audio/multiband_drc/multiband_drc.c index 311894639962..3787352f1fa3 100644 --- a/src/audio/multiband_drc/multiband_drc.c +++ b/src/audio/multiband_drc/multiband_drc.c @@ -430,9 +430,6 @@ static const struct module_interface multiband_drc_interface = { .free = multiband_drc_free }; -DECLARE_MODULE_ADAPTER(multiband_drc_interface, multiband_drc_uuid, multiband_drc_tr); -SOF_MODULE_INIT(multiband_drc, sys_comp_module_multiband_drc_interface_init); - #if CONFIG_COMP_MULTIBAND_DRC_MODULE /* modular: llext dynamic link */ @@ -448,4 +445,9 @@ static const struct sof_man_module_manifest mod_manifest __section(".module") __ SOF_LLEXT_BUILDINFO; +#else + +DECLARE_MODULE_ADAPTER(multiband_drc_interface, multiband_drc_uuid, multiband_drc_tr); +SOF_MODULE_INIT(multiband_drc, sys_comp_module_multiband_drc_interface_init); + #endif diff --git a/src/audio/mux/mux.c b/src/audio/mux/mux.c index 79280e376220..1b1e25314b16 100644 --- a/src/audio/mux/mux.c +++ b/src/audio/mux/mux.c @@ -133,13 +133,6 @@ static int mux_init(struct processing_module *mod) return mux_demux_common_init(mod, SOF_COMP_MUX); } -static int demux_init(struct processing_module *mod) -{ - mod->max_sinks = MUX_MAX_STREAMS; - - return mux_demux_common_init(mod, SOF_COMP_DEMUX); -} - static int mux_free(struct processing_module *mod) { struct comp_data *cd = module_get_private_data(mod); @@ -164,20 +157,6 @@ static int get_stream_index(struct comp_dev *dev, struct comp_data *cd, uint32_t return -EINVAL; } -static struct mux_look_up *get_lookup_table(struct comp_dev *dev, struct comp_data *cd, - uint32_t pipe_id) -{ - int i; - - for (i = 0; i < MUX_MAX_STREAMS; i++) - if (cd->config.streams[i].pipeline_id == pipe_id) - return &cd->lookup[i]; - - comp_err(dev, "get_lookup_table(): couldn't find configuration for connected pipeline %u", - pipe_id); - return 0; -} - static void mux_prepare_active_look_up(struct comp_data *cd, struct audio_stream *sink, const struct audio_stream **sources) @@ -203,6 +182,28 @@ static void mux_prepare_active_look_up(struct comp_data *cd, cd->active_lookup.num_elems = active_elem; } +#if !CONFIG_COMP_MUX_MODULE +static int demux_init(struct processing_module *mod) +{ + mod->max_sinks = MUX_MAX_STREAMS; + + return mux_demux_common_init(mod, SOF_COMP_DEMUX); +} + +static struct mux_look_up *get_lookup_table(struct comp_dev *dev, struct comp_data *cd, + uint32_t pipe_id) +{ + int i; + + for (i = 0; i < MUX_MAX_STREAMS; i++) + if (cd->config.streams[i].pipeline_id == pipe_id) + return &cd->lookup[i]; + + comp_err(dev, "get_lookup_table(): couldn't find configuration for connected pipeline %u", + pipe_id); + return 0; +} + static void demux_prepare_active_look_up(struct comp_data *cd, struct audio_stream *sink, const struct audio_stream *source, @@ -279,6 +280,29 @@ static int demux_process(struct processing_module *mod, return 0; } +static int demux_trigger(struct processing_module *mod, int cmd) +{ + /* Check for cross-pipeline sinks: in general foreign + * pipelines won't be started synchronously with ours (it's + * under control of host software), so output can't be + * guaranteed not to overflow. Always set the + * overrun_permitted flag. These sink components are assumed + * responsible for flushing/synchronizing the stream + * themselves. + */ + if (cmd == COMP_TRIGGER_PRE_START) { + struct comp_buffer *b; + + comp_dev_for_each_producer(mod->dev, b) { + if (comp_buffer_get_sink_component(b)->pipeline != mod->dev->pipeline) + audio_stream_set_overrun(&b->stream, true); + } + } + + return module_adapter_set_state(mod, mod->dev, cmd); +} +#endif + /* process and copy stream data from source to sink buffers */ static int mux_process(struct processing_module *mod, struct input_stream_buffer *input_buffers, int num_input_buffers, @@ -425,29 +449,6 @@ static int mux_set_config(struct processing_module *mod, uint32_t config_id, fragment, fragment_size); } -static int demux_trigger(struct processing_module *mod, int cmd) -{ - /* Check for cross-pipeline sinks: in general foreign - * pipelines won't be started synchronously with ours (it's - * under control of host software), so output can't be - * guaranteed not to overflow. Always set the - * overrun_permitted flag. These sink components are assumed - * responsible for flushing/synchronizing the stream - * themselves. - */ - if (cmd == COMP_TRIGGER_PRE_START) { - struct comp_buffer *b; - - comp_dev_for_each_producer(mod->dev, b) { - if (comp_buffer_get_sink_component(b)->pipeline != mod->dev->pipeline) - audio_stream_set_overrun(&b->stream, true); - } - - } - - return module_adapter_set_state(mod, mod->dev, cmd); -} - static const struct module_interface mux_interface = { .init = mux_init, .set_configuration = mux_set_config, @@ -458,9 +459,7 @@ static const struct module_interface mux_interface = { .free = mux_free, }; -DECLARE_MODULE_ADAPTER(mux_interface, MUX_UUID, mux_tr); -SOF_MODULE_INIT(mux, sys_comp_module_mux_interface_init); - +#if !CONFIG_COMP_MUX_MODULE static const struct module_interface demux_interface = { .init = demux_init, .set_configuration = mux_set_config, @@ -471,9 +470,7 @@ static const struct module_interface demux_interface = { .reset = mux_reset, .free = mux_free, }; - -DECLARE_MODULE_ADAPTER(demux_interface, demux_uuid, demux_tr); -SOF_MODULE_INIT(demux, sys_comp_module_demux_interface_init); +#endif #if CONFIG_COMP_MUX_MODULE /* modular: llext dynamic link */ @@ -500,4 +497,13 @@ static const struct sof_man_module_manifest mod_manifest[] __section(".module") }; SOF_LLEXT_BUILDINFO; + +#else + +DECLARE_MODULE_ADAPTER(mux_interface, MUX_UUID, mux_tr); +SOF_MODULE_INIT(mux, sys_comp_module_mux_interface_init); + +DECLARE_MODULE_ADAPTER(demux_interface, demux_uuid, demux_tr); +SOF_MODULE_INIT(demux, sys_comp_module_demux_interface_init); + #endif diff --git a/src/audio/rtnr/rtnr.c b/src/audio/rtnr/rtnr.c index 2f9fabe43d8a..88c420a6af2a 100644 --- a/src/audio/rtnr/rtnr.c +++ b/src/audio/rtnr/rtnr.c @@ -866,9 +866,6 @@ static const struct module_interface rtnr_interface = { .free = rtnr_free }; -DECLARE_MODULE_ADAPTER(rtnr_interface, rtnr_uuid, rtnr_tr); -SOF_MODULE_INIT(rtnr, sys_comp_module_rtnr_interface_init); - #if CONFIG_COMP_RTNR_MODULE /* modular: llext dynamic link */ @@ -883,4 +880,9 @@ static const struct sof_man_module_manifest mod_manifest __section(".module") __ SOF_LLEXT_BUILDINFO; +#else + +DECLARE_MODULE_ADAPTER(rtnr_interface, rtnr_uuid, rtnr_tr); +SOF_MODULE_INIT(rtnr, sys_comp_module_rtnr_interface_init); + #endif diff --git a/src/audio/selector/selector.c b/src/audio/selector/selector.c index 9b9ee5f63d03..e1ca62cab194 100644 --- a/src/audio/selector/selector.c +++ b/src/audio/selector/selector.c @@ -913,9 +913,6 @@ static const struct module_interface selector_interface = { .free = selector_free }; -DECLARE_MODULE_ADAPTER(selector_interface, selector4_uuid, selector_tr); -SOF_MODULE_INIT(selector, sys_comp_module_selector_interface_init); - #if CONFIG_COMP_SEL_MODULE /* modular: llext dynamic link */ @@ -931,6 +928,11 @@ static const struct sof_man_module_manifest mod_manifest __section(".module") __ SOF_LLEXT_BUILDINFO; +#else + +DECLARE_MODULE_ADAPTER(selector_interface, selector4_uuid, selector_tr); +SOF_MODULE_INIT(selector, sys_comp_module_selector_interface_init); + #endif #endif diff --git a/src/audio/src/src.c b/src/audio/src/src.c index 4a46c2bce0bb..c891e97fae4d 100644 --- a/src/audio/src/src.c +++ b/src/audio/src/src.c @@ -84,9 +84,6 @@ static const struct module_interface src_interface = { .free = src_free, }; -DECLARE_MODULE_ADAPTER(src_interface, SRC_UUID, src_tr); -SOF_MODULE_INIT(src, sys_comp_module_src_interface_init); - #if CONFIG_COMP_SRC_MODULE /* modular: llext dynamic link */ @@ -110,4 +107,10 @@ static const struct sof_man_module_manifest mod_manifest[] __section(".module") }; SOF_LLEXT_BUILDINFO; + +#else + +DECLARE_MODULE_ADAPTER(src_interface, SRC_UUID, src_tr); +SOF_MODULE_INIT(src, sys_comp_module_src_interface_init); + #endif diff --git a/src/audio/src/src_lite.c b/src/audio/src/src_lite.c index b1bf87b8ddfd..75f664ec262d 100644 --- a/src/audio/src/src_lite.c +++ b/src/audio/src/src_lite.c @@ -71,5 +71,7 @@ SOF_DEFINE_REG_UUID(src_lite); DECLARE_TR_CTX(src_lite_tr, SOF_UUID(src_lite_uuid), LOG_LEVEL_INFO); +#if !CONFIG_COMP_SRC_MODULE DECLARE_MODULE_ADAPTER(src_lite_interface, src_lite_uuid, src_lite_tr); SOF_MODULE_INIT(src_lite, sys_comp_module_src_lite_interface_init); +#endif diff --git a/src/audio/tdfb/tdfb.c b/src/audio/tdfb/tdfb.c index 39f47a61527d..0f3636fcfedd 100644 --- a/src/audio/tdfb/tdfb.c +++ b/src/audio/tdfb/tdfb.c @@ -821,9 +821,6 @@ static const struct module_interface tdfb_interface = { .reset = tdfb_reset, }; -DECLARE_MODULE_ADAPTER(tdfb_interface, tdfb_uuid, tdfb_tr); -SOF_MODULE_INIT(tdfb, sys_comp_module_tdfb_interface_init); - #if CONFIG_COMP_TDFB_MODULE /* modular: llext dynamic link */ @@ -838,4 +835,9 @@ static const struct sof_man_module_manifest mod_manifest __section(".module") __ SOF_LLEXT_BUILDINFO; +#else + +DECLARE_MODULE_ADAPTER(tdfb_interface, tdfb_uuid, tdfb_tr); +SOF_MODULE_INIT(tdfb, sys_comp_module_tdfb_interface_init); + #endif diff --git a/src/audio/volume/volume.c b/src/audio/volume/volume.c index 573f98674269..3abcfa7e2cc2 100644 --- a/src/audio/volume/volume.c +++ b/src/audio/volume/volume.c @@ -49,6 +49,8 @@ LOG_MODULE_REGISTER(volume, CONFIG_SOF_LOG_LEVEL); #include "volume_uuid.h" #include "volume.h" +#if CONFIG_COMP_PEAK_VOL || CONFIG_COMP_GAIN + #if CONFIG_FORMAT_S16LE /** * \brief Used to find nearest zero crossing frame for 16 bit format. @@ -210,6 +212,8 @@ __cold_rodata static const struct comp_zc_func_map zc_func_map[] = { #endif /* CONFIG_FORMAT_S32LE */ }; +#endif /* CONFIG_COMP_PEAK_VOL || CONFIG_COMP_GAIN */ + #if CONFIG_COMP_VOLUME_LINEAR_RAMP /** * \brief Calculate linear ramp function @@ -415,24 +419,6 @@ void volume_prepare_ramp(struct comp_dev *dev, struct vol_data *cd) cd->vol_ramp_frames = dev->frames / (dev->period / ramp_update_us); } -/** - * \brief Frees volume component. - * \param[in,out] mod Volume processing module handle - - */ -static int volume_free(struct processing_module *mod) -{ - struct vol_data *cd = module_get_private_data(mod); - - comp_dbg(mod->dev, "volume_free()"); - - volume_peak_free(cd); - rfree(cd->vol); - rfree(cd); - - return 0; -} - static void set_linear_ramp_coef(struct vol_data *cd, int chan, bool constant_rate_ramp) { int32_t delta; @@ -537,7 +523,6 @@ int volume_set_chan(struct processing_module *mod, int chan, /** * \brief Mutes channel. * \param[in,out] mod Volume processing module handle - * \param[in] chan Channel number. */ void volume_set_chan_mute(struct processing_module *mod, int chan) @@ -554,7 +539,6 @@ void volume_set_chan_mute(struct processing_module *mod, int chan) /** * \brief Unmutes channel. * \param[in,out] mod Volume processing module handle - * \param[in] chan Channel number. */ void volume_set_chan_unmute(struct processing_module *mod, int chan) @@ -567,10 +551,10 @@ void volume_set_chan_unmute(struct processing_module *mod, int chan) } } +#if CONFIG_COMP_PEAK_VOL || CONFIG_COMP_GAIN /* * \brief Copies and processes stream data. * \param[in,out] mod Volume processing module handle - * \return Error code. */ static int volume_process(struct processing_module *mod, @@ -772,7 +756,6 @@ static int volume_prepare(struct processing_module *mod, /** * \brief Resets volume component. * \param[in,out] mod Volume processing module handle - * \return Error code. */ static int volume_reset(struct processing_module *mod) @@ -784,6 +767,25 @@ static int volume_reset(struct processing_module *mod) return 0; } +/** + * \brief Frees volume component. + * \param[in,out] mod Volume processing module handle + */ +static int volume_free(struct processing_module *mod) +{ + struct vol_data *cd = module_get_private_data(mod); + + comp_dbg(mod->dev, "volume_free()"); + + volume_peak_free(cd); + rfree(cd->vol); + rfree(cd); + + return 0; +} +#endif + +#if CONFIG_COMP_PEAK_VOL static const struct module_interface volume_interface = { .init = volume_init, .prepare = volume_prepare, @@ -793,9 +795,7 @@ static const struct module_interface volume_interface = { .reset = volume_reset, .free = volume_free }; - -DECLARE_MODULE_ADAPTER(volume_interface, volume_uuid, volume_tr); -SOF_MODULE_INIT(volume, sys_comp_module_volume_interface_init); +#endif #if CONFIG_COMP_GAIN static const struct module_interface gain_interface = { @@ -807,9 +807,6 @@ static const struct module_interface gain_interface = { .reset = volume_reset, .free = volume_free }; - -DECLARE_MODULE_ADAPTER(gain_interface, gain_uuid, gain_tr); -SOF_MODULE_INIT(gain, sys_comp_module_gain_interface_init); #endif #if CONFIG_COMP_VOLUME_MODULE @@ -837,4 +834,17 @@ static const struct sof_man_module_manifest mod_manifest[] __section(".module") }; SOF_LLEXT_BUILDINFO; + +#else + +#if CONFIG_COMP_PEAK_VOL +DECLARE_MODULE_ADAPTER(volume_interface, volume_uuid, volume_tr); +SOF_MODULE_INIT(volume, sys_comp_module_volume_interface_init); +#endif + +#if CONFIG_COMP_GAIN +DECLARE_MODULE_ADAPTER(gain_interface, gain_uuid, gain_tr); +SOF_MODULE_INIT(gain, sys_comp_module_gain_interface_init); +#endif + #endif diff --git a/src/debug/tester/tester.c b/src/debug/tester/tester.c index 63cc57a7ab34..bcbda904fcf7 100644 --- a/src/debug/tester/tester.c +++ b/src/debug/tester/tester.c @@ -236,9 +236,6 @@ static const struct module_interface tester_interface = { .trigger = tester_trigger }; -DECLARE_MODULE_ADAPTER(tester_interface, tester_uuid, tester_tr); -SOF_MODULE_INIT(tester, sys_comp_module_tester_interface_init); - #if CONFIG_COMP_TESTER_MODULE /* modular: llext dynamic link */ @@ -253,4 +250,9 @@ static const struct sof_man_module_manifest mod_manifest __section(".module") __ SOF_LLEXT_BUILDINFO; +#else + +DECLARE_MODULE_ADAPTER(tester_interface, tester_uuid, tester_tr); +SOF_MODULE_INIT(tester, sys_comp_module_tester_interface_init); + #endif diff --git a/src/probe/probe.c b/src/probe/probe.c index 4ca71685d7db..6892474c9354 100644 --- a/src/probe/probe.c +++ b/src/probe/probe.c @@ -1610,9 +1610,6 @@ static const struct module_interface probe_interface = { .free = probe_free, }; -DECLARE_MODULE_ADAPTER(probe_interface, PROBE_UUID, pr_tr); -SOF_MODULE_INIT(probe, sys_comp_module_probe_interface_init); - #if CONFIG_PROBE_MODULE /* modular: llext dynamic link */ @@ -1627,6 +1624,11 @@ static const struct sof_man_module_manifest mod_manifest __section(".module") __ SOF_LLEXT_BUILDINFO; +#else + +DECLARE_MODULE_ADAPTER(probe_interface, PROBE_UUID, pr_tr); +SOF_MODULE_INIT(probe, sys_comp_module_probe_interface_init); + #endif /* CONFIG_COMP_PROBE_MODULE */ #endif /* CONFIG_IPC_MAJOR_4 */ diff --git a/src/samples/audio/smart_amp_test_ipc4.c b/src/samples/audio/smart_amp_test_ipc4.c index 57a3fd95267d..b19a610fde88 100644 --- a/src/samples/audio/smart_amp_test_ipc4.c +++ b/src/samples/audio/smart_amp_test_ipc4.c @@ -374,9 +374,6 @@ static const struct module_interface smart_amp_test_interface = { .free = smart_amp_free }; -DECLARE_MODULE_ADAPTER(smart_amp_test_interface, smart_amp_test_uuid, smart_amp_test_comp_tr); -SOF_MODULE_INIT(smart_amp_test, sys_comp_module_smart_amp_test_interface_init); - #if CONFIG_SAMPLE_SMART_AMP_MODULE /* modular: llext dynamic link */ @@ -392,4 +389,10 @@ static const struct sof_man_module_manifest mod_manifest[] __section(".module") }; SOF_LLEXT_BUILDINFO; + +#else + +DECLARE_MODULE_ADAPTER(smart_amp_test_interface, smart_amp_test_uuid, smart_amp_test_comp_tr); +SOF_MODULE_INIT(smart_amp_test, sys_comp_module_smart_amp_test_interface_init); + #endif