You are not logged in.

#1 2014-05-04 13:50:49

oddish2211
Member
Registered: 2014-05-04
Posts: 5

No HDMI audio device with Nvidia drivers, pulseaudio and alsa

I recently installed Arch linux after a period of working with windows. But i can't get audio to work over hdmi.
My Nvidia gtx660 ti is connected to a receiver with a hdmi cable. In the past the hdmi ports would show up as audio devices in alsa, but now they don't.

aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Generic [HD-Audio Generic], device 0: ALC887-VD Analog [ALC887-VD Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Generic [HD-Audio Generic], device 3: ALC887-VD Digital [ALC887-VD Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

I do have replaced the motherboard a while ago, now i'm using a new AMD apu with an onboard Radeon gpu.
It is possible that the Nvidia gpu conflicts with de AMD gpu, but i disabled it in EFI.
I believe the audio devices aplay -l lists belong to the onboard realtek audio chip on the motherboard.
If i disable this audio chip in EFI aplay -l just shows no devices.

i'm currently using the proprietary Nvidia drivers, but i had the same problems using the nouveau video drivers.

lsmod | grep snd
snd_hda_codec_realtek    47141  1 
snd_hda_codec_generic    53860  1 snd_hda_codec_realtek
snd_hda_intel          38728  2 
snd_hda_codec         101816  3 snd_hda_codec_realtek,snd_hda_codec_generic,snd_hda_intel
snd_hwdep               6396  1 snd_hda_codec
snd_pcm                81607  2 snd_hda_codec,snd_hda_intel
snd_timer              19038  1 snd_pcm
snd                    60086  11 snd_hda_codec_realtek,snd_hwdep,snd_timer,snd_pcm,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel
soundcore               5551  1 snd
lspci -k
01:00.0 VGA compatible controller: NVIDIA Corporation GK104 [GeForce GTX 660 Ti] (rev a1)
    Subsystem: ASUSTeK Computer Inc. Device 841e
    Kernel driver in use: nvidia
    Kernel modules: nouveau, nvidia
01:00.1 Audio device: NVIDIA Corporation GK104 HDMI Audio Controller (rev a1)
    Subsystem: ASUSTeK Computer Inc. Device 841e
    Kernel driver in use: snd_hda_intel
    Kernel modules: snd_hda_intel

Maybe this is weird, that the audio device uses the intel kernel module. But maybe this is a common module for a lot of audio devices.

I couldn't really find an answer on the rest of this forum. A lot of other problems are about getting alsa to play to a specific hdmi port. I have the problem that the ports doesn't even show up.
I'm a bit stuck here.

-edit
added code tags

Last edited by oddish2211 (2014-05-04 14:07:36)

Offline

#2 2014-05-04 14:02:01

emeres
Member
Registered: 2013-10-08
Posts: 1,570

Re: No HDMI audio device with Nvidia drivers, pulseaudio and alsa

Use code tags. Do NVIdia cards still use snd_hda_codec_nvhdmi for HDMI or has this changed?

Last edited by emeres (2014-05-04 14:14:00)

Offline

#3 2014-05-04 14:23:15

oddish2211
Member
Registered: 2014-05-04
Posts: 5

Re: No HDMI audio device with Nvidia drivers, pulseaudio and alsa

Well, this document mentions that the snd_hda_codec_nvhdmi module has been replaced/renamed to snd_hda_codec_hdmi.
ftp://download.nvidia.com/XFree86/gpu-h … audio.html

If i manually load this module, hdmi and nvhdmi, using modprobe nothing happens.

Offline

#4 2014-05-04 14:34:38

emeres
Member
Registered: 2013-10-08
Posts: 1,570

Re: No HDMI audio device with Nvidia drivers, pulseaudio and alsa

Try loading the module specifying your card using vid and pid (lspci -nn).

Offline

#5 2014-05-04 14:45:38

oddish2211
Member
Registered: 2014-05-04
Posts: 5

Re: No HDMI audio device with Nvidia drivers, pulseaudio and alsa

I've tried with

modprobe snd_hda_codec_hdmi vendor=0x10de product=0x0e0a

but aplay -l still didn't show anything.

I did notice however that 'lspci -k' still showed 'snd_hda_intel' as the used driver, even with the snd_hda_codec_hdmi driver loaded.

01:00.1 Audio device: NVIDIA Corporation GK104 HDMI Audio Controller (rev a1)
	Subsystem: ASUSTeK Computer Inc. Device 841e
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel

Maybe there is an conflict?

Offline

#6 2014-05-04 14:50:09

emeres
Member
Registered: 2013-10-08
Posts: 1,570

Re: No HDMI audio device with Nvidia drivers, pulseaudio and alsa

If anything you should load snd-hda-intel with vid and pid, snd-hda-codec-hdmi depends on snd-hda-intel snd-hda-codec and is not in conflict with snd-hda-intel.

Last edited by emeres (2014-05-04 14:58:21)

Offline

#7 2014-05-04 15:03:35

oddish2211
Member
Registered: 2014-05-04
Posts: 5

Re: No HDMI audio device with Nvidia drivers, pulseaudio and alsa

If i run

modprobe snd_hda_intel vendor=0x10de product=0x0e0a

then this gets printed to the kernel log

[  655.731520] snd_hda_intel: unknown parameter 'vendor' ignored
[  655.731527] snd_hda_intel: unknown parameter 'product' ignored
[  655.731856] hda_intel: Disabling MSI
[  655.731871] hda-intel 0000:01:00.1: Handle VGA-switcheroo audio client
[  656.739954] hda-intel 0000:01:00.1: Codec #0 probe error; disabling it...

I've tried vid, pid, vendor_id and product_id as parameters, none work. And if i issue modinfo on this module i can't really find a parameter that looks like vendor/product id.
The same happens if i try adding parameters to the loading of snd_hda_codec_hdmi.

Offline

#8 2014-05-04 15:39:19

emeres
Member
Registered: 2013-10-08
Posts: 1,570

Re: No HDMI audio device with Nvidia drivers, pulseaudio and alsa

What else does dmesg say about your graphic cards and snd-hda-intel? You might want to use modprobe.d and restart, look at the wiki for alsa and modprobe. Has the AMD card hdmi? Is it recognized properly when enabled?

[  655.731856] hda_intel: Disabling MSI

No MSI might be problematic.

Offline

#9 2014-05-04 16:44:38

oddish2211
Member
Registered: 2014-05-04
Posts: 5

Re: No HDMI audio device with Nvidia drivers, pulseaudio and alsa

Okay, i'm going to shout and hit my head against the wall.

after a few tries i remembered that PCI-E remapping using a IOMMU was quite buggy with videocards. I tried that about a year ago, i wanted to passthrough a gpu to a virtual machine. So i tried disabling the IOMMU in EFI, and guess what. Suddenly there are 4 hdmi outputs in alsa.
Thanks for the help!

Offline

Board footer

Powered by FluxBB