After kernel upgrade to v ~~> 4.1.0, no audio output unless UNPLUG/RE-PLUGIN of audio jack on card; OK with earlier kernels
diff mbox

Message ID 1436128748.1442900.315748449.28688C30@webmail.messagingengine.com
State New
Headers show

Commit Message

robert.devanna@nospammail.net July 5, 2015, 8:39 p.m. UTC
I run Opensuse 13.2/64.

My audio system has been / is ALSA, not PulseAudio.

I have installed

	rpm -qa | grep -i alsa
		alsa-utils-1.0.29-143.1.x86_64
		alsa-plugins-jack-1.0.29-99.1.x86_64
		alsa-firmware-1.0.29-33.1.noarch
		alsa-devel-1.0.29-218.1.x86_64
		alsa-plugins-1.0.29-99.1.x86_64
		alsa-1.0.29-218.1.x86_64
		alsa-oss-1.0.28-51.1.x86_64
		alsa-docs-1.0.29-218.1.noarch

It's run fine for ages.  In the past week -- after a bunch of zypper (distro packages) upgrades, and no I don't know which one specifically -- I now have an audio problem.

When I boot my machine there's no audio output.

Every alsa/sound diagnostic I ran said everything's OK.

Took me awhile to figure out that simply UNPLUGGING the audio jack from the mobo socket, then replugging it in fixes the audio -- immediately.

Chatting in #irc, suggestion was to check kernel version dependency.

I'm currently on latest stable kernel 4.1.X.

	uname -rm
		4.1.1-1.ga46abf6-desktop x86_64

I am absolutely sure that this was NOT a problem in the 4.0.X kernel branch.
I am pretty-darn-sure that this was NOT a problem in earlier 4.1.X branch.

Unfortunately, I only had access to

	4.1.1-1.1.ga46abf6
	4.1.0-3.g5ee367d

and

	3.16.7-21.1.x86_64

no longer any earlier 4.1.X or 4.0.X kernels.

Testing each of those

	4.1.1-1.1.ga46abf6  --> FAILs
	4.1.0-3.g5ee367d    --> FAILs
	3.16.7-21.1.x86_64  --> WORKs

so at least from 3.16.7 -> 4.1.0 there's a kernel dependency.  Again, I'm pretty certain that this was NOT a problem with earlier 4.1.X and 4.0.X kernels; just can't prove it.

As instructed in IRC, I DL'd and exec'd the 'alsa-info.sh' script.

I ran the script in 2 cases:

	[1] boot to console, kernel 4.1.1-1.1.ga46abf6, no audio output
	[2] boot to console, kernel 4.1.1-1.1.ga46abf6, unplug & replug, OK audio output

First, the DIFF between the two shows there IS a change on UNPLUG/REPLUG of the jack,

DIFF:
------------------------------------------
------------------------------------------

Since the output's too big for the list, apparently, I pastebin'd the full script output 

	[1] -> http://pastebin.com/jUyTRrFG
	[2] -> http://pastebin.com/4V8YCguV

- Rob

Comments

robert.devanna@nospammail.net July 5, 2015, 11:04 p.m. UTC | #1
As add'l info

with guidance from #irc, I've tried 

adding 

	/etc/modprodbe.d/50-sound.conf
		...
	+	options snd-hda-intel power_save_controller=0

and adding

	/etc/init.d/after.local
		...
	+	hda-verb /dev/snd/hwC0D0 0x1c SET_POWER_STATE 0

and launching

	cat /usr/local/scripts/alsa-fix.sh 
		#!/bin/bash
		sudo hda-verb /dev/snd/hwC0D0 0x1c SET_POWER_STATE 0

as a KDE startup script,

and exec'ing

	hda-verb /dev/snd/hwC0D0 0x1c SET_POWER_STATE 0

@ desktop shell as uid=<myuser>

None work.

The one thing that DOES work, so far, is @ desktop shell, exec of

	sudo hda-verb /dev/snd/hwC0D0 0x1c SET_POWER_STATE 0

as sudo (root).

On exec, I hear a 'pop' through the speakers, and immediately after I can play audio -- withOUT having to physically UNPLUG/REPLUGIN the jack.

Clearly, I can't figure out how to automate this workaround -- not clear where else to try it.  Begs the question why it only works in this case.

- Rob
Takashi Iwai July 6, 2015, 8:46 a.m. UTC | #2
At Sun, 05 Jul 2015 13:39:08 -0700,
robert.devanna@nospammail.net wrote:
> 
> I run Opensuse 13.2/64.
> 
> My audio system has been / is ALSA, not PulseAudio.
> 
> I have installed
> 
> 	rpm -qa | grep -i alsa
> 		alsa-utils-1.0.29-143.1.x86_64
> 		alsa-plugins-jack-1.0.29-99.1.x86_64
> 		alsa-firmware-1.0.29-33.1.noarch
> 		alsa-devel-1.0.29-218.1.x86_64
> 		alsa-plugins-1.0.29-99.1.x86_64
> 		alsa-1.0.29-218.1.x86_64
> 		alsa-oss-1.0.28-51.1.x86_64
> 		alsa-docs-1.0.29-218.1.noarch
> 
> It's run fine for ages.  In the past week -- after a bunch of zypper (distro packages) upgrades, and no I don't know which one specifically -- I now have an audio problem.
> 
> When I boot my machine there's no audio output.
> 
> Every alsa/sound diagnostic I ran said everything's OK.
> 
> Took me awhile to figure out that simply UNPLUGGING the audio jack from the mobo socket, then replugging it in fixes the audio -- immediately.
> 
> Chatting in #irc, suggestion was to check kernel version dependency.
> 
> I'm currently on latest stable kernel 4.1.X.
> 
> 	uname -rm
> 		4.1.1-1.ga46abf6-desktop x86_64
> 
> I am absolutely sure that this was NOT a problem in the 4.0.X kernel branch.
> I am pretty-darn-sure that this was NOT a problem in earlier 4.1.X branch.
> 
> Unfortunately, I only had access to
> 
> 	4.1.1-1.1.ga46abf6
> 	4.1.0-3.g5ee367d
> 
> and
> 
> 	3.16.7-21.1.x86_64
> 
> no longer any earlier 4.1.X or 4.0.X kernels.
> 
> Testing each of those
> 
> 	4.1.1-1.1.ga46abf6  --> FAILs
> 	4.1.0-3.g5ee367d    --> FAILs
> 	3.16.7-21.1.x86_64  --> WORKs
> 
> so at least from 3.16.7 -> 4.1.0 there's a kernel dependency.  Again, I'm pretty certain that this was NOT a problem with earlier 4.1.X and 4.0.X kernels; just can't prove it.
> 
> As instructed in IRC, I DL'd and exec'd the 'alsa-info.sh' script.
> 
> I ran the script in 2 cases:
> 
> 	[1] boot to console, kernel 4.1.1-1.1.ga46abf6, no audio output
> 	[2] boot to console, kernel 4.1.1-1.1.ga46abf6, unplug & replug, OK audio output
> 
> First, the DIFF between the two shows there IS a change on UNPLUG/REPLUG of the jack,
> 
> DIFF:
> ------------------------------------------
> --- alsa-info.txt.BEFORE	2015-07-05 12:32:44.973554471 -0700
> +++ alsa-info.txt.AFTER	2015-07-05 12:34:01.935900433 -0700
> @@ -3,7 +3,7 @@
>  !!ALSA Information Script v 0.4.64
>  !!################################
>  
> -!!Script ran on: Sun Jul  5 19:32:43 UTC 2015
> +!!Script ran on: Sun Jul  5 19:34:00 UTC 2015
>  
>  
>  !!Linux Distribution
> @@ -332,7 +332,7 @@
>    Pin-ctls: 0x40: OUT
>    Unsolicited: tag=01, enabled=1
>    Power states:  D0 D1 D2 D3
> -  Power: setting=D3, actual=D3
> +  Power: setting=D0, actual=D0
>    Connection: 1
>       0x16
>  Node 0x1d [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
> @@ -602,7 +602,7 @@
>  crw-rw---- 1 root audio 116,  6 Jul  5 12:31 /dev/snd/hwC0D0
>  crw-rw---- 1 root audio 116, 10 Jul  5 12:31 /dev/snd/hwC2D0
>  crw-rw---- 1 root audio 116,  4 Jul  5 12:31 /dev/snd/pcmC0D0c
> -crw-rw---- 1 root audio 116,  3 Jul  5 12:32 /dev/snd/pcmC0D0p
> +crw-rw---- 1 root audio 116,  3 Jul  5 12:33 /dev/snd/pcmC0D0p
>  crw-rw---- 1 root audio 116,  5 Jul  5 12:31 /dev/snd/pcmC0D3p
>  crw-rw---- 1 root audio 116, 12 Jul  5 12:31 /dev/snd/pcmC1D0c
>  crw-rw---- 1 root audio 116,  8 Jul  5 12:31 /dev/snd/pcmC2D3p
> ------------------------------------------
> 
> Since the output's too big for the list, apparently, I pastebin'd the full script output 
> 
> 	[1] -> http://pastebin.com/jUyTRrFG
> 	[2] -> http://pastebin.com/4V8YCguV

The most important bit wasn't shown in the mail -- the codec name.

It's a known problem with VIA codecs, and the fix was already merged
in 4.2-rc1, the commit 735c75cf4d434862e38c01dcfb2ce8d2fcb9035f.
The next stable 4.1.x kernel should contain the fix.


thanks,

Takashi
robert.devanna@nospammail.net July 6, 2015, 1:02 p.m. UTC | #3
On Mon, Jul 6, 2015, at 01:46 AM, Takashi Iwai wrote:
> The most important bit wasn't shown in the mail -- the codec name.
>
> It's a known problem with VIA codecs, and the fix was already merged
> in 4.2-rc1, the commit 735c75cf4d434862e38c01dcfb2ce8d2fcb9035f.
> The next stable 4.1.x kernel should contain the fix.

I didn't realize the script wouldn't grab the important info needed.

I think this does say it's a VIA codec here?

aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: SB [HDA ATI SB], device 0: VT1708S Analog [VT1708S Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: SB [HDA ATI SB], device 3: VT1708S Digital [VT1708S Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

cat /proc/asound/card0/codec* | grep Codec
Codec: VIA VT1708S
Takashi Iwai July 6, 2015, 1:12 p.m. UTC | #4
At Mon, 06 Jul 2015 06:02:32 -0700,
robert.devanna@nospammail.net wrote:
> 
> 
> 
> On Mon, Jul 6, 2015, at 01:46 AM, Takashi Iwai wrote:
> > The most important bit wasn't shown in the mail -- the codec name.
> >
> > It's a known problem with VIA codecs, and the fix was already merged
> > in 4.2-rc1, the commit 735c75cf4d434862e38c01dcfb2ce8d2fcb9035f.
> > The next stable 4.1.x kernel should contain the fix.
> 
> I didn't realize the script wouldn't grab the important info needed.

The script includes the information, but your mail didn't, so I had to
start a browser, and read it through by myself.  If the codec chip was
mentioned in the mail, I could answer in a second.

So, please, at the next time, give your hardware detail concisely in
the mail itself.  This will save lots of time.


thanks,

Takashi
robert.devanna@nospammail.net July 6, 2015, 1:31 p.m. UTC | #5
> The script includes the information, but your mail didn't, so I had to
> start a browser, and read it through by myself.  If the codec chip was
> mentioned in the mail, I could answer in a second.
> 
> So, please, at the next time, give your hardware detail concisely in
> the mail itself.  This will save lots of time.

I cooperatively provided the info that I was asked to provide -- the alsa-info script output for the before/after cases.
...
> Since the output's too big for the list, apparently, I pastebin'd the full script output 
> 
> 	[1] -> http://pastebin.com/jUyTRrFG
> 	[2] -> http://pastebin.com/4V8YCguV

The script info in my email clearly DOES provide the codec information.

I'd have put the script output INTO the email if the list didn't limit the size of the mail and refuse to accept it.  It would save time if that limit didn't prevent including the info we're asked to provide.
Takashi Iwai July 6, 2015, 2:14 p.m. UTC | #6
At Mon, 06 Jul 2015 06:31:57 -0700,
robert.devanna@nospammail.net wrote:
> 
> > The script includes the information, but your mail didn't, so I had to
> > start a browser, and read it through by myself.  If the codec chip was
> > mentioned in the mail, I could answer in a second.
> > 
> > So, please, at the next time, give your hardware detail concisely in
> > the mail itself.  This will save lots of time.
> 
> I cooperatively provided the info that I was asked to provide -- the alsa-info script output for the before/after cases.
> ...
> > Since the output's too big for the list, apparently, I pastebin'd the full script output 
> > 
> > 	[1] -> http://pastebin.com/jUyTRrFG
> > 	[2] -> http://pastebin.com/4V8YCguV
> 
> The script info in my email clearly DOES provide the codec information.
>
> I'd have put the script output INTO the email if the list didn't limit the size of the mail and refuse to accept it.  It would save time if that limit didn't prevent including the info we're asked to provide.

Well, sorry, you miss the point.

Although alsa-info.sh contains the whole things, it's too lengthy.
The problem is not about whether you attach it or copy the URL.  It's
about the attitude to ask something.

Imagine you are asking someone the place of your favorite restaurant.
Would you give just a thick address book that includes your marking?
No, usually you tell the name or the address of the restaurant.  Then
some people might already know and can explain even without reading
through the whole book.  If not told, people won't pay attention to
your question (who dare read the whole book?).

In general, it's important to know which information to give for
asking something.  For a sound problem, usually the hardware
information (the machine model, the codec chip, etc) is the starting
point.  Attaching alsa-info.sh outputs helps indeed, and often
requested; but this is rather a subsidiary thing.  Just a more couple
of lines to describe your hardware often helps people to understand
the problem itself better.


Takashi

Patch
diff mbox

--- alsa-info.txt.BEFORE	2015-07-05 12:32:44.973554471 -0700
+++ alsa-info.txt.AFTER	2015-07-05 12:34:01.935900433 -0700
@@ -3,7 +3,7 @@ 
 !!ALSA Information Script v 0.4.64
 !!################################
 
-!!Script ran on: Sun Jul  5 19:32:43 UTC 2015
+!!Script ran on: Sun Jul  5 19:34:00 UTC 2015
 
 
 !!Linux Distribution
@@ -332,7 +332,7 @@ 
   Pin-ctls: 0x40: OUT
   Unsolicited: tag=01, enabled=1
   Power states:  D0 D1 D2 D3
-  Power: setting=D3, actual=D3
+  Power: setting=D0, actual=D0
   Connection: 1
      0x16
 Node 0x1d [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
@@ -602,7 +602,7 @@ 
 crw-rw---- 1 root audio 116,  6 Jul  5 12:31 /dev/snd/hwC0D0
 crw-rw---- 1 root audio 116, 10 Jul  5 12:31 /dev/snd/hwC2D0
 crw-rw---- 1 root audio 116,  4 Jul  5 12:31 /dev/snd/pcmC0D0c
-crw-rw---- 1 root audio 116,  3 Jul  5 12:32 /dev/snd/pcmC0D0p
+crw-rw---- 1 root audio 116,  3 Jul  5 12:33 /dev/snd/pcmC0D0p
 crw-rw---- 1 root audio 116,  5 Jul  5 12:31 /dev/snd/pcmC0D3p
 crw-rw---- 1 root audio 116, 12 Jul  5 12:31 /dev/snd/pcmC1D0c
 crw-rw---- 1 root audio 116,  8 Jul  5 12:31 /dev/snd/pcmC2D3p