lkml.org 
[lkml]   [2022]   [Mar]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.10 070/105] ASoC: cs4265: Fix the duplicated control name
    Date
    From: Fabio Estevam <festevam@denx.de>

    commit c5487b9cdea5c1ede38a7ec94db0fc59963c8e86 upstream.

    Currently, the following error messages are seen during boot:

    asoc-simple-card sound: control 2:0:0:SPDIF Switch:0 is already present
    cs4265 1-004f: ASoC: failed to add widget SPDIF dapm kcontrol SPDIF Switch: -16

    Quoting Mark Brown:

    "The driver is just plain buggy, it defines both a regular SPIDF Switch
    control and a SND_SOC_DAPM_SWITCH() called SPDIF both of which will
    create an identically named control, it can never have loaded without
    error. One or both of those has to be renamed or they need to be
    merged into one thing."

    Fix the duplicated control name by combining the two SPDIF controls here
    and move the register bits onto the DAPM widget and have DAPM control them.

    Fixes: f853d6b3ba34 ("ASoC: cs4265: Add a S/PDIF enable switch")
    Signed-off-by: Fabio Estevam <festevam@denx.de>
    Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com>
    Link: https://lore.kernel.org/r/20220215120514.1760628-1-festevam@gmail.com
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    sound/soc/codecs/cs4265.c | 3 +--
    1 file changed, 1 insertion(+), 2 deletions(-)

    --- a/sound/soc/codecs/cs4265.c
    +++ b/sound/soc/codecs/cs4265.c
    @@ -150,7 +150,6 @@ static const struct snd_kcontrol_new cs4
    SOC_SINGLE("E to F Buffer Disable Switch", CS4265_SPDIF_CTL1,
    6, 1, 0),
    SOC_ENUM("C Data Access", cam_mode_enum),
    - SOC_SINGLE("SPDIF Switch", CS4265_SPDIF_CTL2, 5, 1, 1),
    SOC_SINGLE("Validity Bit Control Switch", CS4265_SPDIF_CTL2,
    3, 1, 0),
    SOC_ENUM("SPDIF Mono/Stereo", spdif_mono_stereo_enum),
    @@ -186,7 +185,7 @@ static const struct snd_soc_dapm_widget

    SND_SOC_DAPM_SWITCH("Loopback", SND_SOC_NOPM, 0, 0,
    &loopback_ctl),
    - SND_SOC_DAPM_SWITCH("SPDIF", SND_SOC_NOPM, 0, 0,
    + SND_SOC_DAPM_SWITCH("SPDIF", CS4265_SPDIF_CTL2, 5, 1,
    &spdif_switch),
    SND_SOC_DAPM_SWITCH("DAC", CS4265_PWRCTL, 1, 1,
    &dac_switch),

    \
     
     \ /
      Last update: 2022-03-07 10:51    [W:2.117 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site