Sound does not work in your Ubuntu 22.04, and happen to have Everest ESSX8336 sound card in your machine? This tutorial may help!
ESSX8336 is one of the common used chips in recent laptops and tablets, such as Huawei Matebook D14~16, Gemini Lake laptop, and Chuwi Hi10X tablet. But, the current Linux Kernel does not support this sound card, though there seems to have patches (here and here) for it.
Until Linux Kernel officially adds the device support, you may build Kernel manually with the patch. Or use yangxiaohua’s custom kernel files to fix the issue.
NOTE: the steps below are done in an Intel machine. The commands in step 3 & 4 vary if you have AMD CPU.
1. This tutorial is tested on Ubuntu 22.04 with the 5.17 OEM Kernel. So, you may first press Ctrl+Alt+T to open terminal, and run command to install the kernel package:
sudo apt install --install-recommends linux-oem-22.04a
And restart computer to apply change.
2. Next, run command to grab the source of yangxiaohua’s custom kernel files:
git clone https://github.com/yangxiaohua2009/custom-kernel
3. Once done, navigate to that folder via command:
cd custom-kernel
And copy required files into system directories via:
sudo cp ./tplg/* /lib/firmware/intel/sof-tplg/
sudo cp sof-jsl.ri /lib/firmware/intel/sof/
sudo cp -r sof-essx8336 /usr/share/alsa/ucm2
4. Kernel 5.17 somehow does not correctly load the file, so you may need to rename filename from ‘sof-jsl-es8336-ssp1.tplg’ to ‘sof-jsl-es8336.tplg’
cd /lib/firmware/intel/sof-tplg && sudo cp sof-jsl-es8336-ssp1.tplg sof-jsl-es8336.tplg
5. Finally, edit the ‘/etc/modprobe.d/alsa-base.conf’ config file via command:
sudo gedit /etc/modprobe.d/alsa-base.conf
When file opens, add the line below to the end and save it.
options snd_soc_sof_8336 quirk=0x01
When everything’s done. Restart your machine and verify if sound’s working!
via: forum.ubuntu.org.cn
Unbelievable how many bugs are there in Ubuntu 22.04. It’s unacceptable for a long term support release. Canonical has become a disgrace of the Linux world.
This is definitely a bug of Kernel, which may also occur in other Linux system.
Thanks for this post!
I tried the procedure with zero results.
Is it applicable to Matebook d15 Ryzen 5 U5500?
As you have an AMD CPU, you may need to change the installation directory in the commands of step 3 & 4. I have only intel CPU, but there’s ‘amd’ folder in that directory. Try replace ‘intel’ in commmands with ‘amd’.
Thank you for your quick response. I tried to use amd instead of intel with no success. One thing I noticed is that I had to manually create the sof and the sof-tplg directories because the amd directory only contains three files. Do you think I could try to copy everything from the intel directory into the amd directory? Or can you suggest a way to understand which libraries are missing? Thanks again.
I’d recommend you to get in touch with the project maintainer via yangxiaohua2009@github.com
Thank you, I will.
dude, u solved a problem? i have amd too
Hi. i tested this with 5.17 kernel on my teclast x6 plus (intel gemini lake) with ubuntu 22.04 and now also with 5.19.11 kernel but I don’t have the sound. i also tried to replace pulseaudio with pipewire. no sound. advice? thanks for your help!
if you do find the solution please post it here! thanks
FWIW, I just followed this with a “MeLE PCG02 Fanless Mini PC Stick Computer,J4125” machine. It did [i]not[/i] require the quirk mode being set (the default quirk mode 2 is the correct one for this PC).
However Ubuntu only detected the headphone port (which doesn’t exist!), so we needed to add
load-module module-alsa-sink device=hw:0,5 sink_name=HDMI sink_properties=device.description=HDMI
to /etc/pulse/default.pa
After a reboot the sound control panel now allowed for the selection of HDMI for output, and the audio tests worked.
Although it does reboot with the output muted; I’ve not fixed that yet.