Allow interrupts to have a parent and child relationship in order to
support nested interrupts between different HW interrupt controllers.
This patch allows child handler to be registered for secondary interrupt
controllers and allow multiple child interrupt sources to share a single
interrupt pin.
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
Haswell and Broadwell have some differences with some DMA registers.
Add macros for these bits.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
Coverity issue: 254842 Uninitialized scalar variable
The variable will contain an arbitrary value left from earlier
computations.
In parse_page_descriptors: Use of an uninitialized variable (CWE-457)
The elem.src variable is not initialized, but in
dma_trace_host_buffer() the code reads this initialized value.
Break
*e = *elem;
in
e->dest = elem->dest;
e->size = elem->size;
to only access relevant fields.
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
This patch updates the pointer cast in host/dai for library build
support for 64-bit arch
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Explicitly comment that the fall through in a switch case is not
a typo to make Coverity warnings go away.
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
We don't need set host buffer size in each sg_elem, instead,
we can set it only one time, here set it in params().
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
shell expands $10 as $1 followed by 0, so test .conf topology files contained
mclk_freq "codec0" instead of the expected value (e.g. 19200000).
Parenthesis are required when there are more than 9 arguments to a
macro...
Reported-by: "Wang, Yan" <yan.wang@intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
The mclk may be different for different platforms, here make it
configurable for test topology files.
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
Currently SOF is version as x.y. Add a z so that the version is x.y.z and
can represent different stable versions.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
Make install/dist were missing some headers files and dirs. Add them and
make sure version generation works for building from the dist directory
where there is no git versioning information available.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
Only compile dma-trace.c when BUILD_DMA_TRACE is true.
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
Acked-by: Yan Wang <yan.wang@linux.intel.com>
CONFIG_DMA_TRACE is selected by default. But we should
not do dma trace when CONFIG_DMA_TRACE is not selected
(--disable-dma-trace is added to configure command line),
here add this judgement to fix compiling issue for that
dma trace is not selected.
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
Acked-by: Yan Wang <yan.wang@linux.intel.com>
The DAI and host components states must be preserved during pause so that
when normal pipeline positions are used on resume. i.e. pause just looks
like a very long pipeline schedule.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
The circular trace buffer can overflow if too much trace data is sent
before it can schedule a DMA copy to flush the data. This overflow
causes the avail bytes counter to be greater than the buffer size and
means the DMA copy is rescheduled until avail is 0 (repeating old data).
Fix this by resetting avail to 0 when we overflow.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
The DAI and host components states must be preserved during pause so that
when normal pipeline positions are used on resume. i.e. pause just looks
like a very long pipeline schedule.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
Fix so that dump stack does not overwrite any debug data and does not
read past the end of the stack.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
Initialise the SA during platform init and then notify SA of idle in the
main audio loop.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
Add a simple system monitoring agent that can detect when FW does not
execute correctly. The assumption is that FW will always idle from time
to time and this idling can be monitored by the SA. The FW wont idle if
it's thrashing, continually interrupted, continually running work or
continually rescheduling a task.
The SA will emit trace and panic if idle is not entered for a specific time
period.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
Fix so that dump stack does not overwrite any debug data and does not
read past the end of the stack.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>