Bug 1219803

Summary: Lenovo Yoga 14APH8 headphones jack requires bass speaker to be full volume
Product: [openSUSE] openSUSE Tumbleweed Reporter: Guillaume Pinchon <pinchon.guillaume>
Component: SoundAssignee: Takashi Iwai <tiwai>
Status: NEW --- QA Contact: E-mail List <qa-bugs>
Severity: Major    
Priority: P5 - None    
Version: Current   
Target Milestone: ---   
Hardware: x86-64   
OS: openSUSE Tumbleweed   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: Here is the output of alsa-info.sh

Description Guillaume Pinchon 2024-02-11 19:36:32 UTC
Symptoms :
When connecting headphones to the laptop's jack it's required to set the Bass Speaker to full volume through alsamixer otherwise we get no sound.

Either that or replacing in /usr/share/alsa-card-profile/mixer/paths/analog-output-headphones.conf :
[Element Bass Speaker]
switch = off
volume = off
with :
[Element Bass Speaker]
switch = off
volume = merge

System info :
Operating System: openSUSE Tumbleweed 20240209
KDE Plasma Version: 5.27.10
KDE Frameworks Version: 5.114.0
Qt Version: 5.15.12
Kernel Version: 6.8.0-rc3-3.g7450939-default (64-bit)
Graphics Platform: X11
Processors: 16 × AMD Ryzen 7 7840HS with Radeon 780M Graphics
Memory: 27.1 Gio of RAM
Graphics Processor: AMD Radeon Graphics
Manufacturer: LENOVO
Product Name: 82Y8
System Version: Yoga Pro 7 14APH8

hwinfo --sound :
12: PCI 6300.1: 0403 Audio device                               
  [Created at pci.386]
  Unique ID: UGCg.OQPqPLYNCh0
  Parent ID: JZZT.maS73mB38XF
  SysFS ID: /devices/pci0000:00/0000:00:08.1/0000:63:00.1
  SysFS BusID: 0000:63:00.1
  Hardware Class: sound
  Model: "ATI Audio device"
  Vendor: pci 0x1002 "ATI Technologies Inc"
  Device: pci 0x1640 
  SubVendor: pci 0x17aa "Lenovo"
  SubDevice: pci 0x3824 
  Driver: "snd_hda_intel"
  Driver Modules: "snd_hda_intel"
  Memory Range: 0x785c8000-0x785cbfff (rw,non-prefetchable)
  IRQ: 90 (no events)
  Module Alias: "pci:v00001002d00001640sv000017AAsd00003824bc04sc03i00"
  Driver Info #0:
    Driver Status: snd_hda_intel is active
    Driver Activation Cmd: "modprobe snd_hda_intel"
  Config Status: cfg=new, avail=yes, need=no, active=unknown
  Attached to: #27 (PCI bridge)

22: PCI 6300.6: 0403 Audio device
  [Created at pci.386]
  Unique ID: puer.m6xb4yIjnP9
  Parent ID: JZZT.maS73mB38XF
  SysFS ID: /devices/pci0000:00/0000:00:08.1/0000:63:00.6
  SysFS BusID: 0000:63:00.6
  Hardware Class: sound
  Model: "AMD Family 17h (Models 10h-1fh) HD Audio Controller"
  Vendor: pci 0x1022 "AMD"
  Device: pci 0x15e3 "Family 17h (Models 10h-1fh) HD Audio Controller"
  SubVendor: pci 0x17aa "Lenovo"
  SubDevice: pci 0x3882 
  Driver: "snd_hda_intel"
  Driver Modules: "snd_hda_intel"
  Memory Range: 0x785c0000-0x785c7fff (rw,non-prefetchable)
  IRQ: 43 (327 events)
  Module Alias: "pci:v00001022d000015E3sv000017AAsd00003882bc04sc03i00"
  Driver Info #0:
    Driver Status: snd_hda_intel is active
    Driver Activation Cmd: "modprobe snd_hda_intel"
  Config Status: cfg=new, avail=yes, need=no, active=unknown
  Attached to: #27 (PCI bridge)
Comment 1 Takashi Iwai 2024-02-13 08:12:57 UTC
Please give alsa-info.sh output.  Run the script with --no-upload option, and attach the output to Bugzilla (don't paste).
Comment 2 Guillaume Pinchon 2024-02-13 11:01:27 UTC
Created attachment 872699 [details]
Here is the output of alsa-info.sh
Comment 3 Takashi Iwai 2024-02-19 14:32:24 UTC
Thanks.  The problem is that this device has only two DACs while there are three outputs (speaker, bass speaker and headphone).  So the driver tried to assign front and bass, while sharing the same DAC between the bass and the headphone.
Admittedly, this doesn't look ideal assignment.

We may assign one volume for both speaker and bass speaker (those are tied), and another for the headphone, too.  It's a question of trade-off.

I'll check a bit more deeply later.
Comment 4 Guillaume Pinchon 2024-02-20 23:10:19 UTC
(In reply to Takashi Iwai from comment #3)
> Thanks.  The problem is that this device has only two DACs while there are
> three outputs (speaker, bass speaker and headphone).  So the driver tried to
> assign front and bass, while sharing the same DAC between the bass and the
> headphone.
> Admittedly, this doesn't look ideal assignment.
> 
> We may assign one volume for both speaker and bass speaker (those are tied),
> and another for the headphone, too.  It's a question of trade-off.
> 
> I'll check a bit more deeply later.

Thank you very much, while we're at it, I think adding a pass-band filter to the tweeters and bass speakers would help a lot, but I'm unsure if it's already the case and if not if I should open a new ticket to suggest it.