thesofproject / linux

Linux kernel source tree
Other
88 stars 128 forks source link

Samsung Galaxy Book4 Pro 14" (NP940XGK) - speakers do not work #5002

Open dgunay opened 1 month ago

dgunay commented 1 month ago

EDIT: for anyone coming across this, here is the outcome of my attempt to reverse engineer the codec configuration: https://github.com/dgunay/galaxy-book4-pro-reverse-engineering

The speakers on the Galaxy Book4 Pro 14" NP940XGK don't work out of the box on Linux. The issue seems very similar to previously reported issues with Galaxy Book2 and Book3 laptop speakers not producing sound despite seeing the volume meter move when sound is being output. #4055

I tried using many of the provided hda-verb scripts but they don't fix the problem - still no sound output.

Bluetooth headphones do work. I haven't tried using the onboard headphone jack yet.

My hunch is that the HDA verb sequence is different and needs to be recaptured for this specific device. I might give this a shot while I'm still in the return window, but it's my first time doing something like this so no promises.

plbossart commented 1 month ago

I presume you've looked at https://thesofproject.github.io/latest/getting_started/intel_debug/suggestions.html for the verb tables?

dgunay commented 1 month ago

I presume you've looked at https://thesofproject.github.io/latest/getting_started/intel_debug/suggestions.html for the verb tables?

I looked at the Reverse-engineer the Windows audio driver section yesterday while rabbit-holing in that direction but not the rest of it. I'll go through it step by step tonight.

Thank you for the very prompt response.

dgunay commented 1 month ago

Ran alsa-info.sh. Results: http://alsa-project.org/db/?f=6105eef8dd841227908a445246a6b2582aff57da

dgunay commented 1 month ago

I followed the steps outlined in Disable SOF on PCI/HDaudio devices to test audio playback. No sounds were produced, again despite the volume monitor showing movement on the output device:

image

dgunay commented 1 month ago

Followed the Try booting into Windows first, then reboot into Linux step. No dice. Sound works in Windows, continues to not work in Linux. I didn't expect this to work since I booted to Windows quite a bit at first to get firmware updates, but worth a shot.

dgunay commented 1 month ago

I'm going to save the reverse engineering step for later since the other steps look like much lower hanging fruit.

dgunay commented 1 month ago

For Make sure the ME is enabled - I'm not seeing any way of configuring ME in the BIOS for this laptop, and I think I remember Windows Update downloading drivers for Intel ME when I first booted the thing, so I'm going to just assume for now that I have ME and it is enabled.

dgunay commented 1 month ago

Tried Test at the ALSA ‘hw’ device level

I'm not totally sure what to make of the commands mentioned in the guide.

Installing the suggested packages didn't do anything. When I enabled pulseaudio, it actually broke audio in a different way (YouTube videos would no longer play in Firefox until I disabled it). Installing pulseaudio-alsa fixed that, but did not result in sound coming out of the speakers.

dgunay commented 1 month ago

I've done Verify mixer settings multiple times now so I'm pretty sure the mixer isn't muting my speakers.

dgunay commented 1 month ago

Enabled dynamic debugging and ran sudo dmesg | rg -i 'snd|sof|pci'

Maybe someone more knowledgeable than me can glean something from this: https://gist.github.com/dgunay/0eea4dc528c55d30906429e9419d8264

dgunay commented 1 month ago

I'm not really qualified to tell whether the SOF tracing step is necessary yet, but I have sof-logger installed now.

dgunay commented 1 month ago

I don't think Digital mic issues applies to me, so I'm skipping that step.

dgunay commented 1 month ago

Looks like my system does not have ES8336 support according to the output of alsa-info - skipping that step.

dgunay commented 1 month ago

I've now tried everything in the suggestions article to the best of my ability, except for the reverse engineering step. Don't know if I'll have the time to attempt that tonight, we'll see.

dgunay commented 1 month ago

I've run through the reverse engineering steps from https://asus-linux.org/blog/sound-2021-01-11/ now but haven't had any luck. Here are my realtek driver dumps from both windows and linux: https://gist.github.com/dgunay/3c9a326e7f653a6cb1c7d282bb41853f

I ultimately intend to return the laptop so I'm not going to be able to keep grinding this problem down. I'm hoping this at least saves someone some time down the road, or perhaps someone more knowledgeable can use this to make a patch.

Wasn't able to figure out how to reconfigure the pins and HDA verbs. I'll be cleaning up my work and pushing up a repository soon.

dgunay commented 1 month ago

Repository with all the dumps and some accompanying information: https://github.com/dgunay/galaxy-book4-pro-reverse-engineering

mjkim0727 commented 1 month ago

Is this verb work on NT961XGK-K02/C?

I use Galaxy Book 4 Pro 16" South Korea Domestic model.

dgunay commented 1 month ago

Is this verb work on NT961XGK-K02/C?

I use Galaxy Book 4 Pro 16" South Korea Domestic model.

I wasn't able to get it to work for me and I don't have the 16", but you're welcome to try it out.

mayanksingh2298 commented 16 hours ago

I use Galaxy book 3 pro 14"

I also can't get it to work using any list. Any help?

mixim-mixim commented 13 hours ago

I also use Galaxy Book 4 Pro 16" (Europe version) Tried everything mentioned here (all hadd-verb scripts) nothing fixed, speakers always no sound, jack is ok

Please help !