You are not logged in.

#1 2014-09-11 07:10:06

tinh
Member
Registered: 2012-12-16
Posts: 39

[SOLVED] Alsamixer on thinkpad T440s

Hello here,

After lot of times I'm about to give up! I don't know how to configure properly my hardware with alsamixer. It came out of the box with my other laptop, a HP, but here with the Lenovo Thinkpad T440s, there some config I can't handle.

For now, I'm having sound at one place at the time. Ex: If I run mplayer or any program that is using sound while a youtube video is running, This program will never have sound until I close youtube and relaunch the program.
Also PCM channel isn't affected by any modifications or mutes operation.

Would you please help me?

Here is my configs files and modules listed

# cat -e /etc/asound.conf
$
#
$ lspci | grep -i audio
00:03.0 Audio device: Intel Corporation Haswell-ULT HD Audio Controller (rev 0b)
00:1b.0 Audio device: Intel Corporation 8 Series HD Audio Controller (rev 04)
$ cat /etc/modprobe.d/alsa-base.conf
options  snd_hda_intel  enable=0,1
options  snd            slots=snd_hda_intel,  thinkpad_acpi
options  snd_hda_intel  index=0
options  thinkpad_acpi  index=1
$ lsmod | grep -i snd
snd_hda_codec_realtek  67127   1
snd_hda_codec_generic  63126   1   snd_hda_codec_realtek
snd_hda_intel          26327   11
snd_hda_controller     26727   1   snd_hda_intel
snd_hda_codec          108552  4   snd_hda_codec_realtek,snd_hda_codec_generic,snd_hda_intel,snd_hda_controller
snd_hwdep              17244   1   snd_hda_codec
snd_pcm                88487   6   snd_hda_codec,snd_hda_intel,snd_hda_controller
snd_timer              26614   4   snd_pcm
snd                    69340   24  snd_hda_codec_realtek,snd_hwdep,snd_timer,snd_pcm,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel,thinkpad_acpi
soundcore              13031   2   snd,snd_hda_codec

If you need more. Please let me know. Thanks

Last edited by tinh (2014-09-11 16:17:23)

Offline

#2 2014-09-11 10:21:11

emeres
Member
Registered: 2013-10-08
Posts: 1,570

Re: [SOLVED] Alsamixer on thinkpad T440s

 Are you running pulseaudio? Do you really want to disable the hdmi from the igpu or do you want to use the other card as default? All of those modprobe options overwrite each other. Use:

options snd-hda-intel index=1,0 # for setting hdmi as secondary

 Drop those information, that you already posted:

aplay -lL;
lspci -vvnn | grep -A1 '040[1-3]';
cat /proc/asound/modules;
for i in $(awk '{print $2 | "sort"}' /proc/asound/modules | uniq); do echo "--- $i ---"; systool -vm $i; done;
lsmod | grep ^snd;
fuser -v /dev/snd/*;
for i in /proc/asound/card[0-9]*; do echo "--- $i ---";amixer -c $(cat $i/id); done;
lsusb #if there is a usb sound card;
# or use the alsa-info script

 Amixer and fuser are the most important ones here.

Offline

#3 2014-09-11 11:19:27

tinh
Member
Registered: 2012-12-16
Posts: 39

Re: [SOLVED] Alsamixer on thinkpad T440s

Thanks for quick reply.
I never use the hdmi for the sound just for the display. I use the jack to connect it to the sound system.
I erased the content of alsa-base.conf to use the one you indicated me, instead.

Here are the informations you asked:

$ aplay -lL
null
    Discard all samples (playback) or generate zero samples (capture)
pulse
    PulseAudio Sound Server
default:CARD=PCH
    HDA Intel PCH, ALC3232 Analog
    Default Audio Device
sysdefault:CARD=PCH
    HDA Intel PCH, ALC3232 Analog
    Default Audio Device
front:CARD=PCH,DEV=0
    HDA Intel PCH, ALC3232 Analog
    Front speakers
surround21:CARD=PCH,DEV=0
    HDA Intel PCH, ALC3232 Analog
    2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=PCH,DEV=0
    HDA Intel PCH, ALC3232 Analog
    4.0 Surround output to Front and Rear speakers
surround41:CARD=PCH,DEV=0
    HDA Intel PCH, ALC3232 Analog
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=PCH,DEV=0
    HDA Intel PCH, ALC3232 Analog
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=PCH,DEV=0
    HDA Intel PCH, ALC3232 Analog
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=PCH,DEV=0
    HDA Intel PCH, ALC3232 Analog
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC3232 Analog [ALC3232 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
$ lspci -vvnn | grep -A1 '040[1-3]'
00:03.0 Audio device [0403]: Intel Corporation Haswell-ULT HD Audio Controller [8086:0a0c] (rev 0b)
	Subsystem: Lenovo Device [17aa:220c]
--
00:1b.0 Audio device [0403]: Intel Corporation 8 Series HD Audio Controller [8086:9c20] (rev 04)
	Subsystem: Lenovo Device [17aa:220c]
$ cat /proc/asound/modules;
 0 snd_hda_intel
 1 thinkpad_acpi
$ for i in $(awk '{print $2 | "sort"}' /proc/asound/modules | uniq); do echo "--- $i ---"; systool -vm $i; done;

I redirect you here: http://paste.isomorphis.me/I2o

$ lsmod | grep ^snd
snd_hda_codec_realtek    67127  1 
snd_hda_codec_generic    63126  1 snd_hda_codec_realtek
snd_hda_intel          26327  3 
snd_hda_controller     26727  1 snd_hda_intel
snd_hda_codec         108552  4 snd_hda_codec_realtek,snd_hda_codec_generic,snd_hda_intel,snd_hda_controller
snd_hwdep              17244  1 snd_hda_codec
snd_pcm                88487  3 snd_hda_codec,snd_hda_intel,snd_hda_controller
snd_timer              26614  1 snd_pcm
snd                    69340  14 snd_hda_codec_realtek,snd_hwdep,snd_timer,snd_pcm,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel,thinkpad_acpi
 for i in /proc/asound/card[0-9]*; do echo "--- $i ---";amixer -c $(cat $i/id); done;

Same here: http://paste.isomorphis.me/reI

$ pulseaudio --check
0
$

So yes I've got pulseaudio deamon running as well.

Offline

#4 2014-09-11 11:29:59

emeres
Member
Registered: 2013-10-08
Posts: 1,570

Re: [SOLVED] Alsamixer on thinkpad T440s

 Run multiple instances of speaker-test, check fuser, which you ignored so far. All should be under pulseaudio. You may want to disable the module suspend-on-idle within pulseaudio, search the wiki for it. Is the module thinkpad_acpi loaded now without modprobe explicitly specifying it? Does the sound work as expected? Do you want to have thinkpad controls in alsamixer? This module seems to accept parameters for that task, that are now disabled.

speaker-test -c 2 -t wav -D plug:"dmix:{CARD PCH DEV 0}"

Offline

#5 2014-09-11 12:45:17

tinh
Member
Registered: 2012-12-16
Posts: 39

Re: [SOLVED] Alsamixer on thinkpad T440s

Yes sorry:

$ fuser -v /dev/snd/*
                     USER        PID ACCESS COMMAND
/dev/snd/controlC0:  n0t       18418 F.... pulseaudio

Edit:
I removed pulseaudio, rebooted and then:

$ fuser -v /dev/snd/*
                     USER        PID ACCESS COMMAND
/dev/snd/controlC0:  n0t       18418 F.... alsamixer

Yes the module is loaded withtout being specified in the modprobe conf file.

So I guess I'm on a good way.
Also, my sound is working with multiple programs at once.

Thanks to you!

I still have PCM issues. The speaker channel's bar is not present and PCM controls the speaker output instead.

Last edited by tinh (2014-09-11 13:04:50)

Offline

#6 2014-09-11 12:49:55

emeres
Member
Registered: 2013-10-08
Posts: 1,570

Re: [SOLVED] Alsamixer on thinkpad T440s

 That is only the control of the device, not using its playback. Unload the module like I suggested, let it run all the time, run multiple instances of speaker-test. And answer my questions.

Offline

#7 2014-09-11 13:07:30

tinh
Member
Registered: 2012-12-16
Posts: 39

Re: [SOLVED] Alsamixer on thinkpad T440s

Is the module thinkpad_acpi loaded now without modprobe explicitly specifying it?
   -> Yes completly!

Does the sound work as expected?
   -> Yes, as far as I know but keep having issues with PCM controling speaker channel.

Do you want to have thinkpad controls in alsamixer?
  -> What controls does it involve?

Last edited by tinh (2014-09-11 13:07:45)

Offline

#8 2014-09-11 15:14:05

emeres
Member
Registered: 2013-10-08
Posts: 1,570

Re: [SOLVED] Alsamixer on thinkpad T440s

tinh wrote:

I still have PCM issues. The speaker channel's bar is not present and PCM controls the speaker output instead.

 I do not understand that. What exactly do you mean? Where is what not present? Alsamixer only display defined controls, no applications. There is a Speaker control according to your amixer output, it is switched off. PCM probably controls every signal fed into the codec, except external sources.

modinfo thinkpad_acpi

 Either reload it with modprobe or use options with different settings for parameters like volume_control=1. Read the documentation.

Offline

#9 2014-09-11 16:15:21

tinh
Member
Registered: 2012-12-16
Posts: 39

Re: [SOLVED] Alsamixer on thinkpad T440s

See this:
aslamixer_pcm_speaker.jpg

The speaker line isn't here.
To control the speaker volume I had to use the PCM line instead.

Thank you for the tip. I'm gonna read the documentation from now on.

Thank you for your help.

Offline

#10 2014-09-11 16:29:10

emeres
Member
Registered: 2013-10-08
Posts: 1,570

Re: [SOLVED] Alsamixer on thinkpad T440s

 That appears to be the design, ask on alsa mailing list for more information or look into this codecs datasheet, it might be Realteks terminology that was taken over. If you want to have a volume slider named Speakers instead of PCM, you probably can hack it into the source code of alsa. I have not looked into rewriting that part of alsas configuration yet, so it might be possible, and then it might not. Also the speaker control is there, but it is a switch not a slider. You could always create a softvol plugin with the name Speakers for the PCH card.

Offline

Board footer

Powered by FluxBB