Debian systems seems to recognize speakers but not the headphones for Lenovo laptops

alsaaudioelementary-oslaptoppulseaudio

I would be happy/comfortable to apply some patch or change in some kernel code if required. All I need is the direction as I have no idea about Linux sound architecture (pulse-audio and alsamixer implementation) in kernel.

I'm pretty sure that there must be some patch, the problem seems to be very widespread.

NOTE: Here is the description: (Could go long but I want to get it done in any way).

I initially had Ubuntu 13.04 in my laptop. After around 2 months of non-usage when I started using it again, I realized that I was getting no sound from anywhere (speakers,headphone ,etc., not even system sounds). I upgraded to Ubuntu 13.10 but issue remained the same. [The Laptop was in suspend mode last time, I don't know if that had anything to do with that]. I also suspected some hardware failure here.

At this time, I had a dual boot system (Ubuntu+Windows), I removed both of them and did a fresh install of Elementary OS – Luna (based on Ubuntu 12.04 LTS), but again I had the same issue. Then I did the following configuration and speakers started working (see alsa-base.conf snippet below), but not the headphones. When I plugged in the headphones, it did not change – sound kept coming through the speakers.

Currently, I have Elementary OS – Freya beta (based on Ubuntu 14.04) only in my system and I have the same problem. Speakers working but not the headphones. Plugging in the headphones does not mute the speakers and I get no sound from headphones also.

# Adding these lines at the end of `alsa-base.conf`, speakers started 
# working fine.
options snd-hda-intel model=laptop
options snd-hda-intel position_fix=1 enable=yes

I've tried lots options specified in other posts but nothing seems to work out. For example: like trying gnome-alsamixer for headphone-jack-sense option but there is no mention of `headphones.

I could not mention all the things I have tried out else the post may go very long and unnoticed but I will add output of any command if required.

I've attached screenshots and configuration of some basic stuff to give a start about what may be going on in my system. NOTE: Connecting or not connecting headphones does not change the behavior in any of these screenshots.

Please provide me the right direction as this is something important for me and I don't want to switch to Windows just because of this stupid bug and it seems like a common problem across all Debian based systems so I'm left with no choice if this bug remain prevalent.

Configuration: (/etc/modprobe.d/alsa-base.conf)

# autoloader aliases
install sound-slot-0 /sbin/modprobe snd-card-0
install sound-slot-1 /sbin/modprobe snd-card-1
install sound-slot-2 /sbin/modprobe snd-card-2
install sound-slot-3 /sbin/modprobe snd-card-3
install sound-slot-4 /sbin/modprobe snd-card-4
install sound-slot-5 /sbin/modprobe snd-card-5
install sound-slot-6 /sbin/modprobe snd-card-6
install sound-slot-7 /sbin/modprobe snd-card-7

# Cause optional modules to be loaded above generic modules
install snd /sbin/modprobe --ignore-install snd $CMDLINE_OPTS && { /sbin/modprobe 
--quiet --use-blacklist snd-ioctl32 ; /sbin/modprobe --quiet --use-blacklist 
snd-seq   ; }

#
# Workaround at bug #499695 (reverted in Ubuntu see LP #319505)
install snd-pcm /sbin/modprobe --ignore-install snd-pcm $CMDLINE_OPTS && { 
/sbin/modprobe --quiet --use-blacklist snd-pcm-oss ; : ; }
install snd-mixer /sbin/modprobe --ignore-install snd-mixer $CMDLINE_OPTS && {  
/sbin/modprobe --quiet --use-blacklist snd-mixer-oss ; : ; }
install snd-seq /sbin/modprobe --ignore-install snd-seq $CMDLINE_OPTS && { 
/sbin/modprobe --quiet --use-blacklist snd-seq-midi ; /sbin/modprobe --quiet --use-
blacklist snd-seq-oss ; : ; }

#
install snd-rawmidi /sbin/modprobe --ignore-install snd-rawmidi $CMDLINE_OPTS && { 
/sbin/modprobe --quiet --use-blacklist snd-seq-midi ; : ; }  


# Cause optional modules to be loaded above sound card driver modules
install snd-emu10k1 /sbin/modprobe --ignore-install snd-emu10k1 $CMDLINE_OPTS && { 
/sbin/modprobe --quiet --use-blacklist snd-emu10k1-synth ; }
install snd-via82xx /sbin/modprobe --ignore-install snd-via82xx $CMDLINE_OPTS && { 
/sbin/modprobe --quiet --use-blacklist snd-seq ; }

# Load saa7134-alsa instead of saa7134 (which gets dragged in by it anyway)
install saa7134 /sbin/modprobe --ignore-install saa7134 $CMDLINE_OPTS && { 
/sbin/modprobe --quiet --use-blacklist saa7134-alsa ; : ; }
# Prevent abnormal drivers from grabbing index 0
options bt87x index=-2
options cx88_alsa index=-2
options saa7134-alsa index=-2
options snd-atiixp-modem index=-2
options snd-intel8x0m index=-2
options snd-via82xx-modem index=-2
options snd-usb-audio index=-2
options snd-usb-caiaq index=-2
options snd-usb-ua101 index=-2
options snd-usb-us122l index=-2
options snd-usb-usx2y index=-2
# Ubuntu #62691, enable MPU for snd-cmipci
options snd-cmipci mpu_port=0x330 fm_port=0x388
# Keep snd-pcsp from being loaded as first soundcard
options snd-pcsp index=-2
# Keep snd-usb-audio from beeing loaded as first soundcard
options snd-usb-audio index=-2


#options snd-hda-intel model=laptop probe_mask=1 position_fix=1
#alias snd-card-0 snd-hda-intel
options snd-hda-intel model=laptop
options snd-hda-intel position_fix=1 enable=yes

Screenshots:

  gnome-alsamixer

  sound settings - input

  sound setting - output

** EDIT: **

pactl list short | more

 0  module-device-restore       
 1  module-stream-restore       
 2  module-card-restore     
 3  module-augment-properties       
 4  module-switch-on-port-available     
 5  module-alsa-card    device_id="0" name="pci-0000_00_1b.0"  
 card_name="alsa_card.pci-0000_00_1b.0" namereg_fail=false tsched=yes 
 fixed_latency_range=no ignore_dB=no deferred_volume=yes use_ucm=yes 
 card_properties="module-udev-detect.discovered=1"  

6   module-udev-detect       
7   module-bluetooth-policy     
8   module-bluetooth-discover       
9   module-native-protocol-unix     
10  module-gconf        
11  module-default-device-restore       
12  module-rescue-streams       
13  module-always-sink      
14  module-intended-roles       
15  module-suspend-on-idle      
16  module-systemd-login        
17  module-position-event-sounds        
18  module-filter-heuristics        
19  module-filter-apply     
20  module-x11-publish  display=:0  
21  module-x11-bell display=:0 sample=bell.ogg  
22  module-x11-cork-request display=:0  
23  module-x11-xsmp display=:0 session_manager=local/ItsNotMac:@/tmp/.ICE-
unix/1413,unix/ItsNotMac:/tmp/.ICE-unix/1413    
0   alsa_output.pci-0000_00_1b.0.analog-stereo  module-alsa-card.c  s16le 2ch 
44100Hz RUNNING
0   alsa_output.pci-0000_00_1b.0.analog-stereo.monitor  module-alsa-card.c  
s16le 2ch 44100Hz   IDLE

1   alsa_input.pci-0000_00_1b.0.analog-stereo   module-alsa-card.c  s16le 2ch 
44100Hz SUSPENDED

235 0   360 protocol-native.c   s16le 2ch 44100Hz

0   module-systemd-login.c  (null)

1   protocol-native.c   gnome-settings-daemon
6   module-x11-xsmp.c   (null)
7   protocol-native.c   gala
8   protocol-native.c   indicator-sound-service
9   protocol-native.c   chrome
94  protocol-native.c   gnome-settings-daemon
360 protocol-native.c   chrome
365 protocol-native.c   pactl
0   bell-window-system  s16le 2ch 44100Hz   0.139
1   audio-volume-change s16le 2ch 44100Hz   0.067
0   alsa_card.pci-0000_00_1b.0  module-alsa-card.c

pacmd list-sinks

 Welcome to PulseAudio! Use "help" for usage information.
 >>> 1 sink(s) available.
 * index: 0
 name: <alsa_output.pci-0000_00_1b.0.analog-stereo>
 driver: <module-alsa-card.c>
 flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY 
 DYNAMIC_LATENCY
 state: RUNNING
 suspend cause: 
 priority: 9959
 volume: 0: 100% 1: 100%
        0: 0.00 dB 1: 0.00 dB
        balance 0.00
 base volume: 100%
             0.00 dB
 volume steps: 65537
 muted: no
 current latency: 23.16 ms
 max request: 4 KiB
 max rewind: 64 KiB
 monitor source: 0
 sample spec: s16le 2ch 44100Hz
 channel map: front-left,front-right
             Stereo
 used by: 1
 linked by: 1
 configured latency: 23.22 ms; range is 0.50 .. 371.52 ms
 card: 0 <alsa_card.pci-0000_00_1b.0>
 module: 5
 properties:
    alsa.resolution_bits = "16"
    device.api = "alsa"
    device.class = "sound"
    alsa.class = "generic"
    alsa.subclass = "generic-mix"
    alsa.name = "CONEXANT Analog"
    alsa.id = "CONEXANT Analog"
    alsa.subdevice = "0"
    alsa.subdevice_name = "subdevice #0"
    alsa.device = "0"
    alsa.card = "0"
    alsa.card_name = "HDA Intel PCH"
    alsa.long_card_name = "HDA Intel PCH at 0xe0610000 irq 44"
    alsa.driver_name = "snd_hda_intel"
    device.bus_path = "pci-0000:00:1b.0"
    sysfs.path = "/devices/pci0000:00/0000:00:1b.0/sound/card0"
    device.bus = "pci"
    device.vendor.id = "8086"
    device.vendor.name = "Intel Corporation"
    device.product.id = "1e20"
    device.product.name = "7 Series/C210 Series Chipset Family High Definition 
   Audio Controller"
    device.form_factor = "internal"
    device.string = "front:0"
    device.buffering.buffer_size = "65536"
    device.buffering.fragment_size = "32768"
    device.access_mode = "mmap+timer"
    device.profile.name = "analog-stereo"
    device.profile.description = "Analog Stereo"
    device.description = "Built-in Audio Analog Stereo"
    alsa.mixer_name = "Intel PantherPoint HDMI"
    alsa.components = "HDA:14f1506e,17aac023,00100003 
   HDA:80862806,80860101,00100000"
    module-udev-detect.discovered = "1"
    device.icon_name = "audio-card-pci"
   ports:
    analog-output-headphones: Headphones (priority 8900, latency offset 0 
   usec, available: unknown)
        properties:
            device.icon_name = "audio-headphones"
   active port: <analog-output-headphones>

**pactl list short sinks: **

   0    alsa_output.pci-0000_00_1b.0.analog-stereo  module-alsa-card.c  s16le 
   2ch 44100Hz  IDL

Best Answer

This might be a silly answer, but could it be hardware ? Are you sure the headphone worked in Windows ?

I've seen that the lenovo has a combo headphone/mic socket, and there are people who have reported problems using a headphone with it.

The Lenovo community has a forum article describing an issue similar to yours here. With an answer here

Related Question