summaryrefslogtreecommitdiffstats
path: root/sound/soc/sof
diff options
context:
space:
mode:
authorPierre-Louis Bossart2019-06-03 18:20:27 +0200
committerMark Brown2019-06-03 18:48:23 +0200
commitddbe9223393e4d067f010de65a05c9a6cb7790c1 (patch)
treead9b98775d6401719871837ae783bba5887053df /sound/soc/sof
parentASoC: SOF: Intel: cnl-ipc: read all IPC registers first (diff)
downloadkernel-qcow2-linux-ddbe9223393e4d067f010de65a05c9a6cb7790c1.tar.gz
kernel-qcow2-linux-ddbe9223393e4d067f010de65a05c9a6cb7790c1.tar.xz
kernel-qcow2-linux-ddbe9223393e4d067f010de65a05c9a6cb7790c1.zip
ASoC: SOF: Intel: cnl-ipc: move code around for clarity
Move all register access to cnl_ipc_host_done() No functionality change. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/sof')
-rw-r--r--sound/soc/sof/intel/cnl.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/sound/soc/sof/intel/cnl.c b/sound/soc/sof/intel/cnl.c
index 1fae75fc313f..4ecba1d8ec7f 100644
--- a/sound/soc/sof/intel/cnl.c
+++ b/sound/soc/sof/intel/cnl.c
@@ -99,15 +99,6 @@ static irqreturn_t cnl_ipc_irq_thread(int irq, void *context)
snd_sof_ipc_msgs_rx(sdev);
}
- /*
- * clear busy interrupt to tell dsp controller this
- * interrupt has been accepted, not trigger it again
- */
- snd_sof_dsp_update_bits_forced(sdev, HDA_DSP_BAR,
- CNL_DSP_REG_HIPCTDR,
- CNL_DSP_REG_HIPCTDR_BUSY,
- CNL_DSP_REG_HIPCTDR_BUSY);
-
cnl_ipc_host_done(sdev);
ret = IRQ_HANDLED;
@@ -119,6 +110,14 @@ static irqreturn_t cnl_ipc_irq_thread(int irq, void *context)
static void cnl_ipc_host_done(struct snd_sof_dev *sdev)
{
/*
+ * clear busy interrupt to tell dsp controller this
+ * interrupt has been accepted, not trigger it again
+ */
+ snd_sof_dsp_update_bits_forced(sdev, HDA_DSP_BAR,
+ CNL_DSP_REG_HIPCTDR,
+ CNL_DSP_REG_HIPCTDR_BUSY,
+ CNL_DSP_REG_HIPCTDR_BUSY);
+ /*
* set done bit to ack dsp the msg has been
* processed and send reply msg to dsp
*/