Bug 195049 - Laptop audio only plays from Subwoofer, not Speakers (ALC255)
Summary: Laptop audio only plays from Subwoofer, not Speakers (ALC255)
Status: NEW
Alias: None
Product: Drivers
Classification: Unclassified
Component: Sound(ALSA) (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: Jaroslav Kysela
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-03-26 21:45 UTC by Sean Rhone
Modified: 2017-05-02 22:47 UTC (History)
0 users

See Also:
Kernel Version: 4.11.0-0.rc8
Subsystem:
Regression: No
Bisected commit-id:


Attachments
Registry export from Windows for pin layouts (238.70 KB, text/x-ms-regedit)
2017-05-01 15:29 UTC, Sean Rhone
Details

Description Sean Rhone 2017-03-26 21:45:15 UTC
Laptop: Acer Predator G9-791 (V1.10 BIOS)
Codec: ALC255

My laptop has two speakers (front left and right), and a subwoofer. Both left and right channel audio only plays out the subwoofer and nothing out of the left and right speakers.

That is only the case with the internal speakers though. If I hook up external speakers over 3.5mm, audio is fine out of the external speakers.
Comment 1 Sean Rhone 2017-05-01 15:29:24 UTC
Created attachment 256159 [details]
Registry export from Windows for pin layouts
Comment 2 Sean Rhone 2017-05-01 23:58:10 UTC
Played around with HDAAnalyzer a bit and I believe I got a fix. The following HDA verbs unmute the left and right speakers, and allows the amp to power them:

sudo hda-verb '/dev/snd/hwC0D0' '0x1b' '0x300' '0x9000'

sudo hda-verb '/dev/snd/hwC0D0' '0x1b' '0x300' '0xa000'

sudo hda-verb '/dev/snd/hwC0D0' '0x1b' '0x707' '0x60'

In HDAAnalyzer, the same can be accomplished by going under card-0 > codec-0 > Node[0x1b] PIN, going under the Output Amplifer section, unmuting Val[0] and Val[1], going under Widget Control, and selecting OUT.
Comment 3 Sean Rhone 2017-05-02 22:47:31 UTC
Here's the diff from HDAAnalyzer also:

Diff for codec 0/0 (0x10ec0255):
--- 
+++ 
@@ -184,25 +184,25 @@
     DefAssociation = 0x3, Sequence = 0x0
   Pin-ctls: 0x24: IN VREF_80
   Unsolicited: tag=0x02, enabled=1
   Power: setting=D3, actual=D3
 Node 0x1b [Pin Complex] wcaps 0x40058f: Stereo Amp-In Amp-Out
   Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
   Amp-In vals: [0x00 0x00]
   Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
-  Amp-Out vals: [0x80 0x80]
+  Amp-Out vals: [0x00 0x00]
   Pincap 0x0001373c: IN OUT HP EAPD Detect
     Vref caps: HIZ 50 GRD 80 100
   EAPD 0x2: EAPD
   Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
     Conn = 1/8, Color = Black
     DefAssociation = 0xf, Sequence = 0x0
     Misc = NO_PRESENCE
-  Pin-ctls: 0x20: IN VREF_HIZ
+  Pin-ctls: 0x60: IN OUT VREF_HIZ
   Unsolicited: tag=0x00, enabled=0
   Power: setting=D3, actual=D3
   Connection: 2
      0x0c* 0x0d
 Node 0x1c [Vendor Defined Widget] wcaps 0xf00000: Mono
 Node 0x1d [Pin Complex] wcaps 0x400400: Mono
   Pincap 0x00000020: IN
   Pin Default 0x40e89b2d: [N/A] Reserved at Ext N/

Note You need to log in before you can comment on or make changes to this bug.