Hi list, I have two Debian 10 partitions on my laptop - a venerable ThinkPad T400 with libreboot - and in one of these partitions (in /dev/sda5, a.k.a. the "bad partition") sound doesn't work, and in the other one (/dev/sda4, a.k.a. the "good partition" from here on) it does... The "bad partition" had Debian 9, and after I upgraded it to 10 with "apt-get dist-upgrade" sound stopped working on it (details soon). I then installed Debian 10 from a installation pen drive on an empty partition to be able to test things on both; sound works on it perfectly, so let's call it the "good partition". I've tried several sound debugging recipes that I found on the internets and they didn't work, so I've decided to use this as an excuse to learn more about sound on Linux. "Sound doesn't work" here means that all applications that play sound - including speaker-test, that seems to be very low-level - behave normally, but I can't hear anything - even when I use alsamixer to set "Master", "Headphon", "Speaker", "PCM", "Beep" and "Internal" all to the maximum level. I tried to follow the instructions here, https://wiki.debian.org/Sound and I sort of converted them - except for the step with pavucontrol; more on it at the end of the e-mail - into a script... this one: logthis () { echo $*:; eval $* 2>&1; echo; echo; } { # Debian version logthis cat /etc/issue logthis cat /etc/debian_version logthis cat /etc/os-release logthis lsb_release -da logthis hostnamectl # List devices and PCMs logthis aplay -l logthis aplay -L # Drivers and modules logthis "lspci -vvv | grep -A8 Audio" logthis "lspci -knn | grep -A2 Audio" # Permissions logthis groups logthis ls -lAF /proc/asound/ # This partition logthis "mount | grep 'on / '" # ALSA state logthis "rm -f /tmp/o; /usr/sbin/alsactl -f /tmp/o store; cat /tmp/o" } | tee ~/oalsa I ran it in both partitions and compared the outputs with tkdiff. Here are the relevant differences: 1) In the bad partition the output of "aplay -l" is: **** List of PLAYBACK Hardware Devices **** card 0: Intel [HDA Intel], device 0: CX20561 Analog [CX20561 Analog] Subdevices: 0/1 Subdevice #0: subdevice #0 card 0: Intel [HDA Intel], device 1: CX20561 Digital [CX20561 Digital] Subdevices: 1/1 Subdevice #0: subdevice #0 and in the good partition it is: **** List of PLAYBACK Hardware Devices **** card 0: Intel [HDA Intel], device 0: CX20561 Analog [CX20561 Analog] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: Intel [HDA Intel], device 1: CX20561 Digital [CX20561 Digital] Subdevices: 1/1 Subdevice #0: subdevice #0 Note the "Subdevices: 0/1" in the bad partition. 2) In the output of "/usr/sbin/alsactl -f /tmp/o store" some of fields "value.0", "value.1", "dbvalue.0", "dbvalue.1", are different between the two partitions, but they are all in the allowed ranges and they look reasonable to me (i.e., to my untrained eye). 3) In the output of "/usr/sbin/alsactl -f /tmp/o store" the subsections of "state.Intel { ... }" appear in a different order. In the good partition the subsections 10-25 are numbered like this, control.10 : name 'Beep Playback Volume' control.11 : name 'Beep Playback Switch' control.12 : name 'IEC958 Playback Con Mask' control.13 : name 'IEC958 Playback Pro Mask' control.14 : name 'IEC958 Playback Default' control.15 : name 'IEC958 Playback Switch' control.16 : name 'IEC958 Default PCM Playback Switch' control.17 : name 'Master Playback Volume' control.18 : name 'Master Playback Switch' control.19 : name 'Mic Jack' control.20 : name 'Internal Mic Phantom Jack' control.21 : name 'Dock Mic Jack' control.22 : name 'Speaker Phantom Jack' control.23 : name 'Dock Headphone Jack' control.24 : name 'Headphone Jack' control.25 : name 'SPDIF Phantom Jack' and in the bad partition like this: control.10 : name 'IEC958 Playback Con Mask' control.11 : name 'IEC958 Playback Pro Mask' control.12 : name 'IEC958 Playback Default' control.13 : name 'IEC958 Playback Switch' control.14 : name 'IEC958 Default PCM Playback Switch' control.15 : name 'Master Playback Volume' control.16 : name 'Master Playback Switch' control.17 : name 'Mic Jack' control.18 : name 'Internal Mic Phantom Jack' control.19 : name 'Dock Mic Jack' control.20 : name 'Speaker Phantom Jack' control.21 : name 'Dock Headphone Jack' control.22 : name 'Headphone Jack' control.23 : name 'SPDIF Phantom Jack' control.24 : name 'Beep Playback Volume' control.25 : name 'Beep Playback Switch' About pavucontrol: in the bad partition the only output device that appears in the "Output Devices" tab is called "Dummy Output". This looks like a red flag, but I got the impression - please confirm - that PulseAudio runs on a level above ALSA, and problems with PulseAudio should not affect the behavior of speaker-test. So: any hints? What should I add to my script to compare the behavior of ALSA in the two partitions? Am I wrong in thinking that speaker-test ignores PulseAudio? How do I examine the status of PulseAudio without using the GUI? Are there ways to mute and unmute the sound using the functions in /usr/share/alsa/utils.sh? What else?... Thanks in advance! Eduardo Ochs http://angg.twu.net/ http://angg.twu.net/emacsconf2019.html (^ on "executable notes") _______________________________________________ Alsa-user mailing list Alsa-user@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/alsa-user