diff mbox series

[3/4] ASoC: Intel: bdw-rt5677: Remove ignore_suspend flag from SSP0 dai link

Message ID 20200319204947.18963-4-cezary.rojewski@intel.com (mailing list archive)
State Accepted
Commit b0ada40cb80d7e427fb719a4e6029935639fa668
Headers show
Series ASoC: Intel: boards: Remove ignore_suspend flag from SSP0 dai link | expand

Commit Message

Cezary Rojewski March 19, 2020, 8:49 p.m. UTC
As of commit:
ASoC: soc-core: care .ignore_suspend for Component suspend

function soc-core::snd_soc_suspend no longer ignores 'ignore_suspend'
flag for dai links. While BE dai link for System Pin is
supposed to follow standard suspend-resume flow, appended
'ignore_suspend' flag disturbs that flow and causes audio to break
right after resume. Remove the flag to address this.

Cc: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Cc: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Cc: Dominik Brodowski <linux@dominikbrodowski.net>
Cc: Mark Brown <broonie@kernel.org>
Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>
---
 sound/soc/intel/boards/bdw-rt5677.c | 1 -
 1 file changed, 1 deletion(-)

Comments

Pierre-Louis Bossart March 19, 2020, 10:14 p.m. UTC | #1
On 3/19/20 3:49 PM, Cezary Rojewski wrote:
> As of commit:
> ASoC: soc-core: care .ignore_suspend for Component suspend
> 
> function soc-core::snd_soc_suspend no longer ignores 'ignore_suspend'
> flag for dai links. While BE dai link for System Pin is
> supposed to follow standard suspend-resume flow, appended
> 'ignore_suspend' flag disturbs that flow and causes audio to break
> right after resume. Remove the flag to address this.
> 
> Cc: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
> Cc: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
> Cc: Dominik Brodowski <linux@dominikbrodowski.net>
> Cc: Mark Brown <broonie@kernel.org>
> Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>

we should ask Ben and Curtis @ Google if the changes related to suspend 
interfere with the wake-on-voice support?

Btw the .ignore_suspend is also set in bytcr_rt5640/51 drivers, so 
wondering if additional devices are broken, or if there's something off 
about Broadwell in general. Hans, have you heard of any regressions on 
Baytrail devices?

> ---
>   sound/soc/intel/boards/bdw-rt5677.c | 1 -
>   1 file changed, 1 deletion(-)
> 
> diff --git a/sound/soc/intel/boards/bdw-rt5677.c b/sound/soc/intel/boards/bdw-rt5677.c
> index a94f498388e1..713ef48b36a8 100644
> --- a/sound/soc/intel/boards/bdw-rt5677.c
> +++ b/sound/soc/intel/boards/bdw-rt5677.c
> @@ -343,7 +343,6 @@ static struct snd_soc_dai_link bdw_rt5677_dais[] = {
>   		.no_pcm = 1,
>   		.dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
>   			SND_SOC_DAIFMT_CBS_CFS,
> -		.ignore_suspend = 1,
>   		.ignore_pmdown_time = 1,
>   		.be_hw_params_fixup = broadwell_ssp0_fixup,
>   		.ops = &bdw_rt5677_ops,
>
Curtis Malainey March 19, 2020, 10:43 p.m. UTC | #2
On Thu, Mar 19, 2020 at 3:15 PM Pierre-Louis Bossart
<pierre-louis.bossart@linux.intel.com> wrote:
>
>
>
> On 3/19/20 3:49 PM, Cezary Rojewski wrote:
> > As of commit:
> > ASoC: soc-core: care .ignore_suspend for Component suspend
> >
> > function soc-core::snd_soc_suspend no longer ignores 'ignore_suspend'
> > flag for dai links. While BE dai link for System Pin is
> > supposed to follow standard suspend-resume flow, appended
> > 'ignore_suspend' flag disturbs that flow and causes audio to break
> > right after resume. Remove the flag to address this.
> >
> > Cc: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
> > Cc: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
> > Cc: Dominik Brodowski <linux@dominikbrodowski.net>
> > Cc: Mark Brown <broonie@kernel.org>
> > Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>
>
> we should ask Ben and Curtis @ Google if the changes related to suspend
> interfere with the wake-on-voice support?

I have a samus with me so I can test it but my backlog is definitely
growing due to WFH slowness. I will see if I can take a look tomorrow.
Cezary Rojewski March 25, 2020, 1:28 p.m. UTC | #3
On 2020-03-19 23:43, Curtis Malainey wrote:
> On Thu, Mar 19, 2020 at 3:15 PM Pierre-Louis Bossart
> <pierre-louis.bossart@linux.intel.com> wrote:
>> On 3/19/20 3:49 PM, Cezary Rojewski wrote:
>>> As of commit:
>>> ASoC: soc-core: care .ignore_suspend for Component suspend
>>>
>>> function soc-core::snd_soc_suspend no longer ignores 'ignore_suspend'
>>> flag for dai links. While BE dai link for System Pin is
>>> supposed to follow standard suspend-resume flow, appended
>>> 'ignore_suspend' flag disturbs that flow and causes audio to break
>>> right after resume. Remove the flag to address this.
>>>
>>> Cc: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
>>> Cc: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
>>> Cc: Dominik Brodowski <linux@dominikbrodowski.net>
>>> Cc: Mark Brown <broonie@kernel.org>
>>> Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>
>>
>> we should ask Ben and Curtis @ Google if the changes related to suspend
>> interfere with the wake-on-voice support?
> 
> I have a samus with me so I can test it but my backlog is definitely
> growing due to WFH slowness. I will see if I can take a look tomorrow.
> 

Any update?

Maybe let's leave bdw-rt5650/ bdw-rt5677 behind so people have more time 
to test and merge just the broadwell & haswell part. Hmm?
Pierre-Louis Bossart March 25, 2020, 2:42 p.m. UTC | #4
On 3/25/20 8:28 AM, Cezary Rojewski wrote:
> On 2020-03-19 23:43, Curtis Malainey wrote:
>> On Thu, Mar 19, 2020 at 3:15 PM Pierre-Louis Bossart
>> <pierre-louis.bossart@linux.intel.com> wrote:
>>> On 3/19/20 3:49 PM, Cezary Rojewski wrote:
>>>> As of commit:
>>>> ASoC: soc-core: care .ignore_suspend for Component suspend
>>>>
>>>> function soc-core::snd_soc_suspend no longer ignores 'ignore_suspend'
>>>> flag for dai links. While BE dai link for System Pin is
>>>> supposed to follow standard suspend-resume flow, appended
>>>> 'ignore_suspend' flag disturbs that flow and causes audio to break
>>>> right after resume. Remove the flag to address this.
>>>>
>>>> Cc: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
>>>> Cc: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
>>>> Cc: Dominik Brodowski <linux@dominikbrodowski.net>
>>>> Cc: Mark Brown <broonie@kernel.org>
>>>> Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>
>>>
>>> we should ask Ben and Curtis @ Google if the changes related to suspend
>>> interfere with the wake-on-voice support?
>>
>> I have a samus with me so I can test it but my backlog is definitely
>> growing due to WFH slowness. I will see if I can take a look tomorrow.
>>
> 
> Any update?
> 
> Maybe let's leave bdw-rt5650/ bdw-rt5677 behind so people have more time 
> to test and merge just the broadwell & haswell part. Hmm?

Can you give us a bit more time (couple of days tops)? we also see a 
problem with SOF when playing after suspend-resume, and I just thought 
this might be related to the same issue.
Hans de Goede March 30, 2020, 9:39 p.m. UTC | #5
Hi,

On 3/19/20 11:14 PM, Pierre-Louis Bossart wrote:
> 
> 
> On 3/19/20 3:49 PM, Cezary Rojewski wrote:
>> As of commit:
>> ASoC: soc-core: care .ignore_suspend for Component suspend
>>
>> function soc-core::snd_soc_suspend no longer ignores 'ignore_suspend'
>> flag for dai links. While BE dai link for System Pin is
>> supposed to follow standard suspend-resume flow, appended
>> 'ignore_suspend' flag disturbs that flow and causes audio to break
>> right after resume. Remove the flag to address this.
>>
>> Cc: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
>> Cc: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
>> Cc: Dominik Brodowski <linux@dominikbrodowski.net>
>> Cc: Mark Brown <broonie@kernel.org>
>> Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>
> 
> we should ask Ben and Curtis @ Google if the changes related to suspend interfere with the wake-on-voice support?
> 
> Btw the .ignore_suspend is also set in bytcr_rt5640/51 drivers, so wondering if additional devices are broken, or if there's something off about Broadwell in general. Hans, have you heard of any regressions on Baytrail devices?

I've just tested 5.6.0 on Bay Trail + a rt5651 codec,
using the bytcr_rt5651 machine driver which sets
ignore_suspend, as well as on a Cherry Trail + rt5645
device using the chtrt5645 machine driver which does
_not_ set ignore suspend.

Suspend/resume work fine on both and music playing
before suspend continues playing after suspend.

Note that the bytcr_rt5651 machine driver also does:

         snd_soc_dapm_ignore_suspend(&card->dapm, "Headphone");
         snd_soc_dapm_ignore_suspend(&card->dapm, "Speaker");

Which the bdw-rt5677 seems to not do...

Regards,

Hans


> 
>> ---
>>   sound/soc/intel/boards/bdw-rt5677.c | 1 -
>>   1 file changed, 1 deletion(-)
>>
>> diff --git a/sound/soc/intel/boards/bdw-rt5677.c b/sound/soc/intel/boards/bdw-rt5677.c
>> index a94f498388e1..713ef48b36a8 100644
>> --- a/sound/soc/intel/boards/bdw-rt5677.c
>> +++ b/sound/soc/intel/boards/bdw-rt5677.c
>> @@ -343,7 +343,6 @@ static struct snd_soc_dai_link bdw_rt5677_dais[] = {
>>           .no_pcm = 1,
>>           .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
>>               SND_SOC_DAIFMT_CBS_CFS,
>> -        .ignore_suspend = 1,
>>           .ignore_pmdown_time = 1,
>>           .be_hw_params_fixup = broadwell_ssp0_fixup,
>>           .ops = &bdw_rt5677_ops,
>>
>
Pierre-Louis Bossart March 30, 2020, 11:49 p.m. UTC | #6
>> Btw the .ignore_suspend is also set in bytcr_rt5640/51 drivers, so 
>> wondering if additional devices are broken, or if there's something 
>> off about Broadwell in general. Hans, have you heard of any 
>> regressions on Baytrail devices?
> 
> I've just tested 5.6.0 on Bay Trail + a rt5651 codec,
> using the bytcr_rt5651 machine driver which sets
> ignore_suspend, as well as on a Cherry Trail + rt5645
> device using the chtrt5645 machine driver which does
> _not_ set ignore suspend.
> 
> Suspend/resume work fine on both and music playing
> before suspend continues playing after suspend.

Thanks for testing Hans.

I think we should remove those .ignore_suspend from all 
Baytrail/Cherrytrail drivers, no one ever enabled advanced power 
management except in very specific Android distributions that are no 
longer maintained.
> 
> Note that the bytcr_rt5651 machine driver also does:
> 
>          snd_soc_dapm_ignore_suspend(&card->dapm, "Headphone");
>          snd_soc_dapm_ignore_suspend(&card->dapm, "Speaker");
> 
> Which the bdw-rt5677 seems to not do...


On the bytcr_rt5661, these two lines were added in the initial code in 
2016, and it's also part of the legacy byt-rt5640, so it's likely a 
copy/paste more than a feature added on purpose.
Cezary Rojewski March 31, 2020, 10:28 a.m. UTC | #7
On 2020-03-30 23:39, Hans de Goede wrote:
> Hi,
> 
>> On 3/19/20 11:14 PM, Pierre-Louis Bossart wrote:
>>
>> we should ask Ben and Curtis @ Google if the changes related to 
>> suspend interfere with the wake-on-voice support?
>>
>> Btw the .ignore_suspend is also set in bytcr_rt5640/51 drivers, so 
>> wondering if additional devices are broken, or if there's something 
>> off about Broadwell in general. Hans, have you heard of any 
>> regressions on Baytrail devices?
> 
> I've just tested 5.6.0 on Bay Trail + a rt5651 codec,
> using the bytcr_rt5651 machine driver which sets
> ignore_suspend, as well as on a Cherry Trail + rt5645
> device using the chtrt5645 machine driver which does
> _not_ set ignore suspend.
> 
> Suspend/resume work fine on both and music playing
> before suspend continues playing after suspend.
> 
> Note that the bytcr_rt5651 machine driver also does:
> 
>          snd_soc_dapm_ignore_suspend(&card->dapm, "Headphone");
>          snd_soc_dapm_ignore_suspend(&card->dapm, "Speaker");
> 
> Which the bdw-rt5677 seems to not do...
> 
> Regards,
> 
> Hans
> 

Thanks for your report Hans!

As all streams (whether that's playback routed through Headphones or 
Speaker, or capture) were connected to SSP0 dai link, there is a 
question to be raised: Is Capture path needed to be up during suspend 
for broadwell solutions?

Guess these two lines you mentioned above have the exact same impact on 
playback as complete .ignore_suspend flag removal from SSP0 dai link.

Don't believe WoV for WPT has been added for SST linux so 
.ignore_suspend=1 achieves nothing. The offload part is probably just 
limited to bigger buffer size compared to system pin than anything else. 
So, nothing prevents from removing .ignore_suspend for SST solutions 
until WoV is verified. Don't know about SOF side.
Pierre, what's your take on this?

Czarek
Pierre-Louis Bossart March 31, 2020, 10:54 a.m. UTC | #8
> Don't believe WoV for WPT has been added for SST linux so 
> .ignore_suspend=1 achieves nothing. The offload part is probably just 
> limited to bigger buffer size compared to system pin than anything else. 
> So, nothing prevents from removing .ignore_suspend for SST solutions 
> until WoV is verified. Don't know about SOF side.
> Pierre, what's your take on this?

I think on Baytrail and Broadwell we will most likely never enable 
hotwording on the Intel DSP, and S0i1-Playback isn't planned either.

However hotwording is enabled on the RT5677 and there may be clocking 
dependencies so that the RT5677 remains operational - at least the mclk 
needs to be on, so the bdw-rt5677 case probably needs more work.

While I am at it, I think the notion of .ignore_suspend has an 
assumption baked in. It will work if the only suspend mode is S0i1. If 
the platform can choose between S0i1 and S3, then we would still want to 
suspend all paths in S3, which currently isn't really possible.
Hans de Goede March 31, 2020, 12:12 p.m. UTC | #9
Hi,

On 3/31/20 12:54 PM, Pierre-Louis Bossart wrote:
> 
>> Don't believe WoV for WPT has been added for SST linux so .ignore_suspend=1 achieves nothing. The offload part is probably just limited to bigger buffer size compared to system pin than anything else. So, nothing prevents from removing .ignore_suspend for SST solutions until WoV is verified. Don't know about SOF side.
>> Pierre, what's your take on this?
> 
> I think on Baytrail and Broadwell we will most likely never enable hotwording on the Intel DSP, and S0i1-Playback isn't planned either.
> 
> However hotwording is enabled on the RT5677 and there may be clocking dependencies so that the RT5677 remains operational - at least the mclk needs to be on, so the bdw-rt5677 case probably needs more work.
> 
> While I am at it, I think the notion of .ignore_suspend has an assumption baked in. It will work if the only suspend mode is S0i1. If the platform can choose between S0i1 and S3, then we would still want to suspend all paths in S3, which currently isn't really possible.

You can check if S0i1 will be used by using:

pm_suspend_default_s2idle()

If this returns true then S0i1 will be used, otherwise S3.

This is defined in kernel/power/suspend.c and always build, so it
should be ok to also use this in non x86 specific code-paths
(it will simply always return false there I believe).

Regards,

Hans
Hans de Goede March 31, 2020, 12:15 p.m. UTC | #10
Hi,

On 3/31/20 1:49 AM, Pierre-Louis Bossart wrote:
> 
>>> Btw the .ignore_suspend is also set in bytcr_rt5640/51 drivers, so wondering if additional devices are broken, or if there's something off about Broadwell in general. Hans, have you heard of any regressions on Baytrail devices?
>>
>> I've just tested 5.6.0 on Bay Trail + a rt5651 codec,
>> using the bytcr_rt5651 machine driver which sets
>> ignore_suspend, as well as on a Cherry Trail + rt5645
>> device using the chtrt5645 machine driver which does
>> _not_ set ignore suspend.
>>
>> Suspend/resume work fine on both and music playing
>> before suspend continues playing after suspend.
> 
> Thanks for testing Hans.
> 
> I think we should remove those .ignore_suspend from all Baytrail/Cherrytrail drivers, no one ever enabled advanced power management except in very specific Android distributions that are no longer maintained.

I agree, I believe I even submitted patches for that a couple
of years ago, but back then I think there was still some
hope to get S0i1 playback to work so the patches where
not accepted.

>> Note that the bytcr_rt5651 machine driver also does:
>>
>>          snd_soc_dapm_ignore_suspend(&card->dapm, "Headphone");
>>          snd_soc_dapm_ignore_suspend(&card->dapm, "Speaker");
>>
>> Which the bdw-rt5677 seems to not do...
> 
> 
> On the bytcr_rt5661, these two lines were added in the initial code in 2016, and it's also part of the legacy byt-rt5640, so it's likely a copy/paste more than a feature added on purpose.

Could be, we should probably also drop those 2 calls together
with dropping the setting of the ignore_suspend flag.

Regards,

Hans
Pierre-Louis Bossart March 31, 2020, 12:15 p.m. UTC | #11
On 3/31/20 7:12 AM, Hans de Goede wrote:
> Hi,
> 
> On 3/31/20 12:54 PM, Pierre-Louis Bossart wrote:
>>
>>> Don't believe WoV for WPT has been added for SST linux so 
>>> .ignore_suspend=1 achieves nothing. The offload part is probably just 
>>> limited to bigger buffer size compared to system pin than anything 
>>> else. So, nothing prevents from removing .ignore_suspend for SST 
>>> solutions until WoV is verified. Don't know about SOF side.
>>> Pierre, what's your take on this?
>>
>> I think on Baytrail and Broadwell we will most likely never enable 
>> hotwording on the Intel DSP, and S0i1-Playback isn't planned either.
>>
>> However hotwording is enabled on the RT5677 and there may be clocking 
>> dependencies so that the RT5677 remains operational - at least the 
>> mclk needs to be on, so the bdw-rt5677 case probably needs more work.
>>
>> While I am at it, I think the notion of .ignore_suspend has an 
>> assumption baked in. It will work if the only suspend mode is S0i1. If 
>> the platform can choose between S0i1 and S3, then we would still want 
>> to suspend all paths in S3, which currently isn't really possible.
> 
> You can check if S0i1 will be used by using:
> 
> pm_suspend_default_s2idle()
> 
> If this returns true then S0i1 will be used, otherwise S3.
> 
> This is defined in kernel/power/suspend.c and always build, so it
> should be ok to also use this in non x86 specific code-paths
> (it will simply always return false there I believe).

Yes, but what I meant is that when the target is S3, we have no way of 
disabling those .ignore_suspend that were added for S0i1 usages.
Hans de Goede April 5, 2020, 6:10 p.m. UTC | #12
Hi,

On 3/30/20 11:39 PM, Hans de Goede wrote:
> Hi,
> 
> On 3/19/20 11:14 PM, Pierre-Louis Bossart wrote:
>>
>>
>> On 3/19/20 3:49 PM, Cezary Rojewski wrote:
>>> As of commit:
>>> ASoC: soc-core: care .ignore_suspend for Component suspend
>>>
>>> function soc-core::snd_soc_suspend no longer ignores 'ignore_suspend'
>>> flag for dai links. While BE dai link for System Pin is
>>> supposed to follow standard suspend-resume flow, appended
>>> 'ignore_suspend' flag disturbs that flow and causes audio to break
>>> right after resume. Remove the flag to address this.
>>>
>>> Cc: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
>>> Cc: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
>>> Cc: Dominik Brodowski <linux@dominikbrodowski.net>
>>> Cc: Mark Brown <broonie@kernel.org>
>>> Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>
>>
>> we should ask Ben and Curtis @ Google if the changes related to suspend interfere with the wake-on-voice support?
>>
>> Btw the .ignore_suspend is also set in bytcr_rt5640/51 drivers, so wondering if additional devices are broken, or if there's something off about Broadwell in general. Hans, have you heard of any regressions on Baytrail devices?
> 
> I've just tested 5.6.0 on Bay Trail + a rt5651 codec,
> using the bytcr_rt5651 machine driver which sets
> ignore_suspend, as well as on a Cherry Trail + rt5645
> device using the chtrt5645 machine driver which does
> _not_ set ignore suspend.
> 
> Suspend/resume work fine on both and music playing
> before suspend continues playing after suspend.
> 
> Note that the bytcr_rt5651 machine driver also does:
> 
>          snd_soc_dapm_ignore_suspend(&card->dapm, "Headphone");
>          snd_soc_dapm_ignore_suspend(&card->dapm, "Speaker");
> 
> Which the bdw-rt5677 seems to not do...

I just noticed something which is somewhat related to this
discussion (and also somewhat off topic).

I just noticed on a Bay Trail device with a RT5672 codec
and on a Cherry Trail device with a RT5645 codec that
if an input / recording audio stream is active while
suspending the tablet, then after resume audio is broken,
playback seems to work (audio samples get consumed at normal
speed) but it is silent.  Recording also is broken, not
sure if it is broken, or just silent too.

When this happens, closing all apps which consume audio
and waiting 5 seconds for a runtime-suspend to kick in
fixes things. After this both record and playback
works again.

Any idea what the cause for this problem might be?

I can reproduce this in 2 ways:

1. Have the sound capplet of GNOME's control-panel
open, this shows a VU meter for the default audio
input, this VU meter stops working after a suspend
resume and playback also stops working if a suspend/resume
is done with the VU meter active when suspending.

2. Start a sound recording in gnome-sound-recorder
and then suspend + resume.

Regards,

Hans
Pierre-Louis Bossart April 5, 2020, 11:11 p.m. UTC | #13
> 
> I just noticed something which is somewhat related to this
> discussion (and also somewhat off topic).
> 
> I just noticed on a Bay Trail device with a RT5672 codec
> and on a Cherry Trail device with a RT5645 codec that
> if an input / recording audio stream is active while
> suspending the tablet, then after resume audio is broken,
> playback seems to work (audio samples get consumed at normal
> speed) but it is silent.  Recording also is broken, not
> sure if it is broken, or just silent too.
> 
> When this happens, closing all apps which consume audio
> and waiting 5 seconds for a runtime-suspend to kick in
> fixes things. After this both record and playback
> works again.
> 
> Any idea what the cause for this problem might be?

Power management for the Atom/sst stuff is far from clear for me, it 
uses .prepare/.complete callbacks where 
snd_soc_suspend()/poweroff()/resume() are invoked, so there's a bit of 
confusion IMO between that the framework does and what the driver should do.

It's also unclear to me why the INFO_RESUME flag was set, since the 
driver cannot restart from the same position.

I would try and triangulate with the more traditional bytcr-rt5640, to 
rule out a codec-specific or machine driver issue (handling of rt5645 
and 5672 was done by different people and the machine driver is quite 
different).

I would also remove the INFO_RESUME, that will force the ALSA core to 
call the .prepare steps and maybe restore settings that are not applied 
with the current resume.

Either way, it's a bit of a shot in the dark :-(

My 2 cents
-Pierre
diff mbox series

Patch

diff --git a/sound/soc/intel/boards/bdw-rt5677.c b/sound/soc/intel/boards/bdw-rt5677.c
index a94f498388e1..713ef48b36a8 100644
--- a/sound/soc/intel/boards/bdw-rt5677.c
+++ b/sound/soc/intel/boards/bdw-rt5677.c
@@ -343,7 +343,6 @@  static struct snd_soc_dai_link bdw_rt5677_dais[] = {
 		.no_pcm = 1,
 		.dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
 			SND_SOC_DAIFMT_CBS_CFS,
-		.ignore_suspend = 1,
 		.ignore_pmdown_time = 1,
 		.be_hw_params_fixup = broadwell_ssp0_fixup,
 		.ops = &bdw_rt5677_ops,