The information is useful to see without further debugging if SRC
receives from topology a sane configuration.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
This patch fixes fail to load components into pipeline with new() in
host testbench. The config header size need to be valid since it is
checked by SOF now.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
By default topology is using too many capture and playback PCMs, DAIs and
pipelines for available host GW DMAC channels. Comment out some so that
DMAC channels stay within bounds. This also gives users options to
re-enable for theer given test HW.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
interrupt_register(0 allocates memory so we need to check return value
and complain if it fails.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
Align ABI with kernel and make sure GDB enabled flag is fully exported
to all platforms.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
We need to new component with the whole ipc struction passed in
ipc_comp_new(), e.g. struct sof_ipc_comp_dai, but not only the struct
sof_ipc_comp, otherwise, we will fail to new components and see errors
in log such as:
dai.c:208 dai_new() error: dai_get() failed to create DAI. type:0,
index:-1106776464
Here change to pass in the whole _ipc->comp_data to fix this kind of
issues.
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
This patch allows ABI changes to incrementally grow certain IPC
structure and sub structures without changing MAJOR and keeping
backwards compatability.
Adds some helper IPC copier and validation macros that should be used
when handling external IPC structures. These ensure IPC changes are
handled correctly without causing errors or failures.
IPC size should be the first item in each structure to make it as easy
as possible to manage MINOR and PATCH ABI updates without unnecessary
replacement of FW or kernel.
This patch also makes size first in the IPC command header and introduces
a new header for internal IPC sub structures. The sub structure size
can be used to validate IPC and also be used to grow tail IPC command
sub structures as MINOR/PATCH ABI changes.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
Topology mem capabilities and trace panics codes should be in the
correct header for their users.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
The requirement for DMIC capture is to support upto 4ch
and 16-bit format. So modify the topology accordingly.
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
this patch follows:
ipc: Fix false positive IPC dropped messages.
On receiving an IPC IRQ the handler currently does not check the
IRQ mask. This means notification received ACKs (i.e. for trace updates)
from the host may be reported as duplicate host command IPCs.
Fix this by checking IPC IRQ mask.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
Signed-off-by: Rander Wang <rander.wang@linux.intel.com>
Somehow those two files should only differ on SSP connections and MCLK
ID1, so it's pretty obvious no one has tested this since August...
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Fix for memory leak when freeing continuous blocks.
Untill now only one block was freed since hdr->size was zeroed
at every loop pass and as it was part of loop condition loop has
been fired only once even if there were more than one blocks
to free.
Signed-off-by: Jakub Dabek <jakub.dabek@linux.intel.com>
Power management at platform init and during runtime was implemented
on CNL similarly to implementation on APL.
Signed-off-by: ArturX Kloniecki <arturx.kloniecki@linux.intel.com>
There are only two interrupt pins to support task levels, so
only low level and high level are supported on BDW or HSW.
Signed-off-by: Rander Wang <rander.wang@linux.intel.com>
Adds system runtime heap, which should contain
runtime objects created by the kernel part of the code
(drivers, devices etc.) If there will be a need to
separate ring 0 access, this allows us to easily do it
by adding access rights.
Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
This refinement follows commit on WHL
topology: whl: refine topology for hda on whl
Fix the issue that ipc timeout when simutalously playback
and capture. Now in FW, playback and capture are supported
by different dai. So dai index should be different for playback
and capture in the same be dai, or playback would use the same
dai as capture
Signed-off-by: Rander Wang <rander.wang@linux.intel.com>
We have already add interrupt mask check for new message from host,
let's add the symmetric check for reply message also.
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
We are missing interrupt mask check, which will lead to error handling
IPC message type(e.g. treat an reply message as an new one), Here add
mask check to fix that.
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
This patch adds into filter tools retrieving of ABI version from a
single function (a quick solution) and updates all configuration
data tools to apply the user ABI header.
The confusing platform_max_channels struct field is renamed to
channels_in_config (the EQ channel map) that creates many updates. The
EQ response plot title is fixed.
Finally new functions to decode IIR and FIR settings blobs is added.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>