Adds check if optional comp_ops are available.
This patch also adds assert for mandatory ops.
Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
Use the SOF project root directory in get_abi.sh to read the
ABI macros instead of using the relative path.
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Activated by '-r' option. Useful for intermediate log
processing when the output is used as an input for another
tool. No headers, tokens separated by single spaces,
component ids concatenated with component name to
still produce a single token if present.
Signed-off-by: Marcin Maka <marcin.maka@linux.intel.com>
This file is useful to visualize memory map of the fw image
with much more details than using just the aggregated data
available from the .ri file manifest.
Signed-off-by: Marcin Maka <marcin.maka@linux.intel.com>
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>