Ghost headphone after update

Hi, after a recent update, my laptop shows that headphones are connected even when they aren’t. To play sound from the speaker, I have to manually switch output to the speaker. Same for the audio input.

Tried pulseaudio -k and systemctl --user restart pulseaudio with reboot, doesn’t work.

Some usefull outputs:

inxi -Axxx

Audio:     Device-1: Advanced Micro Devices [AMD/ATI] Raven/Raven2/Fenghuang HDMI/DP Audio vendor: Acer Incorporated ALI
           driver: snd_hda_intel v: kernel bus ID: 05:00.1 chip ID: 1002:15de
           Device-2: Advanced Micro Devices [AMD] Raven/Raven2/FireFlight/Renoir Audio Processor vendor: Acer Incorporated ALI
           driver: snd_rn_pci_acp3x v: kernel bus ID: 05:00.5 chip ID: 1022:15e2
           Device-3: Advanced Micro Devices [AMD] Family 17h HD Audio vendor: Acer Incorporated ALI driver: snd_hda_intel
           v: kernel bus ID: 05:00.6 chip ID: 1022:15e3
           Sound Server: ALSA v: k5.8.18-1-MANJARO

alsa-info.sh --upload

cat: '/sys/module/snd_acp3x_rn/parameters/*': No such file or directory
dmesg: read kernel buffer failed: Operation not permitted
Uploading information to www.alsa-project.org ... Done!

Your ALSA information is located at http://alsa-project.org/db/?f=d0efe12527447e6ec0dda364209c432c9d777429
Please inform the person helping you.

sudo dmesg | grep snd

[    1.873176] snd_pci_acp3x 0000:05:00.5: Invalid ACP audio mode : 2
[    2.100101] snd_hda_intel 0000:05:00.1: Handle vga_switcheroo audio client
[    2.189835] snd_hda_codec_realtek hdaudioC1D0: autoconfig for ALC255: line_outs=1 (0x14/0x0/0x0/0x0/0x0) type:speaker
[    2.189838] snd_hda_codec_realtek hdaudioC1D0:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[    2.189840] snd_hda_codec_realtek hdaudioC1D0:    hp_outs=1 (0x21/0x0/0x0/0x0/0x0)
[    2.189841] snd_hda_codec_realtek hdaudioC1D0:    mono: mono_out=0x0
[    2.189843] snd_hda_codec_realtek hdaudioC1D0:    inputs:
[    2.189844] snd_hda_codec_realtek hdaudioC1D0:      Headset Mic=0x19
[    2.189846] snd_hda_codec_realtek hdaudioC1D0:      Internal Mic=0x12
[    2.584906] acp_pdm_mach acp_pdm_mach.0: snd_soc_register_card(acp) failed: -517
[    2.793638] snd_hda_intel 0000:05:00.1: bound 0000:05:00.0 (ops amdgpu_dm_audio_component_bind_ops [amdgpu])
[    2.879319] Modules linked in: snd_acp3x_rn snd_acp3x_pdm_dma snd_soc_dmic joydev mousedev snd_soc_core snd_compress ac97_bus hid_multitouch hid_generic snd_pcm_dmaengine amdgpu edac_mce_amd kvm_amd acer_wmi ath10k_pci wmi_bmof sparse_keymap ath10k_core kvm snd_hda_codec_realtek nls_iso8859_1 ath nls_cp437 snd_hda_codec_generic irqbypass ledtrig_audio snd_hda_codec_hdmi crct10dif_pclmul crc32_pclmul ghash_clmulni_intel vfat snd_hda_intel snd_intel_dspcfg aesni_intel mac80211 fat crypto_simd snd_hda_codec cryptd gpu_sched glue_helper rapl snd_hda_core wdat_wdt i2c_algo_bit input_leds pcspkr ttm snd_hwdep cfg80211 snd_pcm drm_kms_helper snd_timer cec r8169 rc_core snd syscopyarea ccp realtek snd_rn_pci_acp3x sysfillrect rfkill sysimgblt libphy snd_pci_acp3x fb_sys_fops rng_core soundcore i2c_amd_mp2_pci libarc4 sp5100_tco i2c_piix4 k10temp acer_wireless i2c_hid battery hid wmi mac_hid pinctrl_amd evdev ac acpi_cpufreq drm uinput crypto_user agpgart ip_tables x_tables ext4 crc32c_generic
[    5.567029] acp_rn_pdm_dma acp_rn_pdm_dma.0: ASoC: error at snd_soc_pcm_dai_trigger on acp_rn_pdm_dma.0: -110
[   11.464170] acp_rn_pdm_dma acp_rn_pdm_dma.0: ASoC: error at snd_soc_pcm_dai_trigger on acp_rn_pdm_dma.0: -110
[ 1475.623073] acp_rn_pdm_dma acp_rn_pdm_dma.0: ASoC: error at snd_soc_pcm_dai_trigger on acp_rn_pdm_dma.0: -110
[ 1476.203066] acp_rn_pdm_dma acp_rn_pdm_dma.0: ASoC: error at snd_soc_pcm_dai_trigger on acp_rn_pdm_dma.0: -110

The last one looks particularly interesting as you can clearly see the 2 input devices along with some errors.

Your ALSA information is in /tmp/alsa-info.txt.my91EpV0uK

Only you can access that data on your system

Please post response to

alsa-info.sh --upload

Yikes, my bad.
Updated the original post

Here you go http://alsa-project.org/db/?f=d0efe12527447e6ec0dda364209c432c9d777429

Blacklisting the snd_rn_pci_acp3x driver using,
sudo tee /etc/modprobe.d/blacklist.conf <<< 'blacklist snd_rn_pci_acp3x'
solved the problem for me.

Will it affect my sound quality? Is there any fix for the driver rather than just blacklisting it?

On AMD Renoir systems there is a digital microphone (dmic) connected to the APU instead of the audio codec. Support for the dmic Audio Co-Processor (acp) was added from kernel v5.8, but some of the Linux audio packages do not support it yet

Packages for alsa-lib, alsa-ucm-conf and alsa-mixer-paths have been patched and should be updated soon. If a pulseaudio update is required it might take a bit longer because PulseAudio v14.0 is long overdue for release

Audio capture only works from analog input
card 1: Generic_1 [HD-Audio Generic], device 0: ALC255 Analog [ALC255 Analog]
Multichannel input does not work
card 2: acp [acp], device 0: DMIC capture dmic-hifi-0 []
and may be causing the problem with headset jack detection

Blacklisting the acp device will not affect or impair sound quality for audio playback

Microphone audio may sound better when dmic is supported. But the additional digital microphone(s) is to allow Cortana to hear everything in the room, so audio capture may have less background noise rejection

IMO 2 tiny laptop microphones is not likely to sound much better than 1

Hey thank you for the detailed response, I somewhat understood the problem now, thank you!

Is there any other course of action that you would suggest?

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.