log and linear are not supported with IPC4. Use no_fade and fade
instead and set the default to fade.
This should fix the following error seen with volume prepare():
volume: comp:9 0x60003 volume_prepare(): invalid cd->ramp_func
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
upgrade rimage to
3ee717eebc3ee717eebc probe: mtl.toml invaliv probe type
1f4a36e21f mux: fix module type
dcfd11bc4d mux: add mux cfg to list of modules
d957e0368b rimage: make ace15 signing to support openssl3
a1b6e6db33 manifest: add fw_ver_micro to manifest
fb28357912 config: mtl: add probe module
Signed-off-by: Kwasowiec, Fabiola <fabiola.kwasowiec@intel.com>
This patch fixes the upper frequency for distortion plus noise
measurement. The min(fs1, fs2) leaves part of upper band unmeasured
and gives a too good looking THD+N performance figure when output
rate is higher than input rate. The proper way is to measure the
(near) full output rate bandwidth.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
The test is treated passed if there were no failed cases. The fix in
this patch is to force one failed case if both failed and passed counts
are zeros. Then the upper level test scripts/host-testbench.sh reports
correctly the test fail.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
Add the wrong compiler currently expected by the Zephyr build system,
very easy one-line change later, get sparse results for MTL NOW!
Signed-off-by: Marc Herbert <marc.herbert@intel.com>
After commit e101aadcd1 ("module_adapter: drop the comp_get_module_data() macro")
API prototype was changed to accept a `processing_module` instead of a
`comp_dev` but `dev` was still used inside passthrough_codec_free which
generates a compile time error:
src/audio/module_adapter/module/passthrough.c:110:12: error: 'dev'
undeclared (first use in this function)
comp_info(dev, "passthrough_codec_free()");
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
Fixes a bug in mixout_reset(): mixin pointers in mixed data info
should not be cleared on reset. They should only be set on bind
and cleared on unbind.
Signed-off-by: Serhiy Katsyuba <serhiy.katsyuba@intel.com>
Fix one local variable that may be uninitialized and string formatting
for buffer addresses (uintptr_t is long unsigned type).
Tested with gcc 12.1.0 (Zephyr SDK 0.15.0).
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Necessary configuration options of the mtl board
have been enabled.
Signed-off-by: Andrey Borisovich <andrey.borisovich@intel.com>
Signed-off-by: Marcin Szkudlinski <marcin.szkudlinski@intel.com>
Signed-off-by: Adrian Warecki <adrian.warecki@intel.com>
Signed-off-by: Konrad Leszczynski <konrad.leszczynski@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
Signed-off-by: Rafal Redzimski <rafal.f.redzimski@intel.com>
Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
Signed-off-by: Serhiy Katsyuba <serhiy.katsyuba@intel.com>
The attributes of the dma controllers must be moved
to the zephyr. Until then, we will use a own copy of the
get_attribute function from the alh and dw_dma drivers.
Thanks to this, we can completely disable it building
in the configuration.
Signed-off-by: Adrian Warecki <adrian.warecki@intel.com>
Add mixing-based processing in channel selector to implement
capabilities resulting from IPC4 configuration. Enable flexible
channels count (from 1 to 8) independently for input and output.
Signed-off-by: Tomasz Lissowski <tomasz.lissowski@intel.com>
On sof zephyr ipc4 build, component performance profiling logs can't
be enabled due to current xcc compiler does not support inline
logging in header file, logs as below:
log_level undeclared (first use in this function)
log_current_const_data undeclared (first use in this function)
Move comp_copy to component.c can resolve this limitation.
However, this brings another cmocka issue for mixer unit test,
this patch also fixed cmocka mixer unit test issue.
BugLink: https://github.com/zephyrproject-rtos/zephyr/issues/43786
Signed-off-by: Baofeng Tian <baofeng.tian@intel.com>
Current hw cycle is based on 38400000, and perf cnt module did not consider
the clock wrap case, i.e the later cycle maybe small than the previous one.
so add code to handle this situation.
Signed-off-by: Baofeng Tian <baofeng.tian@intel.com>
Frames and period are key information for time calculation, with these
and sample rate, it would be easy to get current component consumed data
in time domain. CI script also easy to get these information for
further calculation.
Signed-off-by: Baofeng Tian <baofeng.tian@intel.com>
The component and pipeline identifiers were direct part of the older
SOF dictionary format. This information was added directly to encoded
output and was not part of the log message. When using Zephyr logging
subsystem, this type of audio specific information has be to put
as part of the log messages like any other log content.
Modify pipe_{err,warn,info,dbg} macros to add pipeline and component
identifiers to all printed log messages.
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
The component and pipeline identifiers were direct part of the older
SOF dictionary format. This information was added directly to encoded
output and was not part of the log message. When using Zephyr logging
subsystem, this type of audio specific information has be to put
as part of the log messages like any other log content.
Modify buf_{err,warn,info,dbg} macros to add buffer pipeline
and buffer-id identifiers to all printed log messages.
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
The component and pipeline identifiers were direct part of the older
SOF dictionary format. This information was added directly to encoded
output and was not part of the log message. When using Zephyr logging
subsystem, this type of audio specific information has be to put
as part of the log messages like any other log content.
Modify comp_{err,warn,info,dbg} macros to add component pipeline
and component identifiers to all printed log messages.
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
On i.MX8 k_cycle_get_64 always returns 0 so use sof_cycle_get_64
instead.
There is no better solution to support 64bit cycle counting for i.MX
and will have to stick with this implementation.
Fixes: c3c94fc515 ("header: rtos: use rtos specific version of wait.h")
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
Rename ace ipc zephyr stubb as ipc-zephyr.c as it is a generic interface
towards zephyr cavs/ace ipc drivers. Change existing zephyr ace/mtl
makefile reference to it and start using it in cavs/tgl ipc4 zephyr
native drivers builds. Tgl ipc3 builds will still use sof cavs ipc
driver.
Signed-off-by: Jaska Uimonen <jaska.uimonen@intel.com>
Fixes this error:
```
No platform found in name "sof-rpl.ri"; unknown memory layout.
```
... and shows the Memory Layout.
Signed-off-by: Marc Herbert <marc.herbert@intel.com>
The "get_llp_reg_info(): gpdma id 32 out of array bounds."
message is hit constantly with current mainline topologies with
no apparent impact to functinality.
The log is printed at a very high rate, which causes CPU and SRAM
traffic pressure that affects test execution.
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
This patch is used to make sure profiling code only can be run
with performance profiling build, and unify all performance profiling
with same format and usage.
Signed-off-by: Baofeng Tian <baofeng.tian@intel.com>
Duplicated dai index results to module initialization
faiure in multi-stream test. Dai 2 should be used by
stream nocodec-2.
Signed-off-by: Rander Wang <rander.wang@intel.com>
Trying avoid out-of-sync situations like commit a3b3c525d1 ("west:
update to newer rimage baseline").
Also explain why sof cannot be cloned as "sof2"
Signed-off-by: Marc Herbert <marc.herbert@intel.com>
Upgrade Zephyr from 0956647aaf6bd2b1e840adcc86db503f274d84a9 to
ed661a6c6909b338035b026cfc101ddda65ab8eb (1020 commits, including
441 since v3.2.0 tag).
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
The log print for SOF build and ABI version numbers at boot time, is
only printed in dma_trace_enable(). It is done here to ensure
the log is not emitted until logging infrastructure is in place
and the log print is not lost.
The information is very useful, so similar log should be emitted
also in SOF Zephyr builds, where the Zephyr logging subsystem is
used instead of SOF's own trace infra.
As Zephyr logging subsystem is available early, this code
can now be added directly to primary_core_init(), which is called
from sof_main().
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
After add this file, with -o app/perf_overlay.conf in build command
line, profiling functionality will be enabled and mtrace/sof log will
have performance data for further analysis.
Signed-off-by: Baofeng Tian <baofeng.tian@intel.com>
2 small changes required:
- Stop calling sys.exit(1) in case of error not to exit the importer
- Change EraseVars() to return the checksum value instead of printing
it. Move the print() to the main() function
This is required by the new sof-bin tests that compare signed with
unsigned binaries; submitted in
https://github.com/thesofproject/sof-bin/pull/105
Signed-off-by: Marc Herbert <marc.herbert@intel.com>
Similar to IPC3, seeing all IPC messages in the log is very useful
for debugging, e.g. when matching kernel and firmware logs. Use a
format similar to IPC3.
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
It's now possible to rebuild just only one modified topology without
rebuilding all of them from scratch.
Building topologies v2 has two steps:
1. concatenation of abi.conf with topo.conf
2. run alsatplg on the concatenation
Concatenation step 1. was wrongly implemented at configuration time, not
at build time. So when the topology source of step 1 (topo.conf) was
modified, the dependency of step 2 (= the concatenation) was not
affected and the topology was not rebuilt.
Fix this by moving the concatenation to build time.
Fixes commit 308a24a92b ("topology2: Add build support")
Signed-off-by: Marc Herbert <marc.herbert@intel.com>
Make prints a line for every topology that is already up to date and not
rebuilt. It's impossible to see what was done.
Signed-off-by: Marc Herbert <marc.herbert@intel.com>
This makes it possible to find stuff in the output of `ninja help`.
Zero effect on the build artefacts.
Signed-off-by: Marc Herbert <marc.herbert@intel.com>
`docker images` has no globbing option so just use `grep zephyr`
This fixes two different issues:
- Fixes tabulation images with names of a different length
- Displays any internal local cache some users may have
Signed-off-by: Marc Herbert <marc.herbert@intel.com>