At least on Canon Lake each time the SOF firmware is booted, the following error is logged in dmesg:
[ 36.711803] sof-audio-pci 0000:00:1f.3: error: no reply expected, received 0x0
Since the DSP is powered down when not in used this happens everytime e.g. a notification plays, polluting dmesg with these false-positive errors.
Add a check to snd_sof_ipc_reply() which makes it return success when receiving an unexpected msg_id 0 during fw-boot, fixing these false-positive errors being logged.
Signed-off-by: Hans de Goede hdegoede@redhat.com --- sound/soc/sof/ipc.c | 5 +++++ 1 file changed, 5 insertions(+)
diff --git a/sound/soc/sof/ipc.c b/sound/soc/sof/ipc.c index 78aa1da7c7a9..7303b3d42f12 100644 --- a/sound/soc/sof/ipc.c +++ b/sound/soc/sof/ipc.c @@ -312,6 +312,11 @@ int snd_sof_ipc_reply(struct snd_sof_dev *sdev, u32 msg_id) { struct snd_sof_ipc_msg *msg = &sdev->ipc->msg;
+ /* Ignore msg_id 0 being send during fw-boot */ + if (msg->ipc_complete && sdev->fw_state == SOF_FW_BOOT_IN_PROGRESS && + msg_id == 0) + return 0; + if (msg->ipc_complete) { dev_err(sdev->dev, "error: no reply expected, received 0x%x", msg_id);