Re: [PATCH AUTOSEL 5.7 055/388] ASoC: SOF: Do nothing when DSP PM callbacks are not set

Pierre-Louis Bossart
2020-06-18T14:56:33Z

On 6/18/20 6:44 AM, Daniel Baluta wrote:
> On 6/18/20 2:01 PM, Mark Brown wrote:
>> On Wed, Jun 17, 2020 at 09:02:32PM -0400, Sasha Levin wrote:
>>> From: Daniel Baluta <daniel.baluta@nxp.com>
>>>
>>> [ Upstream commit c26fde3b15ed41f5f452f1da727795f787833287 ]
>>>
>>> This provides a better separation between runtime and PM sleep
>>> callbacks.
>>>
>>> Only do nothing if given runtime flag is set and calback is not set.
>>>
>>> With the current implementation, if PM sleep callback is set but runtime
>>> callback is not set then at runtime resume we reload the firmware even
>>> if we do not support runtime resume callback.
>> This doesn't look like a bugfix, just an optimization?
>
> Indeed can be seen as an optimization, but it does unexpected things
> which can cause trouble
>
> and weird behavior for people not familiar with the matter.
>
> For example, as explained in the commit message if you only provide
>
> System PM handler but not runtime PM handler, then the DSP will be resetted
>
> even if this is not the intention.

I think it's a bug fix for Intel legacy platforms (Baytrail, Broadwell)
where runtime_pm isn't supported. However the additional fixes for
system suspend/resume were only provided for 5.8, so this patch in
isolation will not do much for those platforms. Put differently, even if
this patch is applied to 5.7 suspend/resume would still not work for
Baytrail/Broadwell.
Daniel, your call if you need this for i.MX?