diff --git a/src/include/sof/audio/pcm_converter.h b/src/include/sof/audio/pcm_converter.h index f6b7005e9e81..543c30c59f5f 100644 --- a/src/include/sof/audio/pcm_converter.h +++ b/src/include/sof/audio/pcm_converter.h @@ -28,7 +28,11 @@ struct audio_stream; #ifndef UNIT_TEST #if __XCC__ && XCHAL_HAVE_HIFI3 && CONFIG_FORMAT_CONVERT_HIFI3 +#if __ZEPHYR__ && CONFIG_IPC_MAJOR_4 +#define PCM_CONVERTER_GENERIC +#else #define PCM_CONVERTER_HIFI3 +#endif #else #define PCM_CONVERTER_GENERIC #endif diff --git a/zephyr/CMakeLists.txt b/zephyr/CMakeLists.txt index 93e7d34b78c8..8e8daa9feffb 100644 --- a/zephyr/CMakeLists.txt +++ b/zephyr/CMakeLists.txt @@ -685,6 +685,14 @@ zephyr_library_sources_ifdef(CONFIG_COMP_SRC ${SOF_AUDIO_PATH}/src/src.c ) +zephyr_library_sources_ifdef(CONFIG_COMP_BASEFW_IPC4 + ${SOF_AUDIO_PATH}/base_fw.c +) + +zephyr_library_sources_ifdef(CONFIG_COMP_COPIER + ${SOF_AUDIO_PATH}/copier.c +) + zephyr_library_sources_ifdef(CONFIG_SAMPLE_SMART_AMP ${SOF_SAMPLES_PATH}/audio/smart_amp_test.c ) diff --git a/zephyr/wrapper.c b/zephyr/wrapper.c index 2cfd40ea7107..bdb39268098d 100644 --- a/zephyr/wrapper.c +++ b/zephyr/wrapper.c @@ -535,6 +535,8 @@ void sys_comp_dcblock_init(void); void sys_comp_eq_iir_init(void); void sys_comp_kpb_init(void); void sys_comp_smart_amp_init(void); +void sys_comp_basefw_init(void); +void sys_comp_copier_init(void); /* Zephyr redefines log_message() and mtrace_printf() which leaves * totally empty the .static_log_entries ELF sections for the @@ -630,6 +632,14 @@ int task_main_start(struct sof *sof) sys_comp_mux_init(); } + if (IS_ENABLED(CONFIG_COMP_BASEFW_IPC4)) { + sys_comp_basefw_init(); + } + + if (IS_ENABLED(CONFIG_COMP_COPIER)) { + sys_comp_copier_init(); + } + /* init pipeline position offsets */ pipeline_posn_init(sof);