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?