aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sound/soc/intel/skylake/skl-sst-dsp.c5
-rw-r--r--sound/soc/intel/skylake/skl-sst-ipc.c3
2 files changed, 8 insertions, 0 deletions
diff --git a/sound/soc/intel/skylake/skl-sst-dsp.c b/sound/soc/intel/skylake/skl-sst-dsp.c
index 313ca7c6ca7f..94875b008b0b 100644
--- a/sound/soc/intel/skylake/skl-sst-dsp.c
+++ b/sound/soc/intel/skylake/skl-sst-dsp.c
@@ -267,6 +267,11 @@ irqreturn_t skl_dsp_sst_interrupt(int irq, void *dev_id)
267 result = IRQ_WAKE_THREAD; 267 result = IRQ_WAKE_THREAD;
268 } 268 }
269 269
270 if (val & SKL_ADSPIS_CL_DMA) {
271 skl_cldma_int_disable(ctx);
272 result = IRQ_WAKE_THREAD;
273 }
274
270 spin_unlock(&ctx->spinlock); 275 spin_unlock(&ctx->spinlock);
271 276
272 return result; 277 return result;
diff --git a/sound/soc/intel/skylake/skl-sst-ipc.c b/sound/soc/intel/skylake/skl-sst-ipc.c
index 94be6cbf2698..bd5ac4165151 100644
--- a/sound/soc/intel/skylake/skl-sst-ipc.c
+++ b/sound/soc/intel/skylake/skl-sst-ipc.c
@@ -375,6 +375,9 @@ irqreturn_t skl_dsp_irq_thread_handler(int irq, void *context)
375 u32 hipcie, hipct, hipcte; 375 u32 hipcie, hipct, hipcte;
376 int ipc_irq = 0; 376 int ipc_irq = 0;
377 377
378 if (dsp->intr_status & SKL_ADSPIS_CL_DMA)
379 skl_cldma_process_intr(dsp);
380
378 /* Here we handle IPC interrupts only */ 381 /* Here we handle IPC interrupts only */
379 if (!(dsp->intr_status & SKL_ADSPIS_IPC)) 382 if (!(dsp->intr_status & SKL_ADSPIS_IPC))
380 return IRQ_NONE; 383 return IRQ_NONE;