lkml.org 
[lkml]   [2020]   [Aug]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v2 19/20] ALSA: hda/ca0132 - Add AE-7 custom controls.
    Date
    Add headphone gain and DAC filter controls, which use the same commands
    as the AE-5. Also, change input source enumerated control item count to
    exclude front microphone.

    Signed-off-by: Connor McAdams <conmanx360@gmail.com>
    ---
    sound/pci/hda/patch_ca0132.c | 20 ++++++++++++++++----
    1 file changed, 16 insertions(+), 4 deletions(-)

    diff --git a/sound/pci/hda/patch_ca0132.c b/sound/pci/hda/patch_ca0132.c
    index 8c6e38734489..52f6d3740e0a 100644
    --- a/sound/pci/hda/patch_ca0132.c
    +++ b/sound/pci/hda/patch_ca0132.c
    @@ -5839,6 +5839,13 @@ static int ca0132_alt_input_source_put(struct snd_kcontrol *kcontrol,
    int sel = ucontrol->value.enumerated.item[0];
    unsigned int items = IN_SRC_NUM_OF_INPUTS;

    + /*
    + * The AE-7 has no front microphone, so limit items to 2: rear mic and
    + * line-in.
    + */
    + if (ca0132_quirk(spec) == QUIRK_AE7)
    + items = 2;
    +
    if (sel >= items)
    return 0;

    @@ -7029,20 +7036,25 @@ static int ca0132_build_controls(struct hda_codec *codec)
    }
    }

    - if (ca0132_quirk(spec) == QUIRK_AE5) {
    + switch (ca0132_quirk(spec)) {
    + case QUIRK_AE5:
    + case QUIRK_AE7:
    err = ae5_add_headphone_gain_enum(codec);
    if (err < 0)
    return err;
    err = ae5_add_sound_filter_enum(codec);
    if (err < 0)
    return err;
    - }
    -
    - if (ca0132_quirk(spec) == QUIRK_ZXR) {
    + break;
    + case QUIRK_ZXR:
    err = zxr_add_headphone_gain_switch(codec);
    if (err < 0)
    return err;
    + break;
    + default:
    + break;
    }
    +
    #ifdef ENABLE_TUNING_CONTROLS
    add_tuning_ctls(codec);
    #endif
    --
    2.20.1
    \
     
     \ /
      Last update: 2020-08-25 22:11    [W:2.545 / U:0.044 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site