[PATCH 2/2] ALSA: hda/realtek: Add headphone quirk for Aya Neo 2

Matthew Anderson posted 2 patches 2 years, 6 months ago
[PATCH 2/2] ALSA: hda/realtek: Add headphone quirk for Aya Neo 2
Posted by Matthew Anderson 2 years, 6 months ago
This fixes the headphones on the Aya Neo 2 handheld.
Signed-off-by: Matthew Anderson <ruinairas1992@gmail.com>
---
 sound/pci/hda/patch_realtek.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index 33f9beec8179..5d31cbe5d40b 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -7030,6 +7030,7 @@ enum {
 	ALC269_FIXUP_DELL3_MIC_NO_PRESENCE,
 	ALC269_FIXUP_DELL4_MIC_NO_PRESENCE,
 	ALC269_FIXUP_DELL4_MIC_NO_PRESENCE_QUIET,
+	ALC269_FIXUP_HEADSET_AYA_2,
 	ALC269_FIXUP_HEADSET_AYA_GEEK,
 	ALC269_FIXUP_HEADSET_MODE,
 	ALC269_FIXUP_HEADSET_MODE_NO_HP_MIC,
@@ -8455,6 +8456,10 @@ static const struct hda_fixup alc269_fixups[] = {
 		.chained = true,
 		.chain_id = ALC256_FIXUP_ASUS_HEADSET_MODE
 	},
+	[ALC269_FIXUP_HEADSET_AYA_2] = {
+		.type = HDA_FIXUP_FUNC,
+		.v.func = alc269_fixup_headphone_volume,
+	},
 	[ALC269_FIXUP_HEADSET_AYA_GEEK] = {
 		.type = HDA_FIXUP_FUNC,
 		.v.func = alc269_fixup_headphone_volume,
@@ -9953,6 +9958,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
 	SND_PCI_QUIRK(0x1d72, 0x1901, "RedmiBook 14", ALC256_FIXUP_ASUS_HEADSET_MIC),
 	SND_PCI_QUIRK(0x1d72, 0x1945, "Redmi G", ALC256_FIXUP_ASUS_HEADSET_MIC),
 	SND_PCI_QUIRK(0x1d72, 0x1947, "RedmiBook Air", ALC255_FIXUP_XIAOMI_HEADSET_MIC),
+	SND_PCI_QUIRK(0x1f66, 0x0101, "AYANEO 2", ALC269_FIXUP_HEADSET_AYA_2),
 	SND_PCI_QUIRK(0x1f66, 0x0101, "GEEK", ALC269_FIXUP_HEADSET_AYA_GEEK),
 	SND_PCI_QUIRK(0x8086, 0x2074, "Intel NUC 8", ALC233_FIXUP_INTEL_NUC8_DMIC),
 	SND_PCI_QUIRK(0x8086, 0x2080, "Intel NUC 8 Rugged", ALC256_FIXUP_INTEL_NUC8_RUGGED),
-- 
2.41.0
Re: [PATCH 2/2] ALSA: hda/realtek: Add headphone quirk for Aya Neo 2
Posted by Takashi Iwai 2 years, 6 months ago
On Wed, 02 Aug 2023 17:37:30 +0200,
Matthew Anderson wrote:
> 
> This fixes the headphones on the Aya Neo 2 handheld.
> Signed-off-by: Matthew Anderson <ruinairas1992@gmail.com>
> ---
>  sound/pci/hda/patch_realtek.c | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
> index 33f9beec8179..5d31cbe5d40b 100644
> --- a/sound/pci/hda/patch_realtek.c
> +++ b/sound/pci/hda/patch_realtek.c
> @@ -7030,6 +7030,7 @@ enum {
>  	ALC269_FIXUP_DELL3_MIC_NO_PRESENCE,
>  	ALC269_FIXUP_DELL4_MIC_NO_PRESENCE,
>  	ALC269_FIXUP_DELL4_MIC_NO_PRESENCE_QUIET,
> +	ALC269_FIXUP_HEADSET_AYA_2,
>  	ALC269_FIXUP_HEADSET_AYA_GEEK,
>  	ALC269_FIXUP_HEADSET_MODE,
>  	ALC269_FIXUP_HEADSET_MODE_NO_HP_MIC,
> @@ -8455,6 +8456,10 @@ static const struct hda_fixup alc269_fixups[] = {
>  		.chained = true,
>  		.chain_id = ALC256_FIXUP_ASUS_HEADSET_MODE
>  	},
> +	[ALC269_FIXUP_HEADSET_AYA_2] = {
> +		.type = HDA_FIXUP_FUNC,
> +		.v.func = alc269_fixup_headphone_volume,
> +	},
>  	[ALC269_FIXUP_HEADSET_AYA_GEEK] = {
>  		.type = HDA_FIXUP_FUNC,
>  		.v.func = alc269_fixup_headphone_volume,
> @@ -9953,6 +9958,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
>  	SND_PCI_QUIRK(0x1d72, 0x1901, "RedmiBook 14", ALC256_FIXUP_ASUS_HEADSET_MIC),
>  	SND_PCI_QUIRK(0x1d72, 0x1945, "Redmi G", ALC256_FIXUP_ASUS_HEADSET_MIC),
>  	SND_PCI_QUIRK(0x1d72, 0x1947, "RedmiBook Air", ALC255_FIXUP_XIAOMI_HEADSET_MIC),
> +	SND_PCI_QUIRK(0x1f66, 0x0101, "AYANEO 2", ALC269_FIXUP_HEADSET_AYA_2),
>  	SND_PCI_QUIRK(0x1f66, 0x0101, "GEEK", ALC269_FIXUP_HEADSET_AYA_GEEK),
>  	SND_PCI_QUIRK(0x8086, 0x2074, "Intel NUC 8", ALC233_FIXUP_INTEL_NUC8_DMIC),
>  	SND_PCI_QUIRK(0x8086, 0x2080, "Intel NUC 8 Rugged", ALC256_FIXUP_INTEL_NUC8_RUGGED),

Hmm, both devices have the very same SSID (1f66:0101)?  Then it's
superfluous.

And, if you have two devices that require the same quirk but with
different SSIDs, both can use the same ALC269_FIXUP_HEADSET_AYA_GEEK,
instead of defining two.


thanks,

Takashi