lkml.org 
[lkml]   [2019]   [Nov]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.14 19/95] ALSA: hda/realtek - Apply ALC294 hp init also for S4 resume
    Date
    From: Takashi Iwai <tiwai@suse.de>

    [ Upstream commit f6ef4e0e284251ff795c541db1129c84515ed044 ]

    The init sequence for ALC294 headphone stuff is needed not only for
    the boot up time but also for the resume from hibernation, where the
    device is switched from the boot kernel without sound driver to the
    suspended image. Since we record the PM event in the device
    power_state field, we can now recognize the call pattern and apply the
    sequence conditionally.

    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    sound/pci/hda/patch_realtek.c | 4 +++-
    1 file changed, 3 insertions(+), 1 deletion(-)

    diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
    index 5412952557f7a..8d6c5be387362 100644
    --- a/sound/pci/hda/patch_realtek.c
    +++ b/sound/pci/hda/patch_realtek.c
    @@ -3246,7 +3246,9 @@ static void alc294_init(struct hda_codec *codec)
    {
    struct alc_spec *spec = codec->spec;

    - if (!spec->done_hp_init) {
    + /* required only at boot or S4 resume time */
    + if (!spec->done_hp_init ||
    + codec->core.dev.power.power_state.event == PM_EVENT_RESTORE) {
    alc294_hp_init(codec);
    spec->done_hp_init = true;
    }
    --
    2.20.1


    \
     
     \ /
      Last update: 2019-11-04 22:53    [W:4.185 / U:0.472 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site