Merge series "ASoC: SOF: debug: cleanups" from Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>:
cleanups of allocation and error handling Guennadi Liakhovetski (3): ASoC: SOF: fix debugfs initialisation error handling ASoC: SOF: only allocate debugfs cache buffers for IPC flood entries ASoC: SOF: remove superfluous NULL check in debugfs read sound/soc/sof/core.c | 5 +++-- sound/soc/sof/debug.c | 21 +++++++++++---------- 2 files changed, 14 insertions(+), 12 deletions(-) -- 2.25.1
This commit is contained in:
commit
081634599b
|
@ -154,7 +154,7 @@ static int sof_probe_continue(struct snd_sof_dev *sdev)
|
|||
if (ret < 0) {
|
||||
dev_err(sdev->dev, "error: failed to get machine info %d\n",
|
||||
ret);
|
||||
goto dbg_err;
|
||||
goto dsp_err;
|
||||
}
|
||||
|
||||
/* set up platform component driver */
|
||||
|
@ -257,8 +257,9 @@ fw_run_err:
|
|||
fw_load_err:
|
||||
snd_sof_ipc_free(sdev);
|
||||
ipc_err:
|
||||
snd_sof_free_debug(sdev);
|
||||
dbg_err:
|
||||
snd_sof_free_debug(sdev);
|
||||
dsp_err:
|
||||
snd_sof_remove(sdev);
|
||||
|
||||
/* all resources freed, update state to match */
|
||||
|
|
|
@ -451,8 +451,7 @@ static ssize_t sof_dfsentry_read(struct file *file, char __user *buffer,
|
|||
|
||||
dentry = file->f_path.dentry;
|
||||
if ((!strcmp(dentry->d_name.name, "ipc_flood_count") ||
|
||||
!strcmp(dentry->d_name.name, "ipc_flood_duration_ms")) &&
|
||||
dfse->cache_buf) {
|
||||
!strcmp(dentry->d_name.name, "ipc_flood_duration_ms"))) {
|
||||
if (*ppos)
|
||||
return 0;
|
||||
|
||||
|
@ -609,14 +608,16 @@ int snd_sof_debugfs_buf_item(struct snd_sof_dev *sdev,
|
|||
dfse->sdev = sdev;
|
||||
|
||||
#if IS_ENABLED(CONFIG_SND_SOC_SOF_DEBUG_IPC_FLOOD_TEST)
|
||||
/*
|
||||
* cache_buf is unused for SOF_DFSENTRY_TYPE_BUF debugfs entries.
|
||||
* So, use it to save the results of the last IPC flood test.
|
||||
*/
|
||||
dfse->cache_buf = devm_kzalloc(sdev->dev, IPC_FLOOD_TEST_RESULT_LEN,
|
||||
GFP_KERNEL);
|
||||
if (!dfse->cache_buf)
|
||||
return -ENOMEM;
|
||||
if (!strncmp(name, "ipc_flood", strlen("ipc_flood"))) {
|
||||
/*
|
||||
* cache_buf is unused for SOF_DFSENTRY_TYPE_BUF debugfs entries.
|
||||
* So, use it to save the results of the last IPC flood test.
|
||||
*/
|
||||
dfse->cache_buf = devm_kzalloc(sdev->dev, IPC_FLOOD_TEST_RESULT_LEN,
|
||||
GFP_KERNEL);
|
||||
if (!dfse->cache_buf)
|
||||
return -ENOMEM;
|
||||
}
|
||||
#endif
|
||||
|
||||
debugfs_create_file(name, mode, sdev->debugfs_root, dfse,
|
||||
|
|
Loading…
Reference in New Issue