The widget name size will exceed the character limit and lead to below
error
failed to find module info for widget
alh-copier.SDW0-Playback-SimpleJack.0 with UUID
00000000-0000-0000-0000-000000000000
Shorten the stream name to fix it.
Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Add constraints on valid pipeline priority values and document
the semantics so that 0 is considered the highest priority and such
pipeline should be run first.
The range matches definitions in include/ipc4/pipeline.h and
SOF_IPC4_MAX_PIPELINE_PRIORITY.
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
This device has RT711 on link0, RT1316 on link3 and 2 PCH-attached DMICs.
Add 3 configurations with no DMIC, 4 DMIC and 2 DMIC. For now no
support for -pdm1.
Link: https://github.com/thesofproject/linux/issues/4880
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
The IIR files export overwrites the FIR files due to mistake
in the script.
Fixes commit 5ddbd34ba9 ("Tools: Tune: EQ: Add tplg2 blobs create")
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
Starting with this commit, i.MX93 now uses the timer domain
in conjunction with the Zephyr native drivers.
Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
The BT codec used by the IW416 chip expects FSYNC to be
asserted for only one BCLK. Also, FSYNC should be active HIGH.
As such, change from I2S protocol to DSP_A protocol since the
configurations made for this protocol inside the SAI driver
are more suited.
Also, by default, the BT codec drives data on BCLK rising
edge and samples it on falling edge. With the DSP_A protocol,
the SAI driver also has the same configuration, which is wrong
since we can't drive and sample on the same edge and cycle. As such,
invert BCLK polarity such that the SAI will drive on rising edge
and sample on falling edge.
Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
8ULP has two supported BT HFP scenarios: NBS and WBS. For
NBS the frequency of FSYNC is 8k, while for WBS the frequency
of FSYNC is 16k. Since the BCLK is computed as:
Freq(BCLK) = TDM_SLOTS * TDM_SLOT_WIDTH * Freq(FSYNC)
then that means we're going to end up with two different BCLK
frequencies (one for each supported scenario).
Currently, what we do is pass the frequency of FSYNC
as a build argument, while keeping the frequency of BCLK
constant (set to 256000, which would be the same value as the
one used in WBS). This causes the following issues:
1) The Zephyr native SAI driver returns an error
when trying to commit the configuration because the
frequency of BCLK doesn't abide by the aforementioned
formula.
2) We end up consuming twice as many samples in a given
unit of time.
To fix these issues, use the aforementioned formula to compute
the frequency of BCLK.
Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
Rename the `RATE` parameter to `FSYNC_RATE` in order to
remove ambiguity regarding what the parameter is.
Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
All topologies are built in parallel. The same name will lead
to file overrides. Therefore, correct to use the respective file
names properly.
Signed-off-by: Mac Chiang <mac.chiang@intel.com>
The CHAIN_DMA has been replaced with HDMI_USE_CHAIN_DMA, which was already
enabled by default on iDisplay HDAudio codec in hdmi-default.conf.
Signed-off-by: Mac Chiang <mac.chiang@intel.com>
When Google RTC AEC is not ready to launch, it shouldn't be included
in production builds for Chromebook. This commit removes Google RTC
AEC from the current variants while making another copy with suffix
"-google-aec".
Signed-off-by: Pin-chih Lin <johnylin@google.com>
Multicore is not working correctly for Intel cAVS2.5 in Zephyr
upstream and the fixing will take a longer time, so disable
this feature in nocodec configuration.
Link: https://github.com/thesofproject/sof/issues/8942
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
This patch replaces pipeline mixout-gain-dai-copier-playback with
mixout-gain-efx-dai-copier-playback. The purpose is to allow
enhance of audio playback quality with equalizers (IIR and FIR)
and dynamic range control (DRC).
The components are programmed by default to passthrough for minimal
overhead. They can be activated via sof-ctl or UCM with ALSA controls.
- Post Mixer Analog Playback IIR Eq bytes
- Post Mixer Analog Playback FIR Eq bytes
- Post Mixer Analog Playback DRC bytes
- Post Mixer Analog Playback DRC switch
The recommendation is to keep headphone playback flat and enable
processing only when HDA output is in speaker mode.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
Add the .dot file header/footer macros. These are benign if unused,
and it seems like most other devices have them defined.
Signed-off-by: Andy Ross <andyross@google.com>
Since there is no NHLT blob included to these topologies, the same
topology works for all HDA platforms, e.g. TGL, MTL, LNL.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
This patch makes to SRC coefficients tables generator same changes
as done in recent git commits.
commit 88fdb10e52 ("audio: src: rename sample rate converter
coefficient folder name") moved coefficients files location to
src/audio/src/coefs.
commit 90fef5afd2 ("src_lite: add module") removed include of
src.h from upper level due to another src-lite version.
'commit 7f4e6aed74 ("src: make coefficients constant")
added const to struct src_stage.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
Move gain-playback/capture pipelines out of cavs folder
since these can used by others.
Update cavs topologies to fix compilation by adding
include/pipelines as searchdir.
Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
Move common_definitions.conf to common folder since this
will be used by other companies to define their topologies.
Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
Fix the stale instruction for install and add the steps for setting up
OpenVino/OpenCV to test the noise suppression model from the open model
zoo repository.
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Add the conf file for the OpenVino noise suppression module and
introduce the module in the capture path in the plugin topology when
noise suppression is enabled. ATM, only 16K capture is supported by the
model, so change the input/output rates for the host/dai modules in the
plugin capture pipeline.
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Introduce a new module that performs noise suppression. The module loads
the noise suppression model using the OpenVino Runtime plugin, processes
the input samples to produce output samples with clean speech.
CUrrently, the module is hard-coded to compile the model to be run on
the CPU only and will be extended for other devices like the NPU in the
future.
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
This will be needed for the plugin voice PCM in preparation to add the
noise suppression module in the host pipeline.
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Set the host widget correctly and use the capture specific functions
during prepare/free.
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Set both ibs/obs to be based on the ALSA period_size to make sure that the
intermediate buffers are large enough.
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
For now, only process widgets that don't need the basecfg extension are
supported.
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
time_precision variable can be used as -1
Fixes commit ff9343aa4a ("logger: convert: Fix compile time error with
newer toolchain")
Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
On 8ULP SAI is connected to BT which supports
only 1 channel for both playback and record.
Fixes: aaff352314 ('topology1: pipe-volume-capture.m4: Set minimum number of channels to 2')
Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
Add a mute switch to gain widget for DMIC. Also register this switch
as MIC mute LED mixer control on Linux side.
Signed-off-by: Brent Lu <brent.lu@intel.com>
The topology uses passthrough pipelines for playback/capture and
supports only 48k, 2ch, 16bit format for now.
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
This patch adds build of hda-generic development topologies to
test ASRC component with s32/24/16 format.
Signed-off-by: Andrula Song <andrula.song@intel.com>
Adding make file changes to generate the topology file for the products
which doesn't have no ssp-based audio codec but need to support
HDMI audio playback and HDMI-in capture via I2S.
Signed-off-by: Balamurugan C <balamurugan.c@intel.com>
override the default HDMI DAI link id's by using make
define parameters instead of fixed in file.
Signed-off-by: Balamurugan C <balamurugan.c@intel.com>
Adding HEADSET_CODEC macro and guarded the SSP configuration handling
under this macro.By this changes we can generate the topology
configuration for the products which has no headset codec.
Signed-off-by: Balamurugan C <balamurugan.c@intel.com>
Instead of including TOML files for each platform explicitly, add a
generic platform.toml, that will contain all respective platform
TOML files, and select the correct one, based on build configucation.
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
A part of mtl.toml.h is also needed for loadable modules, built for
MTL. Extract it into a separate file.
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
We need to be able to distinguish LLEXT loadable dynamically linkable
modules at run-time. Add a new type for them. Compatibility is
preserved.
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>