You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
audio: src: move filter and delay line allocation to init phase
Refactor SRC and SRC-lite so that filter stage setup and delay line
allocation happen during the module init callback instead of prepare.
This ensures the bulk of SRC memory allocation occurs while the vregion
allocator is still in its lifetime phase, before the interim heap is
created. The allocations then persist across prepare/reset cycles
without needing to be re-allocated each time.
A new setup_stages() callback is added to struct comp_data, set by each
variant (src.c, src_lite.c) to point at its own coefficient tables.
The common src_allocate_delay_lines() is factored out of the old prepare
path into src_common.c.
For IPC4, src_init_stages() calls setup_stages() and
src_allocate_delay_lines() at init time. The prepare path
(src_prepare_do) only validates rates and sets downstream params.
For IPC3, src_init_stages() is a no-op and src_prepare_do() retains
the original behavior of doing full setup at prepare time, since IPC3
cannot be tested at this time.
Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
0 commit comments