mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-05 16:54:27 +00:00
ASoC: SOF: debug: show firmware/topology prefix/names
The SOF driver has multiple profiles to select firmware/topology prefix/names depending on the platform and ipc_type, and each of those fields can be overridden with kernel parameters. This results in some cases in confusion on what configuration is actually used in a given test. We currently log the firmware and topology names in the kernel logs, but there's been an ask to add the information in debugfs to simplify test scripts used by developers and CI. This isn't meant to be a stable ABI used by apps, changes will be allowed as needed. Closes: https://github.com/thesofproject/linux/issues/3867 Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Link: https://msgid.link/r/20240408194147.28919-4-pierre-louis.bossart@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
90a2353080
commit
17f4041244
1 changed files with 18 additions and 0 deletions
|
@ -330,14 +330,32 @@ EXPORT_SYMBOL_GPL(snd_sof_dbg_memory_info_init);
|
||||||
|
|
||||||
int snd_sof_dbg_init(struct snd_sof_dev *sdev)
|
int snd_sof_dbg_init(struct snd_sof_dev *sdev)
|
||||||
{
|
{
|
||||||
|
struct snd_sof_pdata *plat_data = sdev->pdata;
|
||||||
struct snd_sof_dsp_ops *ops = sof_ops(sdev);
|
struct snd_sof_dsp_ops *ops = sof_ops(sdev);
|
||||||
const struct snd_sof_debugfs_map *map;
|
const struct snd_sof_debugfs_map *map;
|
||||||
|
struct dentry *fw_profile;
|
||||||
int i;
|
int i;
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
/* use "sof" as top level debugFS dir */
|
/* use "sof" as top level debugFS dir */
|
||||||
sdev->debugfs_root = debugfs_create_dir("sof", NULL);
|
sdev->debugfs_root = debugfs_create_dir("sof", NULL);
|
||||||
|
|
||||||
|
/* expose firmware/topology prefix/names for test purposes */
|
||||||
|
fw_profile = debugfs_create_dir("fw_profile", sdev->debugfs_root);
|
||||||
|
|
||||||
|
debugfs_create_str("fw_path", 0444, fw_profile,
|
||||||
|
(char **)&plat_data->fw_filename_prefix);
|
||||||
|
debugfs_create_str("fw_lib_path", 0444, fw_profile,
|
||||||
|
(char **)&plat_data->fw_lib_prefix);
|
||||||
|
debugfs_create_str("tplg_path", 0444, fw_profile,
|
||||||
|
(char **)&plat_data->tplg_filename_prefix);
|
||||||
|
debugfs_create_str("fw_name", 0444, fw_profile,
|
||||||
|
(char **)&plat_data->fw_filename);
|
||||||
|
debugfs_create_str("tplg_name", 0444, fw_profile,
|
||||||
|
(char **)&plat_data->tplg_filename);
|
||||||
|
debugfs_create_u32("ipc_type", 0444, fw_profile,
|
||||||
|
(u32 *)&plat_data->ipc_type);
|
||||||
|
|
||||||
/* init dfsentry list */
|
/* init dfsentry list */
|
||||||
INIT_LIST_HEAD(&sdev->dfsentry_list);
|
INIT_LIST_HEAD(&sdev->dfsentry_list);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue