Linux - HardwareThis forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I have Slackware 13.1 running on a Lenovo W510 with an nVidia Quadro FX 880M and am trying to get audio output through the Displayport -> HDMI interface in Linux. In Windows 7, this works fine so hardware wise things are set up properly.
I also am running kernel 2.6.34.1 with ALSA 1.0.23. aplay looks to properly detect the HDMI audio out as the following:
Whenever I play audio, it is coming out of the notebook's speakers rather than the speakers connected to the monitor; speakers are actually part of the monitor. In KDE's system settings for multimedia, there's a test option for output devices. The one for HDA Intel works fine and plays through the notebook's speakers. Running the test for the HDA NVidia yields no sound whatsoever. I feel like I am missing something... any suggestions?
Ok, gotchas here are:
1. The hda Intel section in kernel config actually is a menu - everyone did a hda intel chip and just check you have kernel supoport.
2. This will need video driver support, as you are switching bits of that - have you got it?
3. The hda intel chip may not be set up correctly. As a last resort there are scripts up there to get this set up, but it's not for the faint hearted.
Never looked in that section as I used Slackware's kernel config to build off of for the 2.6.34.1 kernel, however after taking a look at the options I see that CONFIG_SND_HDA_CODEC_NVHDMI is set Y, so there is nVidia HDMI support.
The video driver I am using is the binary nVidia drivers, the latest in fact.
How do I verify the chip to be set up properly or not? According to lspci -v, module for this is loaded...
01:00.1 Audio device: nVidia Corporation High Definition Audio Controller (rev a1)
Subsystem: Lenovo Device 219a
Flags: bus master, fast devsel, latency 0, IRQ 16
Memory at cdefc000 (32-bit, non-prefetchable) [size=16K]
Capabilities: <access denied>
Kernel driver in use: HDA Intel
Kernel modules: snd-hda-intel
Let's presume everything is set up correctly, and ig that's proved wrong, we can dig.
Now sound you want to hear through your monitopr speakers is coming through the 0.1w cheap crappy laptop speakers.
But you're playing sound with alsa. An obvious bodge would be to bring those speakers to a jackplug and plug it into the soundcard. If not, you are going to have to do the same internally in software. If I was trying this, I'd be searching alsa project's site, and joining a forum/mailing list/irc channel there, where the experts hang out.Or try google. The first link I tried off a search for +hdmi +audio +linux gave me http://www.phoronix.com/scan.php?pag...nux_hdmi&num=1
which looks as if it might be topical and interesting if you read it. Add your video card as a search term. Post yopur results when you get it working.
Thanks for the help business_kid! You set me onto the right path and have now gotten audio through the HDMI interface to work!
The "fix" for me was quite simple. If you issue the command "aplay -l" in a console, it should hopefully list the sound devices you have on your system. For me it listed one for the sound device that controls the Lenovo speakers and a bunch for nVidia's HDMI interface. I do not have my machine in front of me now, but it was similar to this:
In the above you can see that the HDMI device is seen as card #1. So what I did was create/edit the file /etc/modprobe.d/sound.conf (in my case I had to create it) and added the following:
Code:
options snd-hda-intel probe_mask=0xffff,0xfff2
The "probe_mask" string (here "0xffff,0xfff2") depends on the card number of your soundcard as listed by aplay -l. If you have card number 0, add:
After adding this one line to sound.conf, exit KDE and "rmmod snd_hda_intel" to unload this module. Run "modprobe snd_hda_intel" to load the module, which will read the change added to sound.conf. "aplay -l" should now list one HDMI device and this should be all that is needed. From here tell KDE in the settings to use the HDMI device rather than the other one! SOLVED!
Guys, if you dont mind I will ask a few questions. Not to hijack the thread since I have the same issue (or almost). If my post in this thread is not welcome, please let me know I will open a new thread.
I have a GT 430 videocard installed on my Slackware64 13.1 htpc and cant get the card to be detected by aplay or alsaconf or anything else. Only the onboard devices are detected. Very similar to what dimm0kj was saying at the beginning of this thread except my nvidia hdmi audio is not listed by aplay.
I am using the stock slack64 13.1 kernel 2.6.33.4 and I've recompiled alsa from sources to version 1.0.23.
Do I need to upgrade my kernel to get this to work?
First read up on the video card. It may (Like my laptop's) be hdmi capable but the manufacturer (HP) simply nobbled the feature in the video card and didn't connect it to the outside world.
I read up on the video card and it seems that its not the only nvidia card that alsa has problems to see for sound thru hdmi... all solutions have found are with ubuntu users installing patches or whatever it is... So far nobody in slack seems to have that problem, except dimm0k here that had the same problem but I am one step behind in the sense that right now splay -l does not even list my nvidia controller:
business_kid, sorry I got your reply after I opened my own thread. Whatever works for me here I will make sure I duplicate it in my thread so if people search by thread titles,. they will have more resources and less frustrations...
What got me going is what dimm0k said:
Quote:
however after taking a look at the options I see that CONFIG_SND_HDA_CODEC_NVHDMI is set Y, so there is nVidia HDMI support.
I looked in my kernel config (stock kernel for Slack64 13.1) and the option is set to Y so it is in the kernel (unless I am wrong).
Now, the description of that option in menuconfig mentioned a module called snd-hda-codec-nvhdmi, so I tried to load this module so far unknown to me, and modprobe loaded it without a glitch. I tried alsaconf & aplay, but neither of them detected my HDMI Nvidia controller...
My problem is that I cant get past what dimm0k started with, my HDMI devices are not recognized at all.. Again from aplay -l (like the OP did):
Nowhere it announces itself as hdmi capable but this card IS capable of outputting sound thru HDMI because everybody are doing it. Googling "GT430 hdmi alsa" reveals many forums where people are saying that alsa does not detect/recognize the nvidia HD audio chipset on that card (the Gt220+ cards) so whatever chipset series they use, alsa dont like it...
Look at this forum (XBMC), specifically starting at post 18. The guy got it going because he is using ubuntu.
The other thing that I must admit not having tried is to deactivate the onboard ATI HD audio controller... I just thought about it but did not try. I'll try tonight and post back.
They replied to my thread and basically here their answer:
Quote:
I've confirmed both that:
a) The symptoms in your bug report file match the ALSA driver not supporting the FERMI codec IDs.
b) The 2.6.33.3 (and indeed 2.6.33.6) kernel doesn't contain the support for FERMI codec IDs.
Unfortunately, you'll either need to apply the patch and rebuild your own kernel, or move to a newer kernel or distro/version.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.