diff options
author | Chih-Chung Chang <chihchung@chromium.org> | 2013-08-05 04:38:42 -0400 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2013-08-05 05:19:59 -0400 |
commit | bde7bc6014a0a6f63cff42211ccd9b7129ce2df9 (patch) | |
tree | e351f28d2c775384b0e7657333b2355a7e72627c /sound/pci/hda/hda_jack.c | |
parent | da96fb5b0185d27faab0746f872d22b0cee7b026 (diff) |
ALSA: hda - Fix jack gating when auto_{mute,mic} is suppressed.
The snd_hda_jack_set_gating_jack() call didn't work when
auto_{mute,mic} is suppressed because (1) am_entry is
not filled with nid of the mic pin. (2) The jacks are not
created (by snd_hda_jack_detect_enable_callback) before the
snd_hda_jack_set_gating_jack call.
Now we use the first input pin nid directly, and create the jack if it
doesn't exist yet.
Signed-off-by: Chih-Chung Chang <chihchung@chromium.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/hda_jack.c')
-rw-r--r-- | sound/pci/hda/hda_jack.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sound/pci/hda/hda_jack.c b/sound/pci/hda/hda_jack.c index dc93761a4bc5..05b3e3e9108f 100644 --- a/sound/pci/hda/hda_jack.c +++ b/sound/pci/hda/hda_jack.c | |||
@@ -253,8 +253,8 @@ EXPORT_SYMBOL_HDA(snd_hda_jack_detect_enable); | |||
253 | int snd_hda_jack_set_gating_jack(struct hda_codec *codec, hda_nid_t gated_nid, | 253 | int snd_hda_jack_set_gating_jack(struct hda_codec *codec, hda_nid_t gated_nid, |
254 | hda_nid_t gating_nid) | 254 | hda_nid_t gating_nid) |
255 | { | 255 | { |
256 | struct hda_jack_tbl *gated = snd_hda_jack_tbl_get(codec, gated_nid); | 256 | struct hda_jack_tbl *gated = snd_hda_jack_tbl_new(codec, gated_nid); |
257 | struct hda_jack_tbl *gating = snd_hda_jack_tbl_get(codec, gating_nid); | 257 | struct hda_jack_tbl *gating = snd_hda_jack_tbl_new(codec, gating_nid); |
258 | 258 | ||
259 | if (!gated || !gating) | 259 | if (!gated || !gating) |
260 | return -EINVAL; | 260 | return -EINVAL; |