ASoC: core: Fix pcm code debugfs error
We can have 2 dcpm-s with the same backend and frontend name (capture + playback pair), this causes the following debugfs error on Intel Bay Trail systems: [ 298.969049] debugfs: Directory 'SSP2-Codec' with parent 'Baytrail Audio Port' already present! This commit adds a ":playback" or ":capture" postfix to the debugfs dir name fixing this. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Link: https://lore.kernel.org/r/20191005212202.5206-1-hdegoede@redhat.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
b1e620e7d3
commit
0632fa0425
|
@ -1146,6 +1146,7 @@ static int dpcm_be_connect(struct snd_soc_pcm_runtime *fe,
|
||||||
{
|
{
|
||||||
struct snd_soc_dpcm *dpcm;
|
struct snd_soc_dpcm *dpcm;
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
|
char *name;
|
||||||
|
|
||||||
/* only add new dpcms */
|
/* only add new dpcms */
|
||||||
for_each_dpcm_be(fe, stream, dpcm) {
|
for_each_dpcm_be(fe, stream, dpcm) {
|
||||||
|
@ -1171,9 +1172,15 @@ static int dpcm_be_connect(struct snd_soc_pcm_runtime *fe,
|
||||||
stream ? "<-" : "->", be->dai_link->name);
|
stream ? "<-" : "->", be->dai_link->name);
|
||||||
|
|
||||||
#ifdef CONFIG_DEBUG_FS
|
#ifdef CONFIG_DEBUG_FS
|
||||||
dpcm->debugfs_state = debugfs_create_dir(be->dai_link->name,
|
name = kasprintf(GFP_KERNEL, "%s:%s", be->dai_link->name,
|
||||||
|
stream ? "capture" : "playback");
|
||||||
|
if (name) {
|
||||||
|
dpcm->debugfs_state = debugfs_create_dir(name,
|
||||||
fe->debugfs_dpcm_root);
|
fe->debugfs_dpcm_root);
|
||||||
debugfs_create_u32("state", 0644, dpcm->debugfs_state, &dpcm->state);
|
debugfs_create_u32("state", 0644, dpcm->debugfs_state,
|
||||||
|
&dpcm->state);
|
||||||
|
kfree(name);
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue