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>
The ext bytes read response parsing needs a fix since it now includes
the ABI header. A warning is printed if max control size is reached.
The example configurations are also updated to contain the header.
The patch also includes new IIR and FIR setup for pass-through
configuration (for testing) that configures the EQ component to totally
pass the filter computation.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
This patch adds the ABI header into topology EQ data files and updates
the pipe-eq-volume-playback.m4 to include the coefficients from m4
directory like other topology files to prevent duplication of
response data.
The CONTROLBYTES_MAX is decreased to 304 due to larger IPC header size.
The update is not critical since the kernel contains other checks to
cover this. However it's done to avoid confusion.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
This patch contains the bug fixes for the EQ components to make them
work correctly. The topology and tools update is addressed separately. The
matching kernel patch is needed as well.
The first fix is for uapi header file that had left the macros
not updated. It caused the setup blob parsing to fail.
The FIR setup traces are updated to be easy to read with new trace. The
functional change is in get data where the configuration data size
and ABI version are written back to response.
The IIR is changed similarly but in addition the hard coded count
increase is replaced by the macro calculated value from ABI header
file.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
Changes access to system heap to cache only.
System heaps are separated for each core,
so it makes sense to stop using uncache.
Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
Fix capture issue with hda codecs. Now the data captured by
hda codecs is full of zero. It is caused by mismatch of link
dma channel between host and FW.
Now host allocates link dma channel at dai config loading stage,
and sends it to FW to allocate link dma channel at dai_config
function
Signed-off-by: Rander Wang <rander.wang@linux.intel.com>
Modify hard-coded virtual widgets to prevent kernel
warnings generated by the machine driver. No need to
add virtual_dapm_routes. Just adding the required virtual
widgets suffices to suppress the warnings.
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Modify virtual_widget macro definition to take type as
an input so it can used for different types and update
its users.
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
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>
On byt-like platform, sof should release dw-dma channel which is got
in set_params(). And in host_free(), it should not release any channel
as host doesn't get any channel in host_new()
Signed-off-by: Libin Yang <libin.yang@intel.com>
I've added abi_version verification. Be default logger verify: abi
in *.ldc file with logger abi version. Additionally, logger can verify
abi in "/sys/kernel/debug/sof/fw_version" (with -e flag) or in
ver_file (with -v ver_file) with logger abi version.
Signed-off-by: Bartosz Kokoszko <bartoszx.kokoszko@linux.intel.com>
This patch adds the two parameters into DMIC configuration
IPC. The parameters will control DMIC HW muting in capture start
and ensure in capture stop that the clock has been kept active
sufficient long time. The implementation of these features is
done later.
The reserved[] vector is reduced by the amount of added
words. Also the ABI minor version is incremented.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>