From ea717729511d5ce7e78041eb05928f11861a03af Mon Sep 17 00:00:00 2001 From: Ranjani Sridharan Date: Wed, 5 Dec 2018 08:24:51 -0800 Subject: [PATCH] ASoC: SOF: remove duplicate controller reset for HDA platforms For HDA platforms, hda_dsp_ctrl_init_chip() does a full controller reset. So move the duplicate controller reset calls that were added for non-HDA platforms into the else block. This should fix the failures seen with suspend/resume stress tests on GLK. Signed-off-by: Ranjani Sridharan --- sound/soc/sof/intel/hda-dsp.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sound/soc/sof/intel/hda-dsp.c b/sound/soc/sof/intel/hda-dsp.c index 7ae95644a784e6..d5975795fa791b 100644 --- a/sound/soc/sof/intel/hda-dsp.c +++ b/sound/soc/sof/intel/hda-dsp.c @@ -338,7 +338,7 @@ static int hda_resume(struct snd_sof_dev *sdev) /* enable ppcap interrupt */ snd_hdac_ext_bus_ppcap_enable(bus, true); snd_hdac_ext_bus_ppcap_int_enable(bus, true); -#endif +#else /* reset controller */ ret = hda_dsp_ctrl_link_reset(sdev, true); @@ -355,6 +355,7 @@ static int hda_resume(struct snd_sof_dev *sdev) "error: failed to ready controller during resume\n"); return ret; } +#endif /* power up the DSP */ ret = hda_dsp_core_power_up(sdev, chip->cores_mask);