[PATCH 1/2] ASoC: SOF: Fix "no reply expected" error during firmware-boot

Hans de Goede hdegoede at redhat.com
Fri Apr 3 10:01:06 CEST 2020


Hi,

On 4/2/20 9:15 PM, Pierre-Louis Bossart wrote:
> 
> 
> On 4/2/20 1:49 PM, Hans de Goede wrote:
>> 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.
> 
> What kernel are you using Hans? I thought this was solved with

5.6.0

> 8354d9b44530b ("ASoC: SOF: Intel: hda-loader: clear the IPC ack bit after FW_PURGE done") >
> Set DONE bit after the FW_PURGE IPC is polled successfully, to clear the
> interrupt and avoid the arrival of the confusing unexpected ipc.

That commit is not in Torvald's tree yet, but it is in
broonie/sound.git, I've cherry picked it into my local tree
and reverted my own fix.

Unfortunately even with that patch cherry picked the errors my
patch silences still happen.

Regards,

Hans



>> 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 at 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);
>>
> 



More information about the Alsa-devel mailing list