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

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

Branch merges

Branch information

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

Recent commits

6eb9003... by Daniel Baluta <email address hidden>

schedule: zephyr_dma_domain: Do not use a registered channel

Current implementation only checks if a channel is used with
current interrupt. But that channel might have been registered
with another interrupt earlier.

So, we need a way to skip channels already used. For this, we iterate
over all registered interrupts and check existing registered channels.

This fixes scenarios where running:

$ arecord -Dhw:0,0 -f S32 -c 2 -r 48000 -t raw |
aplay -Dhw:0,0 -f S32_LE -c 2 -r 48000

will result in an I/O error.

Signed-off-by: Daniel Baluta <email address hidden>
(cherry picked from commit 1a8b1bf60c349ac2f2a7e9078bc2186748424695)

99ab9b2... by Iuliana Prodan <email address hidden>

topology: imx: fix tdm slot width value

Set correct TDM slot width to 32 bits.

The error has been discovered after commit
0ba64e98ec7d ("SAI: use topology params").
We start using the tdm_slot_width from topology,
rather than hardcoded in code.

Signed-off-by: Iuliana Prodan <email address hidden>
(cherry picked from commit b9bd2303bd0d2b72194daed32807b7d021be1574)

27b8a7e... by Daniel Baluta <email address hidden>

drivers: imx: Select HAVE_SDMA_FIRMWARE when using MICFIL

MICFIL needs multi-fifo SDMA script so select HAVE_SDMA_FIRMWARE.

Signed-off-by: Daniel Baluta <email address hidden>
(cherry picked from commit 8eeaf5aea57e64880d620b0b144c1659132affc0)

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

drivers: sdma: Add sdma script code in header file

For ease of use add sdma script code directly in the sdma
header file.

Signed-off-by: Daniel Baluta <email address hidden>
(cherry picked from commit 93c63bd34080cfd385cea6eea553d2fec74f41c8)

5a0732f... by Zhang Peng <email address hidden>

imx: sai: Fix sof run fail issue on imx8ulp

Don't need to enable packed mode for sai on 8ulp.

Signed-off-by: Zhang Peng <email address hidden>

01f37a3... by Daniel Baluta <email address hidden>

drivers: imx: Select DONE bit from software

With multi-fifo we need to enable done bit from software
as we have multiple fifos.

For this we make use of sw_done_sel configurations bits and
write proper bits into SDMA_DONE0 register.

For more information see `SDMA DONE0 Configuration
(SDMAARMx_DONE0_CONFIG)` SDMA register from i.MX8 reference manual.

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

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

drivers: sdma: Set watermark level for PDM

In order to enable PDM we need to use Multi-fifo support
and mcu_2_sai RAM script.

This script defines watermark level as follows:

r7 = Watermark
    bit0~11: watermark level(wml*fifo_number)
    bit15~12: to do-fifo number
    bit16~19: fifo offset
    bit27~24: sw done selector
    bit28~31: # audio channels in one frame, 0: 1 channel,1: 2 channels
    bit23: sw done enabled

Configuration parameters should come from DAI (PDM in our specific case)
but there is no easy way to forward such information so we just make
use of some default configuration, 4 fifos, 1 channel per fifo, sw done
enabled.

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

192d0ca... by Daniel Baluta <email address hidden>

platform: imx8m: dai: Set FIFO depth for PDM

On i.MX8MP PDM fifo has 32 entries (each with 4 bytes).

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

5c74b95... by Daniel Baluta <email address hidden>

drivers: imx: sdma: Enable multi-fifo script for micfil

MICFIL can support up to 8 channels. In order for this to work
we need to use multi-fifo script.

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

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

drivers: imx: sdma: Introduce new SDMA channel type

Based on this we select proper firmware in order to
support multi-fifo.

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