Repository navigation
[BUG] no audio through headphones on dell inspiron 7591. #2180
Description
Describe the bug
when headphones are plugged in, no audio is heard. under pavaudio, headphones will be shown as being detected and the laptop speaker will be muted. the only way to fix it is to go under configuration --> profile --> off --> play HiFi quality music.
I am using sof-firmware 1.4.2-1 on 5.6.15-arch1-1 kernel.
I have checked alsamixer to see if anything was muted as well and it's not.
To Reproduce
to reproduce you'd need to have a Realtek ALC3254 chip found on Intel CometLake generation chipsets I'm assuming. sorry if i don't know what I'm talking about here.
Install sof-firmware from whatever pacakge manager you use on linux kernel 5.6.15. reboot. plug in headphones into 3.5mm jack on laptop notice the lack of audio.
open pavaudio, go to configuration, change the profile from "play hifi quality music" to off and then back and then test audio again.
Reproduction Rate
in my testing this can be reproduced 9/10 times with 1/10 times resulting in the audio not working at all regardless of changing the profile to off. a reboot usually fixes it though, sometimes you have to change the port under sof-hda-dsp Speaker + Headphones to Speaker and then back to headphones and then change the profile again for it to work.
Expected behavior
the expected behavior is speaker gets muted, headphones get detected and switched to under port in pavaudio and audio plays from headphones.
Impact
mild nuisance.
Environment
- Branch name and commit hash of the 2 repositories: sof (firmware/topology) and linux (kernel driver).
- Kernel: {SHA}
- SOF: {SHA}
- Name of the topology file
- Topology: {FILE}
- Name of the platform(s) on which the bug is observed.
- Platform: {PLATFORM}
not sure how to get any of this as in installed sof-firmware from pacman. i'd love to try and compile it myself but it seems a bit above my head. i read that 1.4.3 and 1.5 may have this fixed?
Screenshots or console output
If applicable, add a screenshot (drag-and-drop an image), or console logs
(cut-and-paste text and put a code fence (```) before and after, to help
explain the issue.
i can paste whatever logs are needed here, just not sure which ones would be relevant or which ones are capturing this issue. just let me know.
Activity
plbossart commentedon Jun 9, 2020
this isn't a firmware issue @Erfboom , transferring to the linux repo
plbossart commentedon Jun 9, 2020
@Erfboom can you check which version of alsa-lib, alsa-ucm-conf and pulseaudio you are using?
Erfboom commentedon Jun 9, 2020
of course and thanks for guiding me in the right direction.
alsa-lib 1.2.2-1
pulseaudio 13.0-3
alsa-ucm-conf 1.2.2-1
plbossart commentedon Jun 10, 2020
@kv2019i do those versions look ok to you? Should work out of the box, no?
[-][BUG] no audio through headphones on dell insirpon 7590. [/-][+][BUG] no audio through headphones on dell inspiron 7590. [/+]kv2019i commentedon Jun 10, 2020
FYI to @juimonen and @libinyang -- ring any bells?
Versions seem sufficient, so this is either a codec driver issue with ALC3254 (this is slightly different from ALC3204 that has been tested widely), or issue in Pulseaudio specific to arch.
@Erfboom Could you provide "alsa-info" output for both cases when headset is connected and second set of logs when it is not.
And third, pulseaudio verbose log that covers start-up and the headphone connection. You can either follow these instructions:
https://wiki.ubuntu.com/PulseAudio/Log
Or a more crude method without reboot:
kv2019i commentedon Jun 10, 2020
@Erfboom You could also try this kernel patch:
3a24f13 ASoC: intel/skl/hda - set autosuspend timeout for hda codecs
https://lore.kernel.org/r/20200409185827.16255-3-pierre-louis.bossart@linux.intel.com
There's one other bug with ALC3254 that can be related -> #2014
kv2019i commentedon Jun 10, 2020
@Erfboom One more. A simple thing to try (maybe as the first thing, no kernel compile needed):
amixer sset 'Input Source' 'Headset Mic'
... on Ubuntu systems you get a pop-up to select the headphone/headset type. In Arch, this might not work and if you don't set the type correctly, there won't be no audio.
Erfboom commentedon Jun 10, 2020
@kv2019i When using the amixer command, I did in fact get audio!
here's the logs you requested:
alsa-info:
alsa-info..zRBt5G1y6B.txt
pulseaudio:
pulseverbose.log.txt
Thanks to alsa-info i realized I have a dell inspiron 7591 and not a dell inspiron 7590. Sorry for the confusion!
the pulseaudio log starts without headphones plugged in, an audio test through kde--> audio--> advanced then headphones were plugged in, and then I did the profile switch to get audio to work through the headphones.
EDIT: something else to note, setting
options snd-intel-dspcfg dsp_driver=1in modprobe allows the headphones to be picked up correctly with the con of the internal microphone not working. that's what made me think it was sof-firmware that was the problem in the first place, but it seems like the issue is elsewhere.[-][BUG] no audio through headphones on dell inspiron 7590. [/-][+][BUG] no audio through headphones on dell inspiron 7591. [/+]kv2019i commentedon Jun 11, 2020
@Erfboom Ok. Basicly this is feature of some Dell laptops and Ubuntu has a solution where a pop up is presented to user. So this would need some Arch specific solution to do the routing automatically.
You can also try cherry-picking this patch (and also see related discussion):
alsa-project/alsa-ucm-conf#21
Erfboom commentedon Jun 11, 2020
That's what I'm confused about. When I set options snd-intel-dspcfg dsp_driver=1 under modprobe, the headphone detection, muting, and switching works as expected. Audio stops coming out of the speakers and it's routed to the headphones. No pop-up is needed there.
Erfboom commentedon Jun 12, 2020
i upgraded sof-firmware to 1.5.1 and now the method that i used to restore audio to headphones no longer works. the only way to get audio is by doing the amixer command.
EDIT: furthermore, the mic no longer works. I had to downgrade sof-firmware, alsa-lib and alsa-ucm-conf back to the versions i posted initially for the mic to be recognized as digital microphone.
kv2019i commentedon Jun 12, 2020
@Erfboom When you set "options snd-intel-dspcfg dsp_driver=1 ", a different driver is loaded. This exposes less capabilities, so Pulseaudio uses the legacy non-UCM code to discovery sound device functions and this does not trigger the problem. So this works, but you will not have digital mic working.
With SOF (and DSP in use), we are exercising a different path in PA. As you can see from the discussion above (#21 alsa-ucm pull req), there's debate whether this should be fixed in ALSA UCM, Pulseaudio or GNOME. In Ubuntu this is fixed with the UI, but for other distros (on these Dell device), the problem remains.
PS Probably best not to change FW until the original problem is fixed, but if you do end up trying 1.5.1 again, logs would be appreciated.
Erfboom commentedon Jun 12, 2020
ah, that makes a lot of sense! thanks for the explanation. and yeah i'll provide some logs if i end up fiddling around with 1.5.1 again.
plbossart commentedon Jun 10, 2021
no update since June 2020, closing.