Skip to content

[BUG] FW reported error: 3018 - Unknown for 0xe070000|0x0 (GLB_CHAIN_DMA) when pause-release on TGLU_UP_HDA #6975

Description

@miRoox

Describe the bug
After we enabled Chain DMA on TGL (#6656), pause-release on playback failed at the first round on TGLU_UP_HDA + IPC4.

To Reproduce

TPLG=/lib/firmware/intel/avs-tplg/sof-hda-generic.tplg MODEL=TGLU_UP_HDA_IPC4ZPH ~/sof-test/test-case/check-pause-resume.sh -c 2 -m playback

Reproduction Rate
100%

Environment

  1. Branch name and commit hash of the 2 repositories: sof (firmware/topology) and linux (kernel driver).
  2. Name of the topology file
    • Topology: avs-tplg/sof-hda-generic.tplg
  3. Name of the platform(s) on which the bug is observed.
    • Platform: TGLU_UP_HDA

Screenshots or console output

console output

2023-01-19 22:05:22 UTC [REMOTE_INFO] Entering expect script with:
aplay -D hw:0,3 -r 48000 -c 2 -f S16_LE -vv -i /dev/zero -q
spawn aplay -D hw:0,3 -r 48000 -c 2 -f S16_LE -vv -i /dev/zero -q
Hardware PCM card 0 'sof-hda-dsp' device 3 subdevice 0
Its setup is:
stream : PLAYBACK
access : RW_INTERLEAVED
format : S16_LE
subformat : STD
channels : 2
rate : 48000
exact rate : 48000 (48000/1)
msbits : 16
buffer_size : 16384
period_size : 4096
period_time : 85333
tstamp_mode : NONE
tstamp_type : MONOTONIC
period_step : 1
avail_min : 4096
period_event : 0
start_threshold : 16384
stop_threshold : 16384
silence_threshold: 0
silence_size : 0
boundary : 4611686018427387904
appl_ptr : 0
hw_ptr : 0
#+ | 00%
(1/100) Wait for 181 ms before pause
#+ | 00%
#+ | 00% #+ | 00%
=== PAUSE === (1/100) Wait for 121 ms before pause
(1/100) Wait for 117 ms before resume
aplay: do_pause:1581: pause release error: Invalid argument

dmesg

[ 1963.821199] kernel: snd_sof:sof_ipc4_trigger_pipelines: sof-audio-pci-intel-tgl 0000:00:1f.3: trigger cmd: 4 state: 4
[ 1963.821206] kernel: snd_sof:sof_ipc4_log_header: sof-audio-pci-intel-tgl 0000:00:1f.3: ipc tx : 0xe070000|0x0: GLB_CHAIN_DMA
[ 1963.821490] kernel: snd_sof:sof_ipc4_log_header: sof-audio-pci-intel-tgl 0000:00:1f.3: ipc tx reply: 0x2e000bca|0x0: GLB_CHAIN_DMA
[ 1963.821496] kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: FW reported error: 3018 - Unknown
[ 1963.822480] kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ipc error for msg 0xe070000|0x0
[ 1963.822486] kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at soc_component_trigger on 0000:00:1f.3: -22
[ 1963.822491] kernel: HDMI1: ASoC: trigger FE cmd: 4 failed: -22

mtrace

[ 0.225861] <inf> ipc: rx	: 0xe070000|0x0
[ 0.225878] <inf> chain_dma: comp:128 0x800000 chain_task_start(), host_dma_id = 0x00000000
[ 0.225886] <err> chain_dma: comp:128 0x800000 chain_task_start(), bad state transition
[ 0.225893] <err> ipc: ipc4: FW_GEN_MSG failed with err 3018

full dmesg.txt
full mtrace.txt

Metadata

Metadata

Labels

IPC errorIPC error is observedIPC4Issues observed with IPC4 (same IPC as Windows)P1Blocker bugs or important featuresTGLApplies to Tiger LakebugSomething isn't working as expected

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions