does not detect my sound card HDMI
Do you notice how the output of lspci -H1
contains a line that isn't there in lspci
:
01:00.1 Audio device: NVIDIA Corporation GF108 High Definition Audio Controller (rev a1)
That's your hdmi audio chip. What is going wrong is that Linux hasn't detected the card properly and thus didn't load the driver. The good news is that the chip is powered and thus we can trick Linux to try detecting it again. The steps you need to follow depend on the driver you are using: nvidia or nouveau.
Warning: if something goes wrong, this will cause a kernel panic and might cause problems with rebooting, though those can be resolved with rebooting multiple times; waiting 2 minutes before turning your laptop back on; and temporarily removing the power source and battery.
Nouveau
-
The first step is to make sure that the GPU is not in use by a driver. Run
lsmod | grep nouveau
. If it outputs a line starting withnouveau
and ending with a number larger than 0 it is in use. One possible method is to stop X (so either print this out or have a different machine you can read this on):- Press ctrl+alt+f1
- Run
runlevel
and write down the number (in my pc it is 5). - Login as root:
sudo su
- Run
init 3
where 3 is a number smaller than the number you just wrote down, but at as big as 1. - Run
lsmod | grep nouveau
again to make sure that the nouveau driver is no longer in use (there should either be no output; no line starting with nouveau; or the line starting with nouveau ends with 0).
-
As a sanity check, make sure that the GPU and its audio chip are powered:
- Run
lspci -H1 | grep 01:00
. It should output two lines. - Run
lsmod | grep nouveau
again to make sure that the nouveau driver is still not in use.
- Run
-
Now that the GPU is powered without a driver we're going to 'remove' it:
- Run
echo 1 > /sys/bus/pci/devices/0000\:01\:00.0/remove
(if the GPU still had a driver loaded/in use, this causes a kernel panic). - Redetect the GPU and also its audio chip by running
echo 1 > /sys/bus/pci/rescan
. - Run
lspci | grep 01:00.1
. If that outputs anything, congratulations! Your linux is now aware of your GPU audio chip.
- Run
-
Get X running with the nouveau GPU.
- Run
init 5
with 5 being the number you wrote down after runningrunlevel
. You should now see X starting again (otherwise try pressing ctrl+alt+f7). - If you run
aplay -l
, now it should output the HDMI outputs (on my pc there are 4 outputs, and only 1 works).
- Run
NVidia
-
The first step is to make sure that the GPU is not in use by a driver. As you're using the nvidia driver, you must also be using prime.
- Run
prime-select query
. - If it outputs
nvidia
, you can disable the driver by runningsudo prime-select intel
and rebooting. - If it outputs
unknown
then the previous step might also work, but will also break your bumblebee setup.
- Run
-
As a sanity check, make sure that the GPU and its audio chip are powered:
- Login as root:
sudo su
- Run
lspci -H1 | grep 01:00
. It should output two lines. - If the first line ends with
(rev ff)
, you need to power your GPU by runningecho ON > /proc/acpi/bbswitch
. - If the second line is missing, that means that the GPU audio chip is no longer powered. You can try suspending your laptop; resume it again; and check again whether the GPU audio chip is powered (I hope that works for you, otherwise you're out of luck, like me).
- Run
lsmod | grep nvidia
again to make sure that the nvidia driver is still not in use.
- Login as root:
-
Now that the GPU is powered without a driver we're going to 'remove' it:
- Run
echo 1 > /sys/bus/pci/devices/0000\:01\:00.0/remove
(if the GPU still had a driver loaded/in use, this causes a kernel panic). - Redetect the GPU and also its audio chip by running
echo 1 > /sys/bus/pci/rescan
. - Run
lspci | grep 01:00.1
. If that outputs anything, congratulations! Your linux is now aware of your GPU audio chip.
- Run
-
Get X running with the nvidia GPU.
- Run
prime-select
. If it outputsintel
, runprime-select nvidia
. - Logout and back in again.
- If you run
aplay -l
now it should output the HDMI outputs (on my pc there are 4 outputs, and only 1 works).
- Run
Btw. this bug has already been reported on launchpad: https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/1377653?comments=all
Related videos on Youtube
Admin
Updated on September 18, 2022Comments
-
Admin over 1 year
Mainly, the sound only heard in the computer and not on TV, I have no problems with the video, it works correctly.
Ubuntu never detect my sound card
hdmi
.commands:
aplay -l
results:
**** Lista de PLAYBACK dispositivos hardware **** tarjeta 0: PCH [HDA Intel PCH], dispositivo 0: ALC269VB Analog [ALC269VB Analog] Subdispositivos: 1/1 Subdispositivo #0: subdevice #0
I try installing sound drivers using the following commands but still without success.
sudo add-apt-repository ppa:ubuntu-audio-dev/alsa-daily sudo apt-get update sudo apt-get install oem-audio-hda-daily-dkms
I try to detect my sound card hdmi with the following commands but still without success. (Source).
commands:
echo "Sound cards recognized by the system:"; lspci -nn | grep --color=none '\[04[80][13]\]'; echo "Sound cards recognized by ALSA:"; lspci -nn | grep '\[04[80][13]\]' | while read line; do lspci -nnk | grep -A 3 '\[04[80][13]\]' | grep -e 'Kernel modules: ..*' -e '\[04[80][13]\]' | grep --color=none -F "$line"; done; echo "Sound cards recognized by ALSA, and activated:"; lspci -nn | grep '\[04[80][13]\]' | while read line; do lspci -nnk | grep -A 3 '\[04[80][13]\]' | grep -e 'Kernel drivers in use: ..*' -e '\[04[80][13]\]' | grep --color=none -F "$line"; done
results:
Sound cards recognized by the system: 00:1b.0 Audio device [0403]: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller [8086:1c20] (rev 05) Sound cards recognized by ALSA: 00:1b.0 Audio device [0403]: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller [8086:1c20] (rev 05) Sound cards recognized by ALSA, and activated: 00:1b.0 Audio device [0403]: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller [8086:1c20] (rev 05)
So I decided to install another video driver for Nvidia in "Additional Drivers".
After installing "NVIDIA binary driver - version 346.59 from nvidia-346 (proprietary, tested)" when starting Ubuntu me the following message:
ACPI PPC Probe failed. Starting version 219
And I still do not detect my sound card
HDMI
.Can anyone help me, please?
Thank you for your attention.
Update 13/07/2015
commands:
lspci
results:
00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09) 00:01.0 PCI bridge: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (rev 09) 00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09) 00:16.0 Communication controller: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 (rev 04) 00:1a.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (rev 05) 00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 05) 00:1c.0 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 (rev b5) 00:1c.2 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 3 (rev b5) 00:1c.4 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 5 (rev b5) 00:1c.5 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 6 (rev b5) 00:1d.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (rev 05) 00:1f.0 ISA bridge: Intel Corporation HM67 Express Chipset Family LPC Controller (rev 05) 00:1f.2 SATA controller: Intel Corporation 6 Series/C200 Series Chipset Family 6 port SATA AHCI Controller (rev 05) 00:1f.3 SMBus: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller (rev 05) 01:00.0 VGA compatible controller: NVIDIA Corporation GF108M [GeForce GT 525M] (rev a1) 02:00.0 Network controller: Intel Corporation Centrino Wireless-N 1030 [Rainbow Peak] (rev 34) 03:00.0 USB controller: NEC Corporation uPD720200 USB 3.0 Host Controller (rev 04) 04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)
commands:
sudo lspci -H1
results:
00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09) 00:01.0 PCI bridge: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (rev 09) 00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09) 00:16.0 Communication controller: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 (rev 04) 00:1a.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (rev 05) 00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 05) 00:1c.0 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 (rev b5) 00:1c.2 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 3 (rev b5) 00:1c.4 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 5 (rev b5) 00:1c.5 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 6 (rev b5) 00:1d.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (rev 05) 00:1f.0 ISA bridge: Intel Corporation HM67 Express Chipset Family LPC Controller (rev 05) 00:1f.2 SATA controller: Intel Corporation 6 Series/C200 Series Chipset Family 6 port SATA AHCI Controller (rev 05) 00:1f.3 SMBus: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller (rev 05) 01:00.0 VGA compatible controller: NVIDIA Corporation GF108M [GeForce GT 525M] (rev a1) 01:00.1 Audio device: NVIDIA Corporation GF108 High Definition Audio Controller (rev a1) 02:00.0 Network controller: Intel Corporation Centrino Wireless-N 1030 [Rainbow Peak] (rev 34) 03:00.0 USB controller: NEC Corporation uPD720200 USB 3.0 Host Controller (rev 04) 04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)
-
bcmpinc almost 9 yearsCan you give the output of
lspci
and the output ofsudo lspci -H1
? -
Admin over 8 years@bcmpinc Hi, sorry for taking so much, here are the results.
-
-
Admin almost 9 yearsdoesn't work for me, ubuntu don't detect my hdmi.
-
Admin almost 9 yearsdoesn't work for me, ubuntu don't detect my hdmi.
-
Admin over 8 yearsHi, I am using nouveau, had problems in step 3, the first was,
cat: /proc/acpi/bbswitch: No such file or directory
, and the second was,lspci -H1 | grep 01:00.1
, doesn't display me nothing, what can I do ? I don't have luck :( -
bcmpinc over 8 yearsOk, I though you we're using nvidia. Did you manage to completely uninstall the nvidia driver? I.e.
lsmod | grep nvidia
doen't output anything. With nouveau it becomes a lot easier as step 1 should work, so you can skip step 2. I've updated step 3. You can also try the method I described here: bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/1377653/…. -
bcmpinc over 8 yearsI've now splitted the answer depending on the driver you're using. If the nouveau method doesn't work and you're able to properly suspend and resume your laptop you can also try installing the nvidia driver and try that method.
-
Admin over 8 yearsAll good, is working, but had a problem with the following command:
alsa reload
andalsa force-reload
, he tells me:(failed: modules still loaded: snd-hda-codec-hdmi snd-hda-codec-realtek snd-hda-codec-generic snd-hda-intel snd-hda-controller snd-hda-codec snd-hwdep snd-pcm snd-timer)
, and when I reboot, I lose all my settings. -
bcmpinc over 8 yearsI never noticed that, but you're right. I guess
alsa reload
doesn't do anything then. Did you still need to restart pulse? If not, I'll remove that last step. -
Admin over 8 yearsI don't need restart pulse-audio :), there is not ways to keep the settings permanently? (when I reboot, I lose everything I did).
-
bcmpinc over 8 yearsNo, unfortunately you have to repeat these steps every time you reboot. Though you can create a script to automate this. And possibly also add it to the boot sequence to run just before the login screen is started (though I've no experience with this).
-
xealits over 4 yearsUnfortunately, this advice got me into troubles: linux hanged at pci rescan, after a hard reset it surprisingly returned to normal, and grep lspci showed nvidia audiocontroller as expected, then setting
prime-select nvidia
it booted with no image on the screen (just a black screen), a hard reset after that and the boot log shows a successful filesystem recovery, but then the kernel goes into a panic. I guess I should have tried just to install the nouveau driver.