• Kuninori Morimoto's avatar
    ASoC: rsnd: use ring buffer for rsnd_mod_name() · 0246c661
    Kuninori Morimoto authored
    commit c0ea089d ("ASoC: rsnd: rsnd_mod_name() handles both name and
    ID") merged "name" and "ID" on rsnd_mod_name() to handle sub-ID
    (= for CTU/BUSIF).
    Then, it decided to share static char to avoid pointless memory.
    But, it doesn't work correctry in below case, because last called
    name will be used.
    
    	dev_xxx(dev, "%s is connected to %s\n",
    		rsnd_mod_name(mod_a),  /* ssiu[00] */
    		rsnd_mod_name(mod_b)); /* ssi[0]   */
    	->
    	rcar_sound ec500000.sound: ssi[0] is connected to ssi[0]
    	                           ~~~~~~                 ~~~~~~
    We still don't want to have pointless memory, so let's use ring buffer.
    16byte x 5 is very enough for this purpose.
    
    	dev_xxx(dev, "%s is connected to %s\n",
    		rsnd_mod_name(mod_a),  /* ssiu[00] */
    		rsnd_mod_name(mod_b)); /* ssi[0]   */
    	->
    	rcar_sound ec500000.sound: ssiu[00] is connected to ssi[0]
    	                           ~~~~~~~~                 ~~~~~~
    Signed-off-by: default avatarKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
    Signed-off-by: default avatarMark Brown <broonie@kernel.org>
    0246c661
core.c 39.9 KB