From e3e24f7cb983d97065a1e7d1816740ed57c1669d Mon Sep 17 00:00:00 2001 From: David Henningsson Date: Tue, 5 Feb 2013 12:06:02 +0100 Subject: [PATCH] --- yaml --- r: 353232 b: refs/heads/master c: f672f65a1c15b04e09d25701a8b5be47bad9376a h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/sound/pci/hda/patch_via.c | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 2356679e07e4..2f5e2a059d60 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2ad779b7329d6894a80df94e693e72eaa0d56790 +refs/heads/master: f672f65a1c15b04e09d25701a8b5be47bad9376a diff --git a/trunk/sound/pci/hda/patch_via.c b/trunk/sound/pci/hda/patch_via.c index 9641c0e487bb..e934c498b95d 100644 --- a/trunk/sound/pci/hda/patch_via.c +++ b/trunk/sound/pci/hda/patch_via.c @@ -661,6 +661,18 @@ static int via_init(struct hda_codec *codec) return 0; } +static int vt1708_build_controls(struct hda_codec *codec) +{ + /* In order not to create "Phantom Jack" controls, + temporary enable jackpoll */ + int err; + int old_interval = codec->jackpoll_interval; + codec->jackpoll_interval = msecs_to_jiffies(100); + err = via_build_controls(codec); + codec->jackpoll_interval = old_interval; + return err; +} + static int vt1708_build_pcms(struct hda_codec *codec) { struct via_spec *spec = codec->spec; @@ -723,6 +735,7 @@ static int patch_vt1708(struct hda_codec *codec) spec->init_verbs[spec->num_iverbs++] = vt1708_init_verbs; codec->patch_ops = via_patch_ops; + codec->patch_ops.build_controls = vt1708_build_controls; codec->patch_ops.build_pcms = vt1708_build_pcms; /* clear jackpoll_interval again; it's set dynamically */