• Takashi Iwai's avatar
    ALSA: hda/realtek - Fix unexpected init_amp override · 67791202
    Takashi Iwai authored
    The commit 1c76aa5f ("ALSA: hda/realtek - Allow skipping
    spec->init_amp detection") changed the way to assign spec->init_amp
    field that specifies the way to initialize the amp.  Along with the
    change, the commit also replaced a few fixups that set spec->init_amp
    in HDA_FIXUP_ACT_PROBE with HDA_FIXUP_ACT_PRE_PROBE.  This was rather
    aligning to the other fixups, and not supposed to change the actual
    behavior.
    
    However, this change turned out to cause a regression on FSC S7020,
    which hit exactly the above.  The reason was that there is still one
    place that overrides spec->init_amp after HDA_FIXUP_ACT_PRE_PROBE
    call, namely in alc_ssid_check().
    
    This patch fixes the regression by adding the proper spec->init_amp
    override check, i.e. verifying whether it's still ALC_INIT_UNDEFINED.
    
    Fixes: 1c76aa5f ("ALSA: hda/realtek - Allow skipping spec->init_amp detection")
    Cc: <stable@vger.kernel.org>
    BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=207329
    Link: https://lore.kernel.org/r/20200418190639.10082-1-tiwai@suse.deSigned-off-by: default avatarTakashi Iwai <tiwai@suse.de>
    67791202
patch_realtek.c 290 KB