HP ENVY 15-ey0777ng B&O sound issues with speakers and microphone

Hello,

I have recently installed Fedora on this laptop, and apart from a few things everything seems to be working.
The internal speakers however do not play any sound, although they appear to be detected.
4454e2effeb0268d633cbe56fbf19b4736c83a62.png
and i can see audio peaks.

I have read a few things about these laptops and speakers having issues with the pinout, however I have tried overrides in hdjackretask:

Although most configs only result in dummy output.
The screenshot in the post is identical to what I can see on my device.

Edit for more info:

dmesg output from the audio driver:

[   16.602408] snd_hda_intel 0000:04:00.1: enabling device (0000 -> 0002)
[   16.602621] snd_hda_intel 0000:04:00.1: Handle vga_switcheroo audio client
[   16.602930] snd_hda_intel 0000:04:00.6: enabling device (0000 -> 0002)
[   16.614424] Adding 8388604k swap on /dev/zram0.  Priority:100 extents:1 across:8388604k SSDscFS
[   16.639930] MCE: In-kernel MCE decoding enabled.
[   16.641995] snd_hda_intel 0000:04:00.1: bound 0000:04:00.0 (ops amdgpu_dm_audio_component_bind_ops [amdgpu])
[   16.644556] input: HD-Audio Generic HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:08.1/0000:04:00.1/sound/card0/input32
[   16.644649] input: HD-Audio Generic HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:08.1/0000:04:00.1/sound/card0/input33
[   16.743377] mt7921e 0000:01:00.0: enabling device (0000 -> 0002)
[   16.747119] snd_hda_codec_realtek hdaudioC1D0: autoconfig for ALC245: line_outs=1 (0x17/0x0/0x0/0x0/0x0) type:speaker
[   16.747125] snd_hda_codec_realtek hdaudioC1D0:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[   16.747127] snd_hda_codec_realtek hdaudioC1D0:    hp_outs=1 (0x21/0x0/0x0/0x0/0x0)
[   16.747129] snd_hda_codec_realtek hdaudioC1D0:    mono: mono_out=0x0
[   16.747130] snd_hda_codec_realtek hdaudioC1D0:    inputs:
[   16.747131] snd_hda_codec_realtek hdaudioC1D0:      Mic=0x19
[   16.812872] input: HD-Audio Generic Mic as /devices/pci0000:00/0000:00:08.1/0000:04:00.6/sound/card1/input34
[   16.812983] input: HD-Audio Generic Headphone as /devices/pci0000:00/0000:00:08.1/0000:04:00.6/sound/card1/input35
[   16.846244] mt7921e 0000:01:00.0: HW/SW Version: 0x8a108a10, Build Time: 20220908210919a

This seems interesting too. Speaker configured as input?

[   16.283535] input: PC Speaker as /devices/platform/pcspkr/input/input30

hwprobe audio devices:

   "pci:1002-1637-103c-8a31" : {
      "Bus" : "PCI",
      "Class" : "04-03",
      "Device" : "Renoir Radeon High Definition Audio Controller",
      "Driver" : "snd_hda_intel",
      "IOMMUGroup" : "14",
      "SVendor" : "Hewlett-Packard Company",
      "Status" : "detected",
      "Type" : "sound",
      "Vendor" : "Advanced Micro Devices, Inc. [AMD/ATI]"
   },
   "pci:1022-15e2-103c-8a31" : {
      "Bus" : "PCI",
      "Class" : "04-80",
      "Device" : "ACP/ACP3X/ACP6x Audio Coprocessor",
      "Driver" : "snd_pci_acp3x, snd_rn_pci_acp3x, snd_pci_acp5x, snd_pci_acp6x, snd_sof_amd_renoir",
      "IOMMUGroup" : "18",
      "SVendor" : "Hewlett-Packard Company",
      "Status" : "detected",
      "Type" : "multimedia controller",
      "Vendor" : "Advanced Micro Devices, Inc. [AMD]"
   },
   "pci:1022-15e3-103c-8a31" : {
      "Bus" : "PCI",
      "Class" : "04-03",
      "Device" : "Family 17h/19h HD Audio Controller",
      "Driver" : "snd_hda_intel",
      "IOMMUGroup" : "19",
      "SVendor" : "Hewlett-Packard Company",
      "Status" : "detected",
      "Type" : "sound",
      "Vendor" : "Advanced Micro Devices, Inc. [AMD]"
   },

aplay

**** List of PLAYBACK Hardware Devices ****
card 0: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Generic [HD-Audio Generic], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: Generic_1 [HD-Audio Generic], device 0: ALC245 Analog [ALC245 Analog]
  Subdevices: 0/1
  Subdevice #0: subdevice #0

And asla-info.sh:
http://alsa-project.org/db/?f=9dfbec737324de3948270486bacfd35436475187

I changed the title because I realised the microphone also has issues. It does record audio, however it is extremely quiet and the mute button does not work.
I unfortunately do not know what other information I should include.

I you need more info please tell me.
Thank you.

I am now on Fedora 36 with kernel 6.0.5
The issue persists.

Can you run in terminal ‘alsamixer’ and with F6 select default sound card ‘ALC245 Analog’’ and check sound on system.

Does not work I’m afraid.

It seems the ALC245 is quite an obscure chip.
I tired looking it up with several search engines, however the only thing I could find was some kernel drivers for apple devices.
The chip does not even seem to exist on realtek’s own website.

Thank your for the help though.

ok can you give us ‘pactl list sinks’ output

Sink #41
	State: RUNNING
	Name: alsa_output.pci-0000_04_00.6.HiFi__hw_Generic_1__sink
	Description: Family 17h/19h HD Audio Controller Speaker + Headphones
	Driver: PipeWire
	Sample Specification: s32le 2ch 48000Hz
	Channel Map: front-left,front-right
	Owner Module: 4294967295
	Mute: no
	Volume: front-left: 56288 /  86% / -3.96 dB,   front-right: 56288 /  86% / -3.96 dB
	        balance 0.00
	Base Volume: 65536 / 100% / 0.00 dB
	Monitor Source: alsa_output.pci-0000_04_00.6.HiFi__hw_Generic_1__sink.monitor
	Latency: 0 usec, configured 0 usec
	Flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY 
	Properties:
		alsa.card = "1"
		alsa.card_name = "HD-Audio Generic"
		alsa.class = "generic"
		alsa.device = "0"
		alsa.driver_name = "snd_hda_intel"
		alsa.id = "ALC245 Analog"
		alsa.long_card_name = "HD-Audio Generic at 0xd05c0000 irq 92"
		alsa.mixer_device = "_ucm0003.hw:Generic_1"
		alsa.name = "ALC245 Analog"
		alsa.resolution_bits = "16"
		alsa.subclass = "generic-mix"
		alsa.subdevice = "0"
		alsa.subdevice_name = "subdevice #0"
		api.alsa.card.longname = "HD-Audio Generic at 0xd05c0000 irq 92"
		api.alsa.card.name = "HD-Audio Generic"
		api.alsa.open.ucm = "true"
		api.alsa.path = "hw:Generic_1"
		api.alsa.pcm.card = "1"
		api.alsa.pcm.stream = "playback"
		audio.channels = "2"
		audio.position = "FL,FR"
		card.profile.device = "0"
		device.api = "alsa"
		device.class = "sound"
		device.id = "40"
		device.profile.description = "Speaker + Headphones"
		device.profile.name = "HiFi: hw:Generic_1: sink"
		device.routes = "2"
		factory.name = "api.alsa.pcm.sink"
		media.class = "Audio/Sink"
		device.description = "Family 17h/19h HD Audio Controller"
		node.name = "alsa_output.pci-0000_04_00.6.HiFi__hw_Generic_1__sink"
		node.nick = "ALC245 Analog"
		node.pause-on-idle = "false"
		object.path = "alsa:pcm:1:hw:Generic_1:playback"
		priority.driver = "1000"
		priority.session = "1000"
		factory.id = "18"
		clock.quantum-limit = "8192"
		client.id = "33"
		node.driver = "true"
		factory.mode = "merge"
		audio.adapt.follower = ""
		library.name = "audioconvert/libspa-audioconvert"
		object.id = "41"
		object.serial = "41"
		node.max-latency = "16384/48000"
		api.alsa.period-size = "1024"
		api.alsa.period-num = "32"
		api.alsa.headroom = "0"
		api.acp.auto-port = "false"
		api.acp.auto-profile = "false"
		api.alsa.card = "1"
		api.alsa.use-acp = "true"
		api.dbus.ReserveDevice1 = "Audio1"
		device.bus = "pci"
		device.bus_path = "pci-0000:04:00.6"
		device.enum.api = "udev"
		device.icon_name = "audio-card-analog-pci"
		device.name = "alsa_card.pci-0000_04_00.6"
		device.nick = "HD-Audio Generic"
		device.plugged.usec = "20880853"
		device.product.id = "0x15e3"
		device.product.name = "Family 17h/19h HD Audio Controller"
		device.subsystem = "sound"
		sysfs.path = "/sys/devices/pci0000:00/0000:00:08.1/0000:04:00.6/sound/card1"
		device.vendor.id = "0x1022"
		device.vendor.name = "Advanced Micro Devices, Inc. [AMD]"
		device.string = "1"
	Ports:
		[Out] Speaker: Speaker (type: Speaker, priority: 100, availability unknown)
		[Out] Headphones: Headphones (type: Headphones, priority: 200, availability group: Headphone, not available)
	Active Port: [Out] Speaker
	Formats:
		pcm

Can you do ‘sudo dnf swap wireplumber pipewire-media-session’ in terminal and check like that sound.

Just after running that no audio devices were detected at all.
After a reboot I am back with the previous problem

So I have done some more things:
I have applied these settings from archwiki
57dc221dbe1fc48fc5508d99c9898e2918f6eda4.png
https://wiki.archlinux.org/title/Laptop/HP#Model_list

aswell as disabling ucm in wireplumber config:
0f5017664c38092b48f8270e04ac2b514a0f5732.png
I unfortunately do not remember the source for that

I still have no sound, however my devices now look like this:
1924bcf84c615513ada206b7f5c6fcd0670ab1bd.png
50f9a567cf167b73c2be9df2f7991765d0aa84e7.png

Pin 0x14 is still shown as unconnected:
c539e5a6d21a5b27561139f383e1ed8f35c72f1e.png

And here is a connection visible when pressing the system sound options in gnome control centre using qpwgraph:
ebf12058eeee685aa33b9a71bb58384d07ebb939.png

In dmesg the pins are shown as line out and not as speaker. Speaker is unconnected:

It also appears to be an issue related to a cirrus logic chip:

[   15.095895] cs35l41-hda i2c-CSC3551:00-cs35l41-hda.0: Error: ACPI _DSD Properties are missing for HID CSC3551.
[   15.095901] cs35l41-hda i2c-CSC3551:00-cs35l41-hda.0: error -EINVAL: Platform not supported
[   15.095905] Bluetooth: Core ver 2.22
[   15.095921] cs35l41-hda: probe of i2c-CSC3551:00-cs35l41-hda.0 failed with error -22
[   15.096056] cs35l41-hda i2c-CSC3551:00-cs35l41-hda.1: Error: ACPI _DSD Properties are missing for HID CSC3551.
[   15.096060] cs35l41-hda i2c-CSC3551:00-cs35l41-hda.1: error -EINVAL: Platform not supported
[   15.096082] cs35l41-hda: probe of i2c-CSC3551:00-cs35l41-hda.1 failed with error -22
[   15.140031] input: PC Speaker as /devices/platform/pcspkr/input/input30

Speaker still shown as input

Im on fedora 37 now and I can’t even get back to the state where I can see the Subwoofer.
Still no progress at all.