Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b0944ac0 authored by Kailang Yang's avatar Kailang Yang Committed by Sasha Levin
Browse files

ALSA: hda/realtek - Support Dell headset mode for ALC298



[ Upstream commit 977e627684df0f60bdf2a768ec4772f42fe843fc ]

Dell create new platform with ALC298 codec.
This patch will enable headset mode for ALC298/ALC3266 platform.

Signed-off-by: default avatarKailang Yang <kailang@realtek.com>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
Signed-off-by: default avatarSasha Levin <sasha.levin@oracle.com>
parent 5e23a4e6
Loading
Loading
Loading
Loading
+26 −0
Original line number Diff line number Diff line
@@ -4576,6 +4576,7 @@ enum {
	ALC288_FIXUP_DELL_HEADSET_MODE,
	ALC288_FIXUP_DELL1_MIC_NO_PRESENCE,
	ALC288_FIXUP_DELL_XPS_13_GPIO6,
	ALC298_FIXUP_DELL1_MIC_NO_PRESENCE,
};

static const struct hda_fixup alc269_fixups[] = {
@@ -5117,6 +5118,16 @@ static const struct hda_fixup alc269_fixups[] = {
		.chained = true,
		.chain_id = ALC288_FIXUP_DELL1_MIC_NO_PRESENCE
	},
	[ALC298_FIXUP_DELL1_MIC_NO_PRESENCE] = {
		.type = HDA_FIXUP_PINS,
		.v.pins = (const struct hda_pintbl[]) {
			{ 0x18, 0x01a1913c }, /* use as headset mic, without its own jack detect */
			{ 0x1a, 0x01a1913d }, /* use as headphone mic, without its own jack detect */
			{ }
		},
		.chained = true,
		.chain_id = ALC269_FIXUP_HEADSET_MODE
	},
};

static const struct snd_pci_quirk alc269_fixup_tbl[] = {
@@ -5385,6 +5396,13 @@ static const struct hda_model_fixup alc269_fixup_models[] = {
	{0x1d, 0x40700001}, \
	{0x1e, 0x411111f0}

#define ALC298_STANDARD_PINS \
	{0x18, 0x411111f0}, \
	{0x19, 0x411111f0}, \
	{0x1a, 0x411111f0}, \
	{0x1e, 0x411111f0}, \
	{0x1f, 0x411111f0}

static const struct snd_hda_pin_quirk alc269_pin_fixup_tbl[] = {
	SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell", ALC255_FIXUP_DELL2_MIC_NO_PRESENCE,
		ALC255_STANDARD_PINS,
@@ -5657,6 +5675,14 @@ static const struct snd_hda_pin_quirk alc269_pin_fixup_tbl[] = {
		{0x16, 0x411111f0},
		{0x18, 0x411111f0},
		{0x19, 0x411111f0}),
	SND_HDA_PIN_QUIRK(0x10ec0298, 0x1028, "Dell", ALC298_FIXUP_DELL1_MIC_NO_PRESENCE,
		ALC298_STANDARD_PINS,
		{0x12, 0x90a60130},
		{0x13, 0x40000000},
		{0x14, 0x411111f0},
		{0x17, 0x90170140},
		{0x1d, 0x4068a36d},
		{0x21, 0x03211020}),
	{}
};