ASoC: SOF: Intel: cnl-ipc: move code around for clarity
authorPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Mon, 3 Jun 2019 16:20:27 +0000 (11:20 -0500)
committerMark Brown <broonie@kernel.org>
Mon, 3 Jun 2019 16:48:23 +0000 (17:48 +0100)
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>
sound/soc/sof/intel/cnl.c

index 1fae75f..4ecba1d 100644 (file)
@@ -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
         */