We can add ABI information to the Manifest section. So kernel can
check if the topology is compatible with the kernel.
Signed-off-by: Bard liao <yung-chuan.liao@linux.intel.com>
Abort build if not all mandatory arguments are passed to
the macros. This should help to catch invalid usage.
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
The used memcpy_s() has wrong size for destination. It causes the
prepare() method to fail later in component life cycle into sink buffer
resize due to zero config->periods_sink value. This patch fixes the
fail of pipeline instantantion with IIR and FIR EQ components.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
Updates sof_ipc_pipe_new struct to better handle
different time domains:
- Changes "deadline" to "period".
- Changes "timer_delay" to "time_domain".
Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
Rename 'deadline' to 'period' to indicate pipeline scheduling period,
and add time domain to indicate the pipeline scheduling domain (e.g. DMA
interrupt, timer interrupt).
Please be noticed that this might introduce an abi change so consequent
abi changes in both FW and driver side are needed.
Haven't set the flag in topology/sof/sof-xxx.m4 yet, that means it will
use io/interrupt scheduling for those topologies/pipelines at the
moment, if wanna to change them, please change them specific there.
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
Add quirks parameter in SSP_CONFIG_DATA(). Enable LBM in dupulex pipelines
by setting quirks as SOF_DAI_INTEL_SSP_QUIRK_LBM 64(1<<6). SSPx.IN port get
PCM data from SSPx.OUT. Note both mclk and quirks are optional parameter.
When quirks set, mclk should have value or initialize to default value
which is 0.
Signed-off-by: Fred Oh <fred.oh@linux.intel.com>
Support quirks setting from topology. quirk are used to set
ssc1/ssc2 registers according to its bit value.
Signed-off-by: Fred Oh <fred.oh@linux.intel.com>
After a recent scheduler update the API has changed: now it requires
task's private pointer to be NULL before calling schedule_task_init()
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Use ctrl data message id to receive and send large binary
blobs over ipc. When first message arrives, reserve memory
for the whole blob.
Signed-off-by: Jaska Uimonen <jaska.uimonen@intel.com>
I've removed queue per priority in low latency scheduler.
Now there is only one queue for all priorities. Scheduler adds
tasks to queue in descending order based on ther priority.
Signed-off-by: Bartosz Kokoszko <bartoszx.kokoszko@linux.intel.com>
Adds new status to pipeline to accurately reflect
what is the expectation here. Value of 1 isn't
saying anything.
Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
Adds new component status to accurately reflect
current status. Value of 1 isn't saying much.
Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
I've changed scheduler invocation in schedule_edf_task_normal()
from generic schedule() to specific schedule_edf() for optimization
(there is no need to use generic functions in specific scheduler
implementation).
Signed-off-by: Bartosz Kokoszko <bartoszx.kokoszko@linux.intel.com>
Build faster by using all available cores by default
The xtensa script claims it used infinite build threads when j was not
specified but it was actually falling back to 1.
Signed-off-by: Curtis Malainey <cujomalainey@google.com>
Fixes playback with DW-DMA. Flow of pipeline copy
has changed, so now we need to preload the whole
buffer before allowing first copy to further
components. Also we need to move dma_copy call
to buffer callbacks to be up to date with data.
This was previosly done only for Host DMA.
Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
I've remove trace core logic from build when CONFIG_TRACE
is not set with Kconfig. When driver tries to enable traces
in case FW was built without tracing, FW returns error.
Signed-off-by: Bartosz Kokoszko <bartoszx.kokoszko@linux.intel.com>