lkml.org 
[lkml]   [2017]   [Jan]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.9 27/83] ALSA: hda: when comparing pin configurations, ignore assoc in addition to seq
    Date
    4.9-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Kai-Heng Feng <kai.heng.feng@canonical.com>

    commit 5e0ad0d8747f3e4803a9c3d96d64dd7332506d3c upstream.

    Commit [64047d7f4912 ALSA: hda - ignore the assoc and seq when comparing
    pin configurations] intented to ignore both seq and assoc at pin
    comparing, but it only ignored seq. So that commit may still fail to
    match pins on some machines.
    Change the bitmask to also ignore assoc.

    v2: Use macro to do bit masking.

    Thanks to Hui Wang for the analysis.

    Fixes: 64047d7f4912 ("ALSA: hda - ignore the assoc and seq when comparing...")
    Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    sound/pci/hda/hda_auto_parser.c | 4 +++-
    1 file changed, 3 insertions(+), 1 deletion(-)

    --- a/sound/pci/hda/hda_auto_parser.c
    +++ b/sound/pci/hda/hda_auto_parser.c
    @@ -884,6 +884,8 @@ void snd_hda_apply_fixup(struct hda_code
    }
    EXPORT_SYMBOL_GPL(snd_hda_apply_fixup);

    +#define IGNORE_SEQ_ASSOC (~(AC_DEFCFG_SEQUENCE | AC_DEFCFG_DEF_ASSOC))
    +
    static bool pin_config_match(struct hda_codec *codec,
    const struct hda_pintbl *pins)
    {
    @@ -901,7 +903,7 @@ static bool pin_config_match(struct hda_
    for (; t_pins->nid; t_pins++) {
    if (t_pins->nid == nid) {
    found = 1;
    - if ((t_pins->val & 0xfffffff0) == (cfg & 0xfffffff0))
    + if ((t_pins->val & IGNORE_SEQ_ASSOC) == (cfg & IGNORE_SEQ_ASSOC))
    break;
    else if ((cfg & 0xf0000000) == 0x40000000 && (t_pins->val & 0xf0000000) == 0x40000000)
    break;

    \
     
     \ /
      Last update: 2017-01-04 21:12    [W:4.031 / U:0.216 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site