-
Notifications
You must be signed in to change notification settings - Fork 318
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Tools: Topology2: Add DMIC1 and other rates support #8688
Conversation
The needed defaults for DMIC1 for PCM ID and sample rate are added similarly as for DMIC0 for later use. DMIC1 related pipelines are not used by default so DMIC1_ENABLE is set to false. Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
The added DMIC0_RATE allows to use the DAI, pipelines, and PCM with any supported rate for DMIC in range 8 - 96 kHz. E.g. configure DMIC0 to 96 kHz. There is no change to existing functionality with default 48 kHz rate. Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
This patch optionally includes dmic1-passthrough.conf if DMIC1_ENABLE is set in topologies build to passthrough. Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
Note: This patch needs alsa-project/alsa-utils#250 |
@singalsu cmake tools failed at internal intel service |
The topologies build fails with current alsa-utils version since I wanted to use defines like $DMIC1_RATE for format attributes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@@ -86,6 +86,51 @@ PREPROCESS_PLUGINS=nhlt,NHLT_BIN=nhlt-sof-hda-efx-generic-4ch.bin,\ | |||
DEEPBUFFER_FW_DMA_MS=100,EFX_FIR_PARAMS=passthrough,EFX_IIR_PARAMS=passthrough,\ | |||
EFX_DRC_COMPONENT=multiband,EFX_MBDRC_PARAMS=passthrough" | |||
|
|||
# With 16 kHz DMIC1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One question: can we have a flag to build these DMIC1 ? Currently we don't use these DMIC1 tplgs but need to add burden for CI
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@RanderWang @fredoh9 @mengdonglin We had a testing gap and missed that alsatplg did not work correctly for two DMIC DAI case. I'd like to add some cases with DMIC1 and additionally with other than default 16 kHz to increase coverage. Suggestions of which platforms to use and what kind of topologies set to build are welcome. I used here two platforms I had hands-on access to. A MTL RVP platform and LNL might make better sense. What do you think?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, MTL RVP is preferred. SDW platforms use SDW codec DMIC in current situation, do we need to test with it ?
Please check this in HDA machine driver, does your PR work with this ?
{
.name = "dmic16k",
.id = 7,
.dpcm_capture = 1,
.no_pcm = 1,
SND_SOC_DAILINK_REG(dmic16k, dmic_codec, platform),
},
Topologies with DMIC1 passthrough capture are added with 16 and 96 kHz rates. Also topologies with DMIC0 changed to 96 kHz are added as example to test DMIC0 with other that default rate. Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
e49d23a
to
743d3ae
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, I assume you need more testing ?
I got more comments about DMIC to #8728 that also contains these patches, so better to continue there and close this. |
This can't be built with current alsatplg version in CI. |
No description provided.