diff --git a/Documentation/sound/alsa/HD-Audio-Models.txt b/Documentation/sound/alsa/HD-Audio-Models.txt
index f911e36..ba143cd 100644
--- a/Documentation/sound/alsa/HD-Audio-Models.txt
+++ b/Documentation/sound/alsa/HD-Audio-Models.txt
@@ -28,6 +28,7 @@ ALC269/270/275/276/28x/29x
alc269-dmic Enable ALC269(VA) digital mic workaround
alc271-dmic Enable ALC271X digital mic workaround
inv-dmic Inverted internal mic workaround
+ headset-mic Indicates a combined headset (mic+headphone jack)
lenovo-dock Enables docking station I/O for some Lenovos
dell-headset-multi Headset jack, which can also be used as mic-in
dell-headset-dock Headset jack (without mic-in), and also dock I/O
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index ed9deb6..8cb3350 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -2819,6 +2819,15 @@ static void alc269_fixup_hweq(struct hda_codec *codec,
alc_write_coef_idx(codec, 0x1e, coef | 0x80);
}
Signed-off-by: David Henningsson <email address hidden> sound/alsa/ HD-Audio- Models. txt | 1 + pci/hda/ patch_realtek. c | 15 +++++++++++++++
---
Documentation/
sound/
2 files changed, 16 insertions(+)
diff --git a/Documentation /sound/ alsa/HD- Audio-Models. txt b/Documentation /sound/ alsa/HD- Audio-Models. txt /sound/ alsa/HD- Audio-Models. txt /sound/ alsa/HD- Audio-Models. txt 270/275/ 276/28x/ 29x headset- multi Headset jack, which can also be used as mic-in headset- dock Headset jack (without mic-in), and also dock I/O pci/hda/ patch_realtek. c b/sound/ pci/hda/ patch_realtek. c pci/hda/ patch_realtek. c pci/hda/ patch_realtek. c fixup_hweq( struct hda_codec *codec, coef_idx( codec, 0x1e, coef | 0x80);
index f911e36..ba143cd 100644
--- a/Documentation
+++ b/Documentation
@@ -28,6 +28,7 @@ ALC269/
alc269-dmic Enable ALC269(VA) digital mic workaround
alc271-dmic Enable ALC271X digital mic workaround
inv-dmic Inverted internal mic workaround
+ headset-mic Indicates a combined headset (mic+headphone jack)
lenovo-dock Enables docking station I/O for some Lenovos
dell-
dell-
diff --git a/sound/
index ed9deb6..8cb3350 100644
--- a/sound/
+++ b/sound/
@@ -2819,6 +2819,15 @@ static void alc269_
alc_write_
}
+static void alc269_ fixup_headset_ mic(struct hda_codec *codec, ACT_PRE_ PROBE) HEADSET_ MIC; fixup_dmic( struct hda_codec *codec, FIXUP_DMIC, FIXUP_PCM_ 44K, FIXUP_STEREO_ DMIC, FIXUP_HEADSET_ MIC, FIXUP_QUANTA_ MUTE, FIXUP_LIFEBOOK, FIXUP_AMIC, fixup_stereo_ dmic, FIXUP_HEADSET_ MIC] = { fixup_headset_ mic, FIXUP_QUANTA_ MUTE] = { fixup_quanta_ mute, fixup_models[ ] = { FIXUP_STEREO_ DMIC, .name = "alc269-dmic"}, FIXUP_INV_ DMIC, .name = "inv-dmic"}, FIXUP_HEADSET_ MIC, .name = "headset-mic"}, FIXUP_LENOVO_ DOCK, .name = "lenovo-dock"}, FIXUP_HP_ GPIO_LED, .name = "hp-gpio-led"}, FIXUP_DELL1_ MIC_NO_ PRESENCE, .name = "dell-headset- multi"} ,
+ const struct hda_fixup *fix, int action)
+{
+ struct alc_spec *spec = codec->spec;
+
+ if (action == HDA_FIXUP_
+ spec->parse_flags |= HDA_PINCFG_
+}
+
static void alc271_
const struct hda_fixup *fix, int action)
{
@@ -3516,6 +3525,7 @@ enum {
ALC271_
ALC269_
ALC269_
+ ALC269_
ALC269_
ALC269_
ALC269_
@@ -3614,6 +3624,10 @@ static const struct hda_fixup alc269_fixups[] = {
.type = HDA_FIXUP_FUNC,
.v.func = alc269_
},
+ [ALC269_
+ .type = HDA_FIXUP_FUNC,
+ .v.func = alc269_
+ },
[ALC269_
.type = HDA_FIXUP_FUNC,
.v.func = alc269_
@@ -3979,6 +3993,7 @@ static const struct hda_model_fixup alc269_
{.id = ALC269_
{.id = ALC271_FIXUP_DMIC, .name = "alc271-dmic"},
{.id = ALC269_
+ {.id = ALC269_
{.id = ALC269_
{.id = ALC269_
{.id = ALC269_
--
1.7.9.5