ASoC: Intel: Merge Baytrail ADSP suspend_noirq into suspend_late
authorJarkko Nikula <jarkko.nikula@linux.intel.com>
Mon, 11 Aug 2014 11:15:36 +0000 (14:15 +0300)
committerMark Brown <broonie@linaro.org>
Mon, 11 Aug 2014 12:40:23 +0000 (13:40 +0100)
commit27d3f02689cce5c4063a4f8dd88ce19d08a33fe6
tree09629de1ab39712f0cc59cf2adbbfee60537e204
parent9b11eb44eff7ede6bc3a94511cf9dfda75af9c9f
ASoC: Intel: Merge Baytrail ADSP suspend_noirq into suspend_late

Merge DSP reset and cleanup sequence in sst_byt_pcm_dev_suspend_noirq()
into sst_byt_pcm_dev_suspend_late(). First their order was wrong by first
unloading firmware modules in suspend_late and then taking DSP into reset
in suspend_noirq. Second ACPI has put device into OFF state already during
suspend_late so trying to reset the DSP is a no-op at suspend_noirq stage.

Fix these by moving DSP reset and cleanup into
sst_byt_pcm_dev_suspend_late() before firmware unloading.

Signed-off-by: Jarkko Nikula <jarkko.nikula@linux.intel.com>
Tested-by: Borun Fu <borun.fu@intel.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
sound/soc/intel/sst-baytrail-ipc.c
sound/soc/intel/sst-baytrail-ipc.h
sound/soc/intel/sst-baytrail-pcm.c