On Thu, 2019-06-06 at 13:06 +0300, Dragos Tarcatu wrote:
On 06.06.2019 11:55, Liam Girdwood wrote:
On Thu, 2019-06-06 at 09:39 +0300, Dragos Tarcatu wrote:
Hi Kai,
Thanks for the hint!
On 05.06.2019 14:29, Kai Vehmanen wrote:
[ 3.070623] sof-audio-acpi 80860F28:00: booting DSP
firmware [ 3.172697] sof-audio-acpi 80860F28:00: error: firmware boot failure [ 3.176674] sof-audio-acpi 80860F28:00: error: unexpected fault 0x70028800 trace 0x00000000
First a simple test to do is to increase the boot timeout in driver loader.c:
» ret = wait_event_timeout(sdev->boot_wait, sdev-
boot_complete,
» » » » msecs_to_jiffies(sdev-
boot_timeout));
I did hit occasionally that the DSP-side QEMU was too slow to respond and simply bumping this timeout help.
Indeed, after increasing the values for the default ipc and boot timeouts (TIMEOUT_DEFAULT_IPC_MS, TIMEOUT_DEFAULT_BOOT_MS, IPC_TIMEOUT_MS) I got it it to boot. I'm still getting errors when loading the topology, though:
Are the topology loading errors always at the same place or does it vary on each attempt ?
I've ran it several times now, and I haven't got PCM0P to load:
[ 7.608994] sof-audio-acpi 80860F28:00: loading topology:intel/sof-tplg/sof-byt-nocodec.tplg [ 7.634153] sof-audio-acpi 80860F28:00: Topology: ABI 3:7:0 Kernel ABI 3:7:0 [ 7.634156] sof-audio-acpi 80860F28:00: ASoC: adding 11 DAPM widgets [ 7.634157] sof-audio-acpi 80860F28:00: ASoC: creating DAPM widget codec_out0 id 1 [ 7.634162] sof-audio-acpi 80860F28:00: tplg: ready widget id 0 pipe 1 type 1 name : codec_out0 stream none [ 7.634170] sof-audio-acpi 80860F28:00: warning: widget type 1 name codec_out0 not handled [ 7.634172] sof-audio-acpi 80860F28:00: ASoC: creating DAPM widget PCM0P id 11 [ 7.634175] sof-audio-acpi 80860F28:00: tplg: ready widget id 1 pipe 1 type 23 name : PCM0P stream Low Latency Playback 0 [ 7.634177] sof-audio-acpi 80860F28:00: loaded host PCM0P [ 7.634178] sof-audio-acpi 80860F28:00: config: periods snk 2 src 0 fmt 0 [ 7.635249] sof-audio-acpi 80860F28:00: ipc tx: 0x30010000: GLB_TPLG_MSG: COMP_NEW [ 10.661694] sof-audio-acpi 80860F28:00: error: ipc timed out for 0x30010000 size 76 [ 10.665895] sof-audio-acpi 80860F28:00: error: unexpected fault 0x70028800 trace 0x00000000 [ 10.666200] sof-audio-acpi 80860F28:00: error: DSP failed to add widget id 0 type 23 name : PCM0P stream Low Latency Playback 0 reply 0 [ 10.666534] sof-audio-acpi 80860F28:00: ASoC: failed to load widget PCM0P [ 10.666783] sof-audio-acpi 80860F28:00: error: tplg component load failed -110 [ 10.667079] sof-audio-acpi 80860F28:00: error: failed to load DSP topology -22 [ 10.667321] sof-audio-acpi 80860F28:00: ASoC: failed to probe component -22 [ 10.667562] sof-nocodec sof-nocodec: ASoC: failed to instantiate card -22
Btw, what kernel version are you using. Recent version of sof-dev branch will print out additional debug for IPC timeouts.
I'm on top of sof-dev, but in my previous log I had the verbose IPC logging option off. I'm currently running with the timeout values set to:
core.c: #define TIMEOUT_DEFAULT_IPC_MS 3000 #define TIMEOUT_DEFAULT_BOOT_MS 10000
ipc.c: #define IPC_TIMEOUT_MS 3000
Those seem like pretty high values for me, compared to the initial ones, but I'll try to increase those even more - maybe that fixes it.
Ok, I'm suspicious here that we have hit a regression on the host qemu side. This previously worked and would load the whole topology and allow playback capture to/from file.
Fwiw, CI currently only tests the FW DSP qemu side (to FW boot today) and is not testing the host side yet. Xiuli will be working on adding host side qemu to the CI but I dont think he's started yet.
Can you add this to the bug tracker and we can resolve.
Thanks
Liam
Dragoș