[alsa-devel] Headset doesn't work for HP EliteBook 755 G2

Derick Eddington derick.eddington at gmail.com
Thu Feb 25 00:55:27 CET 2016


Takashi Iwai (2016-02-24 01:00 MST) wrote:

> On Tue, 23 Feb 2016 21:02:17 +0100,
> Derick Eddington wrote:
>> 
>> Hi, first time here, following suggestion [1] to report non-working
>> default configuration, which I found how to make work.
>> 
>> I checked using the latest stable kernel 4.4.2 and my headset jack
>> doesn't work by default but my fix does work, on Scientific Linux 7.2
>> using the 4.4.2 kernel from the ELRepo repository.  I also checked using
>> Ubuntu 16.04 alpha with its 4.4.0 kernel and the problem and fix are the
>> same.
>> 
>> My laptop is an HP EliteBook 755 G2 from mid 2015 [2] that has a
>> combined headset (headphone + mic) jack that doesn't work by default.
>> The speakers work fine by default and they mute when a headset is
>> plugged in, but the headphones don't work.
>> 
>> The snd-hda-intel module handles my device.
>> The codec is Realtek ALC3228.
>> I have the latest BIOS update from HP.
>> 
>> I got it working by passing model=hp,headset-mic to snd-hda-intel.  I
>> found this fix in an alsa-user message about a different HP laptop with
>> the same codec [3], but I had to modify the message's fix by only
>> including the module option for model= and omitting the other options
>> and aliases that seem to be specific to Arch Linux.  I tried using only
>> "hp" or only "headset-mic" as the value for model= but neither worked.
>
> The point is the comma.  Your Realtek codec is assigned as the
> secondary, and model option takes multiple values, one for each slot.
> So, you'd need to pass "model=,headset-mic"
>
>> Attached are my outputs of alsa-info.sh from before and after I did
>> model=hp,headset-mic.
>
> Thanks, I'll compare them.  Isn't the any functionality lost by this
> option?  Everything (except for the noise issue) works by that?

Passing only "model=,headset-mic" does work fine.  I tested: internal
speakers, internal mic, headset headphones, and headset mic, and they
all work (after some mixer adjusting).  (I haven't ever tried the
first-slot HDMI/DP audio device but will try to some time.)

>> Also, there's another problem after enabling model=hp,headset-mic, which
>> I found how to fix:  There is a very annoying squeaky background noise in
>> the headphones that's independent of adjusting the volume level but it
>> does stop when the headphones are muted.  I tried a different headset
>> and it's the same.  I found how to suppress this by using the
>> white_noise_fix.py script from [4] as described at [5,6], which
>> apparently does some ioctl verbs to adjust the amp gain.  I thought this
>> might be something that should be fixed/adjusted in the kernel module(s)
>> that handle this device, so that the white_noise_fix.py isn't needed.
>> If so, maybe it's worth mentioning that when my laptop resumes from
>> sleep, the background noise comes back, so I have to run
>> white_noise_fix.py again.
>
> Such a noise often comes from the analog-loopback.  Try to turn off
> "Loopback Mixing" mixer switch.

Disabling "Loopback Mixing" does stop the noise.  (Be careful when
toggling this with headphones on, loud pop noises can happen with my
device.)  The white_noise_fix.py script wasn't needed.

Attached is my latest alsa-info.sh output from when it's all working
with the above applied (and with other mixer settings that make
everything usable for me).

Thanks!
-- Derick

-------------- next part --------------
A non-text attachment was scrubbed...
Name: alsa-info.txt.wDUYm4WlPp
Type: application/octet-stream
Size: 43338 bytes
Desc: not available
URL: <http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20160224/6c4fb048/attachment-0001.obj>


More information about the Alsa-devel mailing list