~canonical-hwe-team/hwe-next/+git/sof:imx-stable-v2.6

Last commit made on 2023-08-03
Get this branch:
git clone -b imx-stable-v2.6 https://git.launchpad.net/~canonical-hwe-team/hwe-next/+git/sof

Branch merges

Branch information

Name:
imx-stable-v2.6
Repository:
lp:~canonical-hwe-team/hwe-next/+git/sof

Recent commits

bf008c1... by Laurentiu Mihalcea <email address hidden>

src: drivers: imx: ipc.c: Don't assert GIR twice

According to MU's documentation from the i.MX TRM, setting
the GIRn bit to 1 if already 1 may lead to issuing a second interrupt.

This leads to kernel errors such as:

"reply size (16) exceeds the buffer size (12)"

because of the fact that the MU IRQ is triggered prematurely and
the firmware doesn't have enough time to write the reply. As such,
the host will read the message it has sent to the firmware instead
of its reply.

To fix this, make sure that GIRn is set to 0 before setting it 1.

Signed-off-by: Laurentiu Mihalcea <email address hidden>

f11ba43... by Daniel Baluta <email address hidden>

imx: memory: Fix mixer going out of memory

Commit 05871a16de0d ("pipeline2.0: add source/sink api to
audio_stream") added two new fields to `struct audio_stream`:

 struct audio_stream {
+ struct sof_source source_api;
+ struct sof_sink sink_api;

and because `struct audio_stream` is part of `struct comp_buffer`
we see an increase of `struct comp_buffer` size from 256 to 384.

With this modification, i.MX mixer use case goes out of memory:

c0 dma-trace src/lib/alloc.c:765 ERROR failed to alloc 0x180 bytes zone 0x4 caps 0x1 flags 0x0
c0 dma-trace src/audio/buffer.c:51 ERROR buffer_alloc(): could not alloc structure

This is not ideal. Anyhow, it was necessary for new source/sink API.

Fix this by increasing the number of 512-byte heap blocks to 32.

Signed-off-by: Daniel Baluta <email address hidden>

d03ebad... by Seppo Ingalsuo <email address hidden>

Audio: Mux: Fix mistake in frames count handling

The source frames count need to be checked from every
active input_buffers[n].size). Similarly in consuming the
source buffers it needs to be updated to every
mod->input_buffers[n].consumed.

Fixes: #7308
Fixes: c399624 ("Audio: Mux: Convert mux and demux to module adapter")

Signed-off-by: Seppo Ingalsuo <email address hidden>
(cherry picked from commit afd86e08081835b16c960713ae2f44ffd3654ecb)
Signed-off-by: Kai Vehmanen <email address hidden>

fbfcfaa... by Kai Vehmanen

west.yml: update Zephyr to backport bugfix for 7482

Use sof/stable-2.6 branch for Zephyr and update to take
in https://github.com/zephyrproject-rtos/zephyr/pull/59272

Signed-off-by: Kai Vehmanen <email address hidden>

84c7941... by Kai Vehmanen

audio: buffer: do not mix cached and non-cached access in buffer_alloc

No reason to mix cached and noncached operations when
initializing the buffer in buffer_alloc(). We take a cached
reference, so let's use that to initialize the object.

Signed-off-by: Kai Vehmanen <email address hidden>
(cherry picked from commit a209cbd31f9a1a85c21568d12566c4220d573c00)

b69bf48... by Adrian Bonislawski <email address hidden>

dai-zephyr: possible division-by-zero if max_block_count is zero

If the max_block_count attribute is zero, this may lead to
division by zero error. Handle this explicitly but reporting
error if max_block_count is zero.

Signed-off-by: Adrian Bonislawski <email address hidden>

dffedba... by Andrey Borisovich <email address hidden>

ipc4: fixed possible null dereference

Result of the function call ipc_get_comp_by_id() had been dereferenced
without checking whether the pointer may be null.
Returned pointer may be null when component does not exist on the
list.

Signed-off-by: Andrey Borisovich <email address hidden>

60fabb0... by Marc Herbert <email address hidden>

versions.json: bump to 2.6.0

First 2.6.0 version on the stable-v2.6 branch

Signed-off-by: Marc Herbert <email address hidden>

b9b0307... by Jyri Sarha <email address hidden>

topology2: dmic-generic.conf: Rename "DMIC" PCM name to "DMIC Raw"

Rename "DMIC" PCM name to "DMIC Raw" in the generic dmic topology fragment.
The PCM is on the DMIC patch without any processing beyond gain and IIR EQ,
thus the "Raw" extension.

Signed-off-by: Jyri Sarha <email address hidden>

08acbe4... by Jyri Sarha <email address hidden>

topology2: cavs-nocodec.conf: Rename ssp-capture and DMIC0 Raw PCMs

Rename cavs-nocodec capture PCMs. The current PCM names are confusing. These
should be better names for them. The former

"ssp-capture" is now "Port0 2nd Capture",
"DMIC0 Raw" is now "DMIC SFX1", and
"DMIC0 Raw 2" is now "DMIC SFX2".

The PCMs in question have extra gains in the path to simulate processing.
Also the mixer name is changed to compensate for the matching "Capture"
substring in the end of the PCM name, that is part of the mixer name,
to avoid "Capture Capture" tautology.

Signed-off-by: Jyri Sarha <email address hidden>