MLK-23570i fsl: fsl_dsp: Fix dsp suspend issue on imx.mp board

1. Add check pm runtime state to decide send suspend msg to dsp when
call fsl_dsp_suspend.
2. Set proxy->dsp_mu_init be zero in fsl_dsp_suspend for imx.mp.

Signed-off-by: Zhang Peng <peng_zhang_8@nxp.com>
(cherry picked from commit 10abba22b3)
This commit is contained in:
Zhang Peng 2020-03-11 13:58:48 +08:00
parent 7867389eae
commit 98bba4c56d
1 changed files with 5 additions and 1 deletions

View File

@ -1258,13 +1258,17 @@ static int fsl_dsp_suspend(struct device *dev)
struct xf_proxy *proxy = &dsp_priv->proxy;
int ret = 0;
if (proxy->is_ready) {
if (proxy->is_ready & pm_runtime_active(dev)) {
ret = xf_cmd_send_suspend(proxy);
if (ret) {
dev_err(dev, "dsp suspend fail\n");
return ret;
}
}
if (dsp_priv->dsp_board_type == DSP_IMX8MP_TYPE) {
dsp_priv->dsp_mu_init = 0;
proxy->is_ready = 0;
}
ret = pm_runtime_force_suspend(dev);