Skip to content

EQ IIR: Increase IPC length, simplify initialization, and dcache invalidate code#317

Merged
lgirdwood merged 2 commits intothesofproject:masterfrom
singalsu:eq_iir_simplify_init_dcache_invalidate_proposal
Sep 6, 2018
Merged

EQ IIR: Increase IPC length, simplify initialization, and dcache invalidate code#317
lgirdwood merged 2 commits intothesofproject:masterfrom
singalsu:eq_iir_simplify_init_dcache_invalidate_proposal

Conversation

@singalsu
Copy link
Copy Markdown
Collaborator

@singalsu singalsu commented Sep 6, 2018

Please find the commit messages for changes descriptions.

This patch changes equalizer initialization to store the allocated
delay lines buffers address in a single pointer and size component
data. This simplifies the dcache invalidate code avoids knowledge of
filter internals that may change for future intrinsic optimized
version.

The EQ reconfigure and responses switching is by this patch changed to
happen in prepare() to avoid doing unnecessary allocation and free
operations in typical component life cycle. Prior to to prepare sent
configuration is just stored but not initialized into equalizers.
On-the-fly response switching can be enabled later with some work for
the component.

Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
This patch increases IPC length to be sufficient for e.g. 2x 12th order
IIR configuration. This is near to minimum feasible to enable testing of
equalizers. There may be need to adjust the limit up even more later but
this is the proposal now until we know better the requirements.

Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
@singalsu singalsu requested review from lgirdwood and tlauda September 6, 2018 08:31
@singalsu singalsu changed the title EQ IIR simplify init dcache invalidate proposal EQ IIR: Increase IPC length, simplify initilialization, and dcache invalidate code Sep 6, 2018
@lgirdwood lgirdwood merged commit bf26cd9 into thesofproject:master Sep 6, 2018
@singalsu singalsu changed the title EQ IIR: Increase IPC length, simplify initilialization, and dcache invalidate code EQ IIR: Increase IPC length, simplify initialization, and dcache invalidate code Sep 6, 2018
Comment thread src/audio/eq_iir.c

dcache_invalidate_region(dev, sizeof(*dev));

cd = comp_get_drvdata(dev);
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

comp_data should be retrieved after invalidation of dev, since we can potentially have the wrong pointer.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, a new pull request with fix for this is on the way.

@singalsu singalsu deleted the eq_iir_simplify_init_dcache_invalidate_proposal branch April 29, 2019 08:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants