• Kuninori Morimoto's avatar
    ASoC: rsnd: fixup MIX kctrl registration · 7aea8a9d
    Kuninori Morimoto authored
    Renesas sound device has many IPs and many situations.
    If platform/board uses MIXer, situation will be more complex.
    To avoid duplicate DVC kctrl registration when MIXer was used,
    it had original flags.
    But it was issue when sound card was re-binded, because
    no one can't cleanup this flags then.
    
    To solve this issue, commit 9c698e84 ("ASoC: rsnd: tidyup
    registering method for rsnd_kctrl_new()") checks registered
    card->controls, because if card was re-binded, these were cleanuped
    automatically. This patch could solve re-binding issue.
    But, it start to avoid MIX kctrl.
    
    To solve these issues, we need below.
    To avoid card re-binding issue: check registered card->controls
    To avoid duplicate DVC registration: check registered rsnd_kctrl_cfg
    To allow multiple MIX registration: check registered rsnd_kctrl_cfg
    This patch do it.
    
    Fixes: 9c698e84 ("ASoC: rsnd: tidyup registering method for rsnd_kctrl_new()")
    Reported-by: default avatarJiada Wang <jiada_wang@mentor.com>
    Signed-off-by: default avatarKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
    Tested-By: default avatarJiada Wang <jiada_wang@mentor.com>
    Signed-off-by: default avatarMark Brown <broonie@kernel.org>
    7aea8a9d
core.c 41.2 KB