Bug 67711 - Sound only works after resume from suspend
Summary: Sound only works after resume from suspend
Status: NEEDINFO
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: 2013-12-25 19:40 UTC by Pedro Francisco
Modified: 2015-08-11 09:27 UTC (History)
7 users (show)

See Also:
Kernel Version: 3.12.5
Tree: Mainline
Regression: No


Attachments
diff of ALSA info of sound not working and ALSA info of sound working (4.79 KB, patch)
2013-12-25 19:40 UTC, Pedro Francisco
Details | Diff
2nd diff of ALSA info of sound not working and ALSA info of sound working (4.53 KB, patch)
2013-12-29 20:29 UTC, Pedro Francisco
Details | Diff
Test patch (396 bytes, patch)
2014-01-07 14:08 UTC, Takashi Iwai
Details | Diff

Description Pedro Francisco 2013-12-25 19:40:57 UTC
Created attachment 119591 [details]
diff of ALSA info of sound not working and ALSA info of sound working

Hello!
I have a laptop, model Asus n550jv, where the speakers don't work.

It appears as if suspending and resuming the laptop enables the speakers, however.

ALSA info of sound not working @ http://www.alsa-project.org/db/?f=3006c3ebd6776648de3e5a8f595388bf6e7f3e70


ALSA info of sound working @ http://www.alsa-project.org/db/?f=994922389102462111c0d4b3d883afdd760e528c



A preliminary overview appears to indicate the power is never set to D0 on boot.

As an appetizer, diff of above logs is attached.

A _snippet_ of the diff:
@@ -164,7 +164,7 @@ Node 0x03 [Audio Output] wcaps 0x6611: 8-Channels Digital
     bits [0x1e]: 16 20 24 32
     formats [0x5]: PCM AC3
   Power states:  D0 D3 EPSS
-  Power: setting=D3, actual=D3
+  Power: setting=D0, actual=D0
 Node 0x04 [Audio Output] wcaps 0x6611: 8-Channels Digital
   Converter: stream=0, channel=0
   Digital: Enabled KAE
@@ -175,7 +175,7 @@ Node 0x04 [Audio Output] wcaps 0x6611: 8-Channels Digital
     bits [0x1e]: 16 20 24 32
     formats [0x5]: PCM AC3
   Power states:  D0 D3 EPSS
-  Power: setting=D3, actual=D3
+  Power: setting=D0, actual=D0
 Node 0x05 [Pin Complex] wcaps 0x40778d: 8-Channels Digital Amp-Out CP
   Control: name="HDMI/DP,pcm=3 Jack", index=0, device=0
   Control: name="IEC958 Playback Con Mask", index=0, device=0


There are, however, more differences than those.
Comment 1 Takashi Iwai 2013-12-26 08:44:27 UTC
These D3 are about HDMI/DP ports, thus it must be irrelevant from the analog speaker outputs.

What if you pass power_save_controller=0 option to snd-hda-intel module?
Comment 2 Pedro Francisco 2013-12-29 20:28:40 UTC
power_save_controller=0 does not work.

More info: the sound just doesn't work after coming from Windows. After getting it to work (suspending), rebooting will keep it working.

I updated the BIOS/UEFI in the meantime (still doesn't work). Anyway, here are the new logs:

Sound not working:
http://www.alsa-project.org/db/?f=f774eddd1e6442c09153d109b6183fab8146b1ba

Sound working:
http://www.alsa-project.org/db/?f=a3bb30fbeb24c9ce10b295d200c75d459ad0b499


So maybe it's the pin default that is wrong?

@@ -213,9 +213,9 @@ Node 0x06 [Pin Complex] wcaps 0x40778d: 8-Channels Digital Amp-Out CP
   Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
   Amp-Out vals:  [0x00 0x00]
   Pincap 0x0b000094: OUT Detect HBR HDMI DP
-  Pin Default 0x18560010: [Jack] Digital Out at Int HDMI
+  Pin Default 0x18560020: [Jack] Digital Out at Int HDMI
     Conn = Digital, Color = Unknown
-    DefAssociation = 0x1, Sequence = 0x0
+    DefAssociation = 0x2, Sequence = 0x0
   Pin-ctls: 0x00:
   Unsolicited: tag=02, enabled=1
   Power states:  D0 D3 EPSS
@@ -234,9 +234,9 @@ Node 0x07 [Pin Complex] wcaps 0x40778d: 8-Channels Digital Amp-Out CP
   Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
   Amp-Out vals:  [0x00 0x00]
   Pincap 0x0b000094: OUT Detect HBR HDMI DP
-  Pin Default 0x18560010: [Jack] Digital Out at Int HDMI
+  Pin Default 0x58560030: [N/A] Digital Out at Int HDMI
     Conn = Digital, Color = Unknown
-    DefAssociation = 0x1, Sequence = 0x0
+    DefAssociation = 0x3, Sequence = 0x0
   Pin-ctls: 0x00:
   Unsolicited: tag=03, enabled=1
   Power states:  D0 D3 EPSS
Comment 3 Pedro Francisco 2013-12-29 20:29:30 UTC
Created attachment 120091 [details]
2nd diff of ALSA info of sound not working and ALSA info of sound working
Comment 4 Takashi Iwai 2014-01-07 14:08:30 UTC
The pin configuration of Haswell HDMI codec is dynamically set by the graphics chip, and it's irrelevant from the analog I/O.  You can forget about it.

The fact that it works after Windows boot implies that the problem is some missing COEF setups.  Unfortunately, this is vendor-specific and Realtek doesn't open the COEF things.

As a blind shot, could you try the patch below?
Comment 5 Takashi Iwai 2014-01-07 14:08:57 UTC
Created attachment 121191 [details]
Test patch
Comment 6 iateyourgranny 2014-02-18 23:33:20 UTC
Confirming the bug on another ASUS N550JV (non-touchscreen). I think what the OP means is that the speakers don't work after rebooting from Windows.

This is my experience:
- After a soft reboot from Windows, the speakers on any linux distribution (including Linux Mint, Archbang (live USB)) does not work. However, you can hear the sound from the headphones jack. Instead of a soft reboot from Windows, if you shut down and then start the laptop, the speakers work fine. Furthermore, it would seem that when the speakers don't work, the volume controls still show up on ALSAmixer but not on PulseAudio.

I think this is related to the many instances of Linux and Windows muting each-others' headphones / speakers. On my last laptop (Dell N5110), it used to be that Linux would mute Windows' headphones unless they were plugged in on reboot, and Windows would mute Linux's speakers if the headphones were plugged in on Windows reboot.
Comment 7 Pedro Francisco 2014-02-24 15:16:51 UTC
Yes, both a hard startup and a resume from suspend avoids/fixes the issue.

iateyourgranny, I haven't tested the patch yet. Can you test it instead?
Comment 8 Pedro Francisco 2014-05-17 16:33:07 UTC
@Takashi Iwai: the patch did not work.
Comment 9 Takashi Iwai 2014-05-18 07:35:52 UTC
Then it's likely some incompatible/missing COEF setup.

You can try to get COEF values by hda-verb (SET_COEF_INDEX then GET_COEF_PROC) in both working and non-working states.  The COEF registers aren't seen in alsa-info.sh output, so you need to check it manually.
Comment 10 Mosty Mostacho 2014-06-02 07:50:23 UTC
Hi,

I can confirm I have no sound in my Asus N550JV either using kernel:

3.14-1-amd64 #1 SMP Debian 3.14.4-1 (2014-05-13) x86_64 GNU/Linux

Putting it to sleep seems to fix the issue.

Booting Linux many consecutive times did not fix the issue.

I'm open to provide more info, if necessary -- note I'm a newbie so I require detailed steps :).

Thanks.
Comment 11 rcrogers 2014-06-12 23:18:15 UTC
I'm having the same problem on an ASUS N550JK-DS71T.  Sound doesn't work after a reboot, but does work after a suspend.
Comment 12 rcrogers 2014-06-12 23:20:15 UTC
Info for the above comment:
Linux rcr-asus-mint 3.11.0-12-generic #19-Ubuntu SMP Wed Oct 9 16:20:46 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
Comment 13 Pedro Francisco 2014-10-10 13:08:17 UTC
I'm no longer dual-booting.

If anyone else can pick up from where I left, nice. Otherwise, I think this can be closed.



Takashi Iwai: before giving up dual-booting I wasn't able to understand how hda-verb was used. Can you point to the others here how to do it, if possible?

Anyway, thank you for your time :)
Comment 14 Rodrigo Machuca 2015-07-31 18:40:41 UTC
Apologies for bringing an old thread back, but I am currently experiencing the same symptoms as described here:

* Dual Booting Windows and Linux Mint.
* No sound on internal Speakers when coming from Windows boot.
* Suspend / Resume brings sound back.

$ lsb_release -a
No LSB modules are available.
Distributor ID: LinuxMint
Description:    Linux Mint 17.2 Rafaela
Release:        17.2
Codename:       rafaela

$ uname -r
3.16.0-38-generic

# dmidecode -t system

# dmidecode 2.12
# SMBIOS entry point at 0x7af42418
SMBIOS 2.7 present.

Handle 0x0001, DMI type 1, 27 bytes
System Information
        Manufacturer: ASUSTeK COMPUTER INC.
        Product Name: G751JM
        Version: 1.0       
        Serial Number: EAN0WU25257842E     
        UUID: 4DA373B1-FF02-D44E-9A9B-AC9E17410952
        Wake-up Type: Power Switch
        SKU Number: ASUS-NotebookSKU
        Family: G

Handle 0x0006, DMI type 12, 5 bytes
System Configuration Options
        Option 1: DSN:3SX29JFC196719                  
        Option 2: DSN:25901471E9CA                    
        Option 3: DSN:AC9E17410952                    
        Option 4: SMI:00B2CA

Handle 0x0007, DMI type 32, 20 bytes
System Boot Information
        Status: No errors detected

$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: HDMI [HDA Intel HDMI], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: HDMI [HDA Intel HDMI], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: HDMI [HDA Intel HDMI], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: PCH [HDA Intel PCH], device 0: ALC668 Analog [ALC668 Analog]
  Subdevices: 0/1
  Subdevice #0: subdevice #0
card 1: PCH [HDA Intel PCH], device 1: ALC668 Digital [ALC668 Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0


I would like to follow this if possible (can provide required information if guided), or please let me know how to proceed to fix root cause of this.

PS: Not enough experience with ALSA.

Regards,
Comment 15 Pedro Francisco 2015-08-11 09:27:00 UTC
To the guy above: check comment 9 . The hda-verb may help you. Unfortunately, I don't know how to use it.

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