lkml.org 
[lkml]   [2021]   [Dec]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.10 076/130] ASoC: tegra: Fix wrong value type in DMIC
    Date
    From: Sameer Pujar <spujar@nvidia.com>

    commit 559d234569a998a4004de1bd1f12da5487fb826e upstream.

    The enum controls are expected to use enumerated value type.
    Update relevant references in control get/put callbacks.

    Fixes: 8c8ff982e9e2 ("ASoC: tegra: Add Tegra210 based DMIC driver")
    Suggested-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Sameer Pujar <spujar@nvidia.com>
    Reviewed-by: Takashi Iwai <tiwai@suse.de>
    Link: https://lore.kernel.org/r/1637219231-406-4-git-send-email-spujar@nvidia.com
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    sound/soc/tegra/tegra210_dmic.c | 23 +++++++++++------------
    1 file changed, 11 insertions(+), 12 deletions(-)

    --- a/sound/soc/tegra/tegra210_dmic.c
    +++ b/sound/soc/tegra/tegra210_dmic.c
    @@ -165,15 +165,15 @@ static int tegra210_dmic_get_control(str
    if (strstr(kcontrol->id.name, "Boost Gain Volume"))
    ucontrol->value.integer.value[0] = dmic->boost_gain;
    else if (strstr(kcontrol->id.name, "Channel Select"))
    - ucontrol->value.integer.value[0] = dmic->ch_select;
    + ucontrol->value.enumerated.item[0] = dmic->ch_select;
    else if (strstr(kcontrol->id.name, "Mono To Stereo"))
    - ucontrol->value.integer.value[0] = dmic->mono_to_stereo;
    + ucontrol->value.enumerated.item[0] = dmic->mono_to_stereo;
    else if (strstr(kcontrol->id.name, "Stereo To Mono"))
    - ucontrol->value.integer.value[0] = dmic->stereo_to_mono;
    + ucontrol->value.enumerated.item[0] = dmic->stereo_to_mono;
    else if (strstr(kcontrol->id.name, "OSR Value"))
    - ucontrol->value.integer.value[0] = dmic->osr_val;
    + ucontrol->value.enumerated.item[0] = dmic->osr_val;
    else if (strstr(kcontrol->id.name, "LR Polarity Select"))
    - ucontrol->value.integer.value[0] = dmic->lrsel;
    + ucontrol->value.enumerated.item[0] = dmic->lrsel;

    return 0;
    }
    @@ -183,20 +183,19 @@ static int tegra210_dmic_put_control(str
    {
    struct snd_soc_component *comp = snd_soc_kcontrol_component(kcontrol);
    struct tegra210_dmic *dmic = snd_soc_component_get_drvdata(comp);
    - int value = ucontrol->value.integer.value[0];

    if (strstr(kcontrol->id.name, "Boost Gain Volume"))
    - dmic->boost_gain = value;
    + dmic->boost_gain = ucontrol->value.integer.value[0];
    else if (strstr(kcontrol->id.name, "Channel Select"))
    - dmic->ch_select = ucontrol->value.integer.value[0];
    + dmic->ch_select = ucontrol->value.enumerated.item[0];
    else if (strstr(kcontrol->id.name, "Mono To Stereo"))
    - dmic->mono_to_stereo = value;
    + dmic->mono_to_stereo = ucontrol->value.enumerated.item[0];
    else if (strstr(kcontrol->id.name, "Stereo To Mono"))
    - dmic->stereo_to_mono = value;
    + dmic->stereo_to_mono = ucontrol->value.enumerated.item[0];
    else if (strstr(kcontrol->id.name, "OSR Value"))
    - dmic->osr_val = value;
    + dmic->osr_val = ucontrol->value.enumerated.item[0];
    else if (strstr(kcontrol->id.name, "LR Polarity Select"))
    - dmic->lrsel = value;
    + dmic->lrsel = ucontrol->value.enumerated.item[0];

    return 0;
    }

    \
     
     \ /
      Last update: 2021-12-06 16:40    [W:4.493 / U:0.004 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site