ALSA: hda/realtek - Add a quirk for AC700 Chromebook.
Correct pin configs for the Acer AC700. Most importantly indicate that SPDIF is connected, it routes to HDMI out. Similar to Aspire models, chain in the DMIC fixup and allow it to be applied to this codec (ALC269VB) as well. Signed-off-by: Dylan Reid <dgreid@chromium.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Родитель
4af161072c
Коммит
423970042e
|
@ -2617,7 +2617,8 @@ static void alc271_fixup_dmic(struct hda_codec *codec,
|
||||||
};
|
};
|
||||||
unsigned int cfg;
|
unsigned int cfg;
|
||||||
|
|
||||||
if (strcmp(codec->chip_name, "ALC271X"))
|
if (strcmp(codec->chip_name, "ALC271X") &&
|
||||||
|
strcmp(codec->chip_name, "ALC269VB"))
|
||||||
return;
|
return;
|
||||||
cfg = snd_hda_codec_get_pincfg(codec, 0x12);
|
cfg = snd_hda_codec_get_pincfg(codec, 0x12);
|
||||||
if (get_defcfg_connect(cfg) == AC_JACK_PORT_FIXED)
|
if (get_defcfg_connect(cfg) == AC_JACK_PORT_FIXED)
|
||||||
|
@ -2838,6 +2839,7 @@ enum {
|
||||||
ALC269_FIXUP_PINCFG_NO_HP_TO_LINEOUT,
|
ALC269_FIXUP_PINCFG_NO_HP_TO_LINEOUT,
|
||||||
ALC271_FIXUP_AMIC_MIC2,
|
ALC271_FIXUP_AMIC_MIC2,
|
||||||
ALC271_FIXUP_HP_GATE_MIC_JACK,
|
ALC271_FIXUP_HP_GATE_MIC_JACK,
|
||||||
|
ALC269_FIXUP_ACER_AC700,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct hda_fixup alc269_fixups[] = {
|
static const struct hda_fixup alc269_fixups[] = {
|
||||||
|
@ -3010,6 +3012,19 @@ static const struct hda_fixup alc269_fixups[] = {
|
||||||
.chained = true,
|
.chained = true,
|
||||||
.chain_id = ALC271_FIXUP_AMIC_MIC2,
|
.chain_id = ALC271_FIXUP_AMIC_MIC2,
|
||||||
},
|
},
|
||||||
|
[ALC269_FIXUP_ACER_AC700] = {
|
||||||
|
.type = HDA_FIXUP_PINS,
|
||||||
|
.v.pins = (const struct hda_pintbl[]) {
|
||||||
|
{ 0x12, 0x99a3092f }, /* int-mic */
|
||||||
|
{ 0x14, 0x99130110 }, /* speaker */
|
||||||
|
{ 0x18, 0x03a11c20 }, /* mic */
|
||||||
|
{ 0x1e, 0x0346101e }, /* SPDIF1 */
|
||||||
|
{ 0x21, 0x0321101f }, /* HP out */
|
||||||
|
{ }
|
||||||
|
},
|
||||||
|
.chained = true,
|
||||||
|
.chain_id = ALC271_FIXUP_DMIC,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct snd_pci_quirk alc269_fixup_tbl[] = {
|
static const struct snd_pci_quirk alc269_fixup_tbl[] = {
|
||||||
|
@ -3034,6 +3049,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
|
||||||
SND_PCI_QUIRK(0x104d, 0x9084, "Sony VAIO", ALC275_FIXUP_SONY_HWEQ),
|
SND_PCI_QUIRK(0x104d, 0x9084, "Sony VAIO", ALC275_FIXUP_SONY_HWEQ),
|
||||||
SND_PCI_QUIRK_VENDOR(0x104d, "Sony VAIO", ALC269_FIXUP_SONY_VAIO),
|
SND_PCI_QUIRK_VENDOR(0x104d, "Sony VAIO", ALC269_FIXUP_SONY_VAIO),
|
||||||
SND_PCI_QUIRK(0x1028, 0x0470, "Dell M101z", ALC269_FIXUP_DELL_M101Z),
|
SND_PCI_QUIRK(0x1028, 0x0470, "Dell M101z", ALC269_FIXUP_DELL_M101Z),
|
||||||
|
SND_PCI_QUIRK(0x1025, 0x047c, "Acer AC700", ALC269_FIXUP_ACER_AC700),
|
||||||
SND_PCI_QUIRK(0x1025, 0x0740, "Acer AO725", ALC271_FIXUP_HP_GATE_MIC_JACK),
|
SND_PCI_QUIRK(0x1025, 0x0740, "Acer AO725", ALC271_FIXUP_HP_GATE_MIC_JACK),
|
||||||
SND_PCI_QUIRK(0x1025, 0x0742, "Acer AO756", ALC271_FIXUP_HP_GATE_MIC_JACK),
|
SND_PCI_QUIRK(0x1025, 0x0742, "Acer AO756", ALC271_FIXUP_HP_GATE_MIC_JACK),
|
||||||
SND_PCI_QUIRK_VENDOR(0x1025, "Acer Aspire", ALC271_FIXUP_DMIC),
|
SND_PCI_QUIRK_VENDOR(0x1025, "Acer Aspire", ALC271_FIXUP_DMIC),
|
||||||
|
|
Загрузка…
Ссылка в новой задаче