]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
ASoC: intel: explain why block not found isn't error always
authorVinod Koul <vinod.koul@intel.com>
Mon, 20 Oct 2014 15:24:33 +0000 (20:54 +0530)
committerMark Brown <broonie@kernel.org>
Tue, 21 Oct 2014 22:58:59 +0000 (23:58 +0100)
The IPC blocking can be error when we don't find block or a short message,
explain that by adding a comment about this scenario

Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/intel/sst/sst_ipc.c

index 41a2b41b232b91fb4f8f46dfe05a13d0918cef33..2126f5bb2813e57730efb60a002bac835c62a44b 100644 (file)
@@ -54,6 +54,21 @@ struct sst_block *sst_create_block(struct intel_sst_drv *ctx,
        return msg;
 }
 
+/*
+ * while handling the interrupts, we need to check for message status and
+ * then if we are blocking for a message
+ *
+ * here we are unblocking the blocked ones, this is based on id we have
+ * passed and search that for block threads.
+ * We will not find block in two cases
+ *  a) when its small message and block in not there, so silently ignore
+ *  them
+ *  b) when we are actually not able to find the block (bug perhaps)
+ *
+ *  Since we have bit of small messages we can spam kernel log with err
+ *  print on above so need to keep as debug prints which should be enabled
+ *  via dynamic debug while debugging IPC issues
+ */
 int sst_wake_up_block(struct intel_sst_drv *ctx, int result,
                u32 drv_id, u32 ipc, void *data, u32 size)
 {