Skip to content

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

@miRoox

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