diff mbox series

[v2] ALSA: hda/realtek: Enable headset mic on IdeaPad 330-17IKB 81DM

Message ID 20240615125457.167844-1-rauty@altlinux.org
State New
Headers show
Series [v2] ALSA: hda/realtek: Enable headset mic on IdeaPad 330-17IKB 81DM | expand

Commit Message

Rauty June 15, 2024, 12:54 p.m. UTC
Headset microphone do not work out of the box with this laptop. This
quirk fixes it. Zihao Wang specified the wrong subsystem id in his patch.

Link: https://lore.kernel.org/all/20220424084120.74125-1-wzhd@ustc.edu/
Fixes: 3b79954fd00d ("ALSA: hda/realtek: Add quirk for Yoga Duet 7 13ITL6 speakers")
Signed-off-by: Ajrat Makhmutov <rauty@altlinux.org>
---
 sound/pci/hda/patch_realtek.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Rauty June 24, 2024, 8:25 a.m. UTC | #1
I haven't changed the patch yet, but it's already in the stable-queue:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/stable-queue.git/tree/queue-5.10/alsa-hda-realtek-enable-headset-mic-on-ideapad-330-1.patch
Do you still need changes from me?
Gergo Koteles June 25, 2024, 1:32 p.m. UTC | #2
Hey Rauty,

On Mon, 2024-06-24 at 11:25 +0300, Rauty wrote:
> I haven't changed the patch yet, but it's already in the stable-queue:
> https://git.kernel.org/pub/scm/linux/kernel/git/stable/stable-queue.git/tree/queue-5.10/alsa-hda-realtek-enable-headset-mic-on-ideapad-330-1.patch
> Do you still need changes from me?

I still think this breaks Duet 7 sound, because snd_hda_pick_fixup
function picks the PCI SSIDs before Codec SSIDs.
But maybe I missed something.

Takashi, what do you think?

Best regards,
Gergo Koteles
Takashi Iwai June 25, 2024, 1:37 p.m. UTC | #3
On Tue, 25 Jun 2024 15:32:16 +0200,
Gergo Koteles wrote:
> 
> Hey Rauty,
> 
> On Mon, 2024-06-24 at 11:25 +0300, Rauty wrote:
> > I haven't changed the patch yet, but it's already in the stable-queue:
> > https://git.kernel.org/pub/scm/linux/kernel/git/stable/stable-queue.git/tree/queue-5.10/alsa-hda-realtek-enable-headset-mic-on-ideapad-330-1.patch
> > Do you still need changes from me?
> 
> I still think this breaks Duet 7 sound, because snd_hda_pick_fixup
> function picks the PCI SSIDs before Codec SSIDs.
> But maybe I missed something.
> 
> Takashi, what do you think?

Hm, a breakage looks possible, indeed.  I naively thought it being a
same model, but this is a different one.

We need an additional codec vendor or SSID check as done for other
machines.


Takashi
Rauty June 25, 2024, 2 p.m. UTC | #4
On Tue, 25 Jun 2024 at 16:32, Gergo Koteles <soyer@irl.hu> wrote:
> I still think this breaks Duet 7 sound, because snd_hda_pick_fixup
> function picks the PCI SSIDs before Codec SSIDs.

a piece of lspci from Lenovo IdeaPad 330-17IKB 81DM:
00:1f.3 Audio device [0403]: Intel Corporation Sunrise Point-LP HD
Audio [8086:9d71] (rev 21)
Subsystem: Lenovo Device [17aa:3837]
Kernel driver in use: snd_hda_intel

Since PCI SSIDs are in priority, I will specify it (0x3837).
Then this patch will not break the sound in the laptop and the change
will be minimal.
Takashi Iwai June 25, 2024, 2:07 p.m. UTC | #5
On Tue, 25 Jun 2024 16:00:57 +0200,
Rauty wrote:
> 
> On Tue, 25 Jun 2024 at 16:32, Gergo Koteles <soyer@irl.hu> wrote:
> > I still think this breaks Duet 7 sound, because snd_hda_pick_fixup
> > function picks the PCI SSIDs before Codec SSIDs.
> 
> a piece of lspci from Lenovo IdeaPad 330-17IKB 81DM:
> 00:1f.3 Audio device [0403]: Intel Corporation Sunrise Point-LP HD
> Audio [8086:9d71] (rev 21)
> Subsystem: Lenovo Device [17aa:3837]
> Kernel driver in use: snd_hda_intel
> 
> Since PCI SSIDs are in priority, I will specify it (0x3837).
> Then this patch will not break the sound in the laptop and the change
> will be minimal.

It's not about PCI SSID but the codec SSID.  It's found in the
corresponding /proc/asound/card*/codec#* file.  It might be the same
number as PCI SSID, though.  Please check both Vendor Id and Subsystem
Id lines.

And we need to know those numbers from the conflicting model (Yoga
Diet 7 13ITL6), too.


Takashi
Takashi Iwai June 25, 2024, 2:12 p.m. UTC | #6
On Tue, 25 Jun 2024 16:07:52 +0200,
Takashi Iwai wrote:
> 
> On Tue, 25 Jun 2024 16:00:57 +0200,
> Rauty wrote:
> > 
> > On Tue, 25 Jun 2024 at 16:32, Gergo Koteles <soyer@irl.hu> wrote:
> > > I still think this breaks Duet 7 sound, because snd_hda_pick_fixup
> > > function picks the PCI SSIDs before Codec SSIDs.
> > 
> > a piece of lspci from Lenovo IdeaPad 330-17IKB 81DM:
> > 00:1f.3 Audio device [0403]: Intel Corporation Sunrise Point-LP HD
> > Audio [8086:9d71] (rev 21)
> > Subsystem: Lenovo Device [17aa:3837]
> > Kernel driver in use: snd_hda_intel
> > 
> > Since PCI SSIDs are in priority, I will specify it (0x3837).
> > Then this patch will not break the sound in the laptop and the change
> > will be minimal.
> 
> It's not about PCI SSID but the codec SSID.  It's found in the
> corresponding /proc/asound/card*/codec#* file.  It might be the same
> number as PCI SSID, though.  Please check both Vendor Id and Subsystem
> Id lines.
> 
> And we need to know those numbers from the conflicting model (Yoga
> Diet 7 13ITL6), too.

No need to diet, but "duet" :)

Zihao, do you still have the access to this machine?
If yes, could you give alsa-info.sh output, or a proc file output?


thanks,

Takashi
Rauty June 25, 2024, 2:16 p.m. UTC | #7
On Tue, 25 Jun 2024 at 17:11, Takashi Iwai <tiwai@suse.de> wrote:
> Zihao, do you still have the access to this machine?
> If yes, could you give alsa-info.sh output, or a proc file output?

He sent it to me:
https://alsa-project.org/db/?f=268601dbdb76f9a4c18d71e210091ffed4bf2818
Takashi Iwai June 25, 2024, 2:26 p.m. UTC | #8
On Tue, 25 Jun 2024 16:16:56 +0200,
Rauty wrote:
> 
> On Tue, 25 Jun 2024 at 17:11, Takashi Iwai <tiwai@suse.de> wrote:
> > Zihao, do you still have the access to this machine?
> > If yes, could you give alsa-info.sh output, or a proc file output?
> 
> He sent it to me:
> https://alsa-project.org/db/?f=268601dbdb76f9a4c18d71e210091ffed4bf2818

Great.  Could you also give the one for IdeaPad 330?


thanks,

Takashi
Rauty June 25, 2024, 2:47 p.m. UTC | #9
On Tue, 25 Jun 2024 at 17:25, Takashi Iwai <tiwai@suse.de> wrote:
> Great.  Could you also give the one for IdeaPad 330?

http://alsa-project.org/db/?f=cb04b699a8aaa07e0bd992dfc92accb993dc0a97
Takashi Iwai June 25, 2024, 3:50 p.m. UTC | #10
On Tue, 25 Jun 2024 16:47:34 +0200,
Rauty wrote:
> 
> On Tue, 25 Jun 2024 at 17:25, Takashi Iwai <tiwai@suse.de> wrote:
> > Great.  Could you also give the one for IdeaPad 330?
> 
> http://alsa-project.org/db/?f=cb04b699a8aaa07e0bd992dfc92accb993dc0a97

Thanks.  I'll cook a fix patch and submit.


Takashi
diff mbox series

Patch

diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index aa76d1c88589..5ec95a7903b8 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -10502,7 +10502,7 @@  static const struct snd_pci_quirk alc269_fixup_tbl[] = {
 	SND_PCI_QUIRK(0x17aa, 0x3813, "Legion 7i 15IMHG05", ALC287_FIXUP_LEGION_15IMHG05_SPEAKERS),
 	SND_PCI_QUIRK(0x17aa, 0x3818, "Lenovo C940 / Yoga Duet 7", ALC298_FIXUP_LENOVO_C940_DUET7),
 	SND_PCI_QUIRK(0x17aa, 0x3819, "Lenovo 13s Gen2 ITL", ALC287_FIXUP_13S_GEN2_SPEAKERS),
-	SND_PCI_QUIRK(0x17aa, 0x3820, "Yoga Duet 7 13ITL6", ALC287_FIXUP_YOGA7_14ITL_SPEAKERS),
+	SND_PCI_QUIRK(0x17aa, 0x3820, "IdeaPad 330-17IKB 81DM", ALC269_FIXUP_ASPIRE_HEADSET_MIC),
 	SND_PCI_QUIRK(0x17aa, 0x3824, "Legion Y9000X 2020", ALC285_FIXUP_LEGION_Y9000X_SPEAKERS),
 	SND_PCI_QUIRK(0x17aa, 0x3827, "Ideapad S740", ALC285_FIXUP_IDEAPAD_S740_COEF),
 	SND_PCI_QUIRK(0x17aa, 0x3834, "Lenovo IdeaPad Slim 9i 14ITL5", ALC287_FIXUP_YOGA7_14ITL_SPEAKERS),