This is very useful when updating one of the types in UAPI
because with the current implementation one needs to be careful
to also update file_format.h
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
This aligns uapi/user/fw.h with the fw.h file used by Linux
and also prepares this header to be directly used by rimage.
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
sof audio pipeline with the format of 24bit doesn't
work on HDA platform. It is caused by sample data layout. SOF supports
S24_LE, and each sample format is like pattern of 0ddd, d stands for
data. Samples are padded with 0‟s at the MSB.
Link dma copys samples directly to hda bus, but hda bus requires samples
layout like pattern of ddd0. Samples are padded with 0‟s at the LSB to
left justify the sample within the container.
Now there is a volume at the end of hda pipeline. We only need to
convert dai type from S24_LE to S32_LE to make volume convert hda data to
correct format
Signed-off-by: Rander Wang <rander.wang@linux.intel.com>
Now runs with cmake for Windows. Could not spawn the process reading
from the pipe with the cmake's path formatting.
Signed-off-by: Marcin Maka <marcin.maka@linux.intel.com>
When calculating frame_end_padding with tdm_per_slot_padding_flag high,
imporper data size was used, yielding configuration errors.
Signed-off-by: ArturX Kloniecki <arturx.kloniecki@linux.intel.com>
Fixed non-APL specific handling of per-channel IRQs from GPDMA.
APL has per-channel IRQs handled by xtos, so similar functionality
was implemented for other platforms. Bitmask for tracking usage of
IRQs was added to dma structure, for non-APL only.
Signed-off-by: ArturX Kloniecki <arturx.kloniecki@linux.intel.com>
Add a flag NO_XRUN_RECOVERY to disable the FW internal xrun recovery,
make it to false by default.
Signed-off-by: Slawomir Blauciak <slawomir.blauciak@linux.intel.com>
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
Adds start delay for timer driven capture streams.
External interface is enabled after DMA, so we need to compensate it.
Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>
Add -u option to allow force building xtensa(up) ARCH on platforms which
usually building xtensa-smp by default.
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
This is legacy and was used to keep current
message from host.
It is now unused so remove it. Notice that we
also remove temp var msg.
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
Simple variable declarations with no initialisation don't need to
be protected, move them out of a spin-lock. Also remove superfluous
static function declarations.
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
dependencies are incorrect due to kernel changes
also add 6s delay after insert to let userspace complete its tasks and
go back to idle
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
In C casts between "void *" and any other pointers aren't needed.
Remove several occurrances.
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Instead of jumping out of a loop with a "goto" use break and test
the loop exit reason.
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Replace multiple occurrances of assignment sequences like
a |= x1;
a |= x2;
with a simpler
a |= x1 | x2;
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Remove several occurrances of redundant variable initialisations
and remove some trivial variables, that are only initialised
and used once without ever being changed.
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Simplify the DW DMA driver by using channel and LLI pointers instead
of repeating the same pattern multiple times within functions.
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Refactor the whole pipeline component:
- one method to handle both upstream and downstream walk
across the pipeline graph,
- code deduplication,
- cuts pipeline implementation size by half.
Signed-off-by: Tomasz Lauda <tomasz.lauda@linux.intel.com>