7

After installing Ubuntu 20.04, I noticed that sound is not working on my system.

aplay -l was giving me Sound card not detected error.

Running inxi -A | grep driver gave me ... driver: sof-audio-pci

I tried some solutions on AskUbuntu, but they did not work and all of them used driver snd_hda_intel. Other pages said that firmwares for this driver are not shipped with distribution.

Is it possible to make sound work for Ubuntu 20.04?

Olimjon
  • 7,522

3 Answers3

20

As I said the sound driver I was running was sof-audio-pci, which had no normal firmware at the moment.

I searched nearly 3 hours trying to solve this headache and finally found the solution, just disable this "sof" driver and fall back to intel:

Do:

sudo gedit /etc/default/grub

Change

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

to:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash snd_hda_intel.dmic_detect=0"

Then do:

sudo update-grub

and Reboot.

You can check if soundcards are detected with:

aplay -l

Source

Olimjon
  • 7,522
12

I had a similar problem on Arch Linux on a Lenovo Thinkpad X13 with kernel version 5.10. The solution is "similar" to @Olimjon, but I changed another kernel module parameter. Indeed, modinfo snd_hda_intel states that:

parm:           dmic_detect:Allow DSP driver selection (bypass this driver) (0=off, 1=on) (default=1); deprecated, use snd-intel-dspcfg.dsp_driver option instead (bool)

Running modinfo snd_intel_dspcfg gives the following info:

parm:           dsp_driver:Force the DSP driver for Intel DSP (0=auto, 1=legacy, 2=SST, 3=SOF) (int)

So I added snd_intel_dspcfg.dsp_driver=1 to my GRUB_CMDLINE_LINUX_DEFAULT to get the same effect. The other values give me no audio.

Also, you should note that both solutions break the internal microphone.

rgouicem
  • 221
5

The accepted answer is only a temporary solution, as after implementing it, my microphone no longer worked.

A more permanent solution would be to install the SOF firmware binaries from here: https://github.com/thesofproject/sof-bin

Specifically:

  1. Clone the repository: git clone https://github.com/thesofproject/sof-bin.git
  2. Change to directory: cd sof-bin
  3. Follow: https://github.com/thesofproject/sof-bin#install-process-with-installsh
sudo mv /lib/firmware/intel/sof* some_backup_location/
sudo mv /usr/local/bin/sof-*     some_backup_location/ # optional
sudo ./install.sh v2.2.x/v2.2
  1. Reboot

After this the sound output as well as the microphone were working (Ubuntu 23.04, Lenovo X1 Gen8)

Note: Make sure that the snd_hda_intel.dmic_detect=0 or snd_intel_dspcfg.dsp_driver=1 settings are not set in GRUB_CMDLINE_LINUX_DEFAULT or /etc/modprobe.d/alsa-base.conf

Votti
  • 33
Mahmoud
  • 216