Rename the internal flag to not limit it's use for dma-trace, but to be used for generic firmware tracing functionality.
Signed-off-by: Peter Ujfalusi peter.ujfalusi@linux.intel.com Reviewed-by: Ranjani Sridharan ranjani.sridharan@linux.intel.com Reviewed-by: Bard Liao yung-chuan.liao@linux.intel.com Reviewed-by: Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com --- sound/soc/sof/core.c | 2 +- sound/soc/sof/intel/hda-dsp.c | 2 +- sound/soc/sof/sof-priv.h | 4 +++- sound/soc/sof/trace.c | 14 +++++++------- 4 files changed, 12 insertions(+), 10 deletions(-)
diff --git a/sound/soc/sof/core.c b/sound/soc/sof/core.c index 2d12e8bab769..ff636f0e2435 100644 --- a/sound/soc/sof/core.c +++ b/sound/soc/sof/core.c @@ -250,7 +250,7 @@ static int sof_probe_continue(struct snd_sof_dev *sdev) }
if (sof_debug_check_flag(SOF_DBG_ENABLE_TRACE)) { - sdev->dtrace_is_supported = true; + sdev->fw_trace_is_supported = true;
/* init DMA trace */ ret = snd_sof_init_trace(sdev); diff --git a/sound/soc/sof/intel/hda-dsp.c b/sound/soc/sof/intel/hda-dsp.c index c068a3f2f6df..000ea906670c 100644 --- a/sound/soc/sof/intel/hda-dsp.c +++ b/sound/soc/sof/intel/hda-dsp.c @@ -432,7 +432,7 @@ static int hda_dsp_set_D0_state(struct snd_sof_dev *sdev, * when the DSP enters D0I3 while the system is in S0 * for debug purpose. */ - if (!sdev->dtrace_is_supported || + if (!sdev->fw_trace_is_supported || !hda_enable_trace_D0I3_S0 || sdev->system_suspend_target != SOF_SUSPEND_NONE) flags = HDA_PM_NO_DMA_TRACE; diff --git a/sound/soc/sof/sof-priv.h b/sound/soc/sof/sof-priv.h index a7ffb6ecf332..f1cbd2b0d1c9 100644 --- a/sound/soc/sof/sof-priv.h +++ b/sound/soc/sof/sof-priv.h @@ -546,13 +546,15 @@ struct snd_sof_dev { int ipc_timeout; int boot_timeout;
+ /* firmwre tracing */ + bool fw_trace_is_supported; /* set with Kconfig or module parameter */ + /* DMA for Trace */ struct snd_dma_buffer dmatb; struct snd_dma_buffer dmatp; int dma_trace_pages; wait_queue_head_t trace_sleep; u32 host_offset; - bool dtrace_is_supported; /* set with Kconfig or module parameter */ bool dtrace_error; bool dtrace_draining; enum sof_dtrace_state dtrace_state; diff --git a/sound/soc/sof/trace.c b/sound/soc/sof/trace.c index 5d171bf8a5ea..c5cc78c1958f 100644 --- a/sound/soc/sof/trace.c +++ b/sound/soc/sof/trace.c @@ -392,7 +392,7 @@ static int snd_sof_enable_trace(struct snd_sof_dev *sdev) struct sof_ipc_reply ipc_reply; int ret;
- if (!sdev->dtrace_is_supported) + if (!sdev->fw_trace_is_supported) return 0;
if (sdev->dtrace_state == SOF_DTRACE_ENABLED || !sdev->dma_trace_pages) @@ -459,9 +459,9 @@ int snd_sof_init_trace(struct snd_sof_dev *sdev)
/* dtrace is only supported with SOF_IPC */ if (sdev->pdata->ipc_type != SOF_IPC) - sdev->dtrace_is_supported = false; + sdev->fw_trace_is_supported = false;
- if (!sdev->dtrace_is_supported) + if (!sdev->fw_trace_is_supported) return 0;
/* set false before start initialization */ @@ -521,7 +521,7 @@ EXPORT_SYMBOL(snd_sof_init_trace); int snd_sof_trace_update_pos(struct snd_sof_dev *sdev, struct sof_ipc_dma_trace_posn *posn) { - if (!sdev->dtrace_is_supported) + if (!sdev->fw_trace_is_supported) return 0;
if (sdev->dtrace_state == SOF_DTRACE_ENABLED && @@ -541,7 +541,7 @@ int snd_sof_trace_update_pos(struct snd_sof_dev *sdev, /* an error has occurred within the DSP that prevents further trace */ void snd_sof_trace_notify_for_error(struct snd_sof_dev *sdev) { - if (!sdev->dtrace_is_supported) + if (!sdev->fw_trace_is_supported) return;
if (sdev->dtrace_state == SOF_DTRACE_ENABLED) { @@ -559,7 +559,7 @@ static void snd_sof_release_trace(struct snd_sof_dev *sdev, bool only_stop) struct sof_ipc_reply ipc_reply; int ret;
- if (!sdev->dtrace_is_supported || sdev->dtrace_state == SOF_DTRACE_DISABLED) + if (!sdev->fw_trace_is_supported || sdev->dtrace_state == SOF_DTRACE_DISABLED) return;
ret = snd_sof_dma_trace_trigger(sdev, SNDRV_PCM_TRIGGER_STOP); @@ -611,7 +611,7 @@ EXPORT_SYMBOL(snd_sof_trace_resume);
void snd_sof_free_trace(struct snd_sof_dev *sdev) { - if (!sdev->dtrace_is_supported) + if (!sdev->fw_trace_is_supported) return;
/* release trace */