Create dump options for logger to print important information from
LDC file, like DBG_ABI version and UUID with corresponding names.
Signed-off-by: Karol Trzcinski <karolx.trzcinski@linux.intel.com>
Split this function to part responsible for pointer calculation
and string formatting. It make possibility to use same
string format with different pointer arithmetic.
Moreover introduce aprintf to make memory allocation for output
string more automated process.
Signed-off-by: Karol Trzcinski <karolx.trzcinski@linux.intel.com>
Double space in formatting string led to little mismatch between header
and content in output logger file.
Signed-off-by: Karol Trzcinski <karolx.trzcinski@linux.intel.com>
We only need demux for two speaker dais case.
Fixes: 5e8de9fd52 "topology: sof-icl-rt711-rt1308-rt715-hdmi: Merge
two pipeline with demux"
Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Cmake files should have consistent directory linkage scheme
where lines duplication should be avoided.
Signed-off-by: Karol Trzcinski <karolx.trzcinski@linux.intel.com>
Data after pause command should be kept compatible to omit
pop noise on output. The solution may be waiting for FIFO
empty but it takes to long - up to 1 processing period time.
Another - introduced - solution is to stop draining new data
from buffer after pause, but keeping dma connection with dai
up to release command. In this place waiting for FIFO empty
shouldn't take so much time, so system agent won't panic and
data will be consistent.
Signed-off-by: Karol Trzcinski <karolx.trzcinski@linux.intel.com>
Disables system agent for BYT/CHT, HSW/BDW and IMX8 platforms.
System agent is supposed to track drift between timer ticks,
but it's only valid for the platforms with timer based scheduling.
Platforms with DMA based scheduling have asynchronous interrupts,
which can potentially starve the agent and cause system panic.
Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
The equation for fir_in_max value was missing term -1 and returned
too high value that resulted in FIR scale coefficient calculation an
overall gain of 0.000004 dB while it should be exactly 0 dB. The HW
decimator contains saturation in output so it have not caused
overflows of PCM capture stream.
The new macro INT_MAX() returns the correct max PCM code value for
the used FIR input word length and looks better readable than
original code.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
This patch adds to header file sof/math/numbers.h two macros
INT_MAX(N) and INT_MIN(N). E.g. for 16 bits the returned values
are 32767 and -32768. The macro works up to N = 64.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
Previously used by kpb tests only and defined locally.
New pieces of the code, like perf macros need them
globally.
Signed-off-by: Marcin Maka <marcin.maka@linux.intel.com>
Adjust top_of_kernel_tree() function to SOF so invoking
./scripts/checkpatch.pl works out of the box and doesn't require
figuring what's going on and the existence of the --no-tree option which
sof-ci invokes "behind the scenes".
This instead of failing with:
Must be run from the top-level dir. of a kernel tree
Compared to --no-tree, this is also enables a couple extra checks like:
WARNING: use relative pathname instead of absolute in changelog text
PS: the space between check and patch is here to... defeat checkpatch
itself. It apparently doesn't expect any change to itself.
Signed-off-by: Marc Herbert <marc.herbert@intel.com>
Match alignment with open parenthesis to
maintain the coding style.
Reported by checkpatch.pl
Signed-off-by: Shreeya Patel <shreeya.patel23498@gmail.com>
In hda_dma_data_size() if an XRUN leads to an early return,
interrupt flags have to be restored.
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
The ret variable in ipc_comp_new() is never changed from its
initialisation value of 0, remove it.
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Currently multiple functions send struct sof_ipc_comp_reply to the
host over IPC without initialising its .id field. To avoid this and
similar problems in the future initialise reply objects in their
definition statements.
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
dai_comp_get_hw_params() cannot be an inline function because a
pointer to it is used for a .dai_get_hw_params assignment.
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
The N_DAI_OUT and N_DAI_IN pacros, defined in dai.m4, don't take
parameters, fix their usage.
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Replace multiple occurrences of a copy-paste error in comments in
bytecontrol.m4: CONTROLMIXER should actually be CONTROLBYTES.
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
When out_fd points standard output then error message shouldn't be
duplicated - duplicated messages only make logger output more messy.
Signed-off-by: Karol Trzcinski <karolx.trzcinski@linux.intel.com>
Avoid useless parentheses to the right hand side of an assignment.
Change suggested by coccinelle.
Signed-off-by: Payal Kshirsagar <payalskshirsagar1234@gmail.com>
This patch adds the highpass capture pipeline which enables the volume
and switch controls. In the switch control, it enables capture LED
controlling.
Signed-off-by: Libin Yang <libin.yang@linux.intel.com>
This patch adds the capture pipeline which enables the volume and switch
controls. In the switch control, it enables capture LED controlling.
Signed-off-by: Libin Yang <libin.yang@linux.intel.com>
Dummy DMA should follow other drivers and use getters
and setters where available to avoid code changes when
dma channel internals are changed.
Signed-off-by: Marcin Maka <marcin.maka@linux.intel.com>
New is c++ keyword which causes errors while generating
the documentation for component api with sphinx and breathe.
Signed-off-by: Marcin Maka <marcin.maka@linux.intel.com>
One of schedule_ll PRs added uuid without changes in probes
and probe build failed, this commit will fix it
Fixes: 0529c141f4 ("tasks: add uuid based identification for tasks")
Signed-off-by: Adrian Bonislawski <adrian.bonislawski@linux.intel.com>
Increases value of next timer set in case there is
a delay in tasks execution. Value of 1 is too small
to guarantee that the next interrupt will be triggered.
Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
Heap zone was used by mistake instead of flags
This results in buffer mode change from bypass to cached
Tested & no regression found
Signed-off-by: Adrian Bonislawski <adrian.bonislawski@linux.intel.com>
Move byt/cht platform specific ifelse to platform files.
And byt/cht have codec and nocodec differences, which need to have
PLATFORM-codec and PLATFORM-nocodec files.
Signed-off-by: Fred Oh <fred.oh@linux.intel.com>