ASoC: SOF: debug: Use DEBUG log level for optional prints
authorPeter Ujfalusi <peter.ujfalusi@linux.intel.com>
Thu, 23 Dec 2021 11:36:27 +0000 (13:36 +0200)
committerMark Brown <broonie@kernel.org>
Thu, 23 Dec 2021 13:38:29 +0000 (13:38 +0000)
If the user requested to see all dumps (even the optional ones) then use
KERN_DEBUG level for the optional dumps as they are only for debugging
purposes.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Chao Song <chao.song@intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Link: https://lore.kernel.org/r/20211223113628.18582-20-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/debug.c

index d3640ff33134bec53bfc70cbccf7a876390069a8..6d6757075f7c3bf32897d06418fed4fcc44fa5a3 100644 (file)
@@ -943,38 +943,42 @@ static const struct soc_fw_state_info {
        {SOF_FW_CRASHED, "SOF_FW_CRASHED"},
 };
 
-static void snd_sof_dbg_print_fw_state(struct snd_sof_dev *sdev)
+static void snd_sof_dbg_print_fw_state(struct snd_sof_dev *sdev, const char *level)
 {
        int i;
 
        for (i = 0; i < ARRAY_SIZE(fw_state_dbg); i++) {
                if (sdev->fw_state == fw_state_dbg[i].state) {
-                       dev_err(sdev->dev, "fw_state: %s (%d)\n", fw_state_dbg[i].name, i);
+                       dev_printk(level, sdev->dev, "fw_state: %s (%d)\n",
+                                  fw_state_dbg[i].name, i);
                        return;
                }
        }
 
-       dev_err(sdev->dev, "fw_state: UNKNOWN (%d)\n", sdev->fw_state);
+       dev_printk(level, sdev->dev, "fw_state: UNKNOWN (%d)\n", sdev->fw_state);
 }
 
 void snd_sof_dsp_dbg_dump(struct snd_sof_dev *sdev, const char *msg, u32 flags)
 {
+       char *level = flags & SOF_DBG_DUMP_OPTIONAL ? KERN_DEBUG : KERN_ERR;
        bool print_all = sof_debug_check_flag(SOF_DBG_PRINT_ALL_DUMPS);
 
        if (flags & SOF_DBG_DUMP_OPTIONAL && !print_all)
                return;
 
        if (sof_ops(sdev)->dbg_dump && !sdev->dbg_dump_printed) {
-               dev_err(sdev->dev, "------------[ DSP dump start ]------------\n");
+               dev_printk(level, sdev->dev,
+                          "------------[ DSP dump start ]------------\n");
                if (msg)
-                       dev_err(sdev->dev, "%s\n", msg);
-               snd_sof_dbg_print_fw_state(sdev);
+                       dev_printk(level, sdev->dev, "%s\n", msg);
+               snd_sof_dbg_print_fw_state(sdev, level);
                sof_ops(sdev)->dbg_dump(sdev, flags);
-               dev_err(sdev->dev, "------------[ DSP dump end ]------------\n");
+               dev_printk(level, sdev->dev,
+                          "------------[ DSP dump end ]------------\n");
                if (!print_all)
                        sdev->dbg_dump_printed = true;
        } else if (msg) {
-               dev_err(sdev->dev, "%s\n", msg);
+               dev_printk(level, sdev->dev, "%s\n", msg);
        }
 }
 EXPORT_SYMBOL(snd_sof_dsp_dbg_dump);