Go Back   nV News Forums > Linux Support Forums > NVIDIA Linux

Newegg Daily Deals

Reply
 
Thread Tools
Old 10-04-10, 10:57 AM   #13
Stephen Warren
Moderator
 
Stephen Warren's Avatar
 
Join Date: Aug 2005
Posts: 1,327
Default Re: ALSA and GTX 4XX Series

The /dev audio device files are related to the kernel ALSA driver, not the NVIDIA graphics driver. Depending on your distro, the files may physically be created by udev or similar. While there are some interactions between the ALSA driver and the NVIDIA graphics driver (e.g. to pass EDID information from the monitor to the audio driver), none of those interactions should be able to cause /dev files not to be crated, since they happen long after the device files would be created.
Stephen Warren is offline   Reply With Quote
Old 10-05-10, 10:58 AM   #14
seaweed
Registered User
 
Join Date: Sep 2009
Posts: 57
Default Re: ALSA and GTX 4XX Series

Quote:
Originally Posted by Stephen Warren View Post
The /dev audio device files are related to the kernel ALSA driver, not the NVIDIA graphics driver. Depending on your distro, the files may physically be created by udev or similar. While there are some interactions between the ALSA driver and the NVIDIA graphics driver (e.g. to pass EDID information from the monitor to the audio driver), none of those interactions should be able to cause /dev files not to be crated, since they happen long after the device files would be created.
Audio magically reappeared. I use the Ubuntu package version to install the NVIDIA driver, dpkg does a good job of replacing old driver with the new one, however I don't know if it does anything to modprobe order. Based on what you wrote here, it sounds like a mod load ordering issue, if EDID and other information related to HDMI audio has to be validated by the NVidia driver, then NVidia driver should be loaded before ALSA driver. I am sure this dependency is hard to establish on both sides, because they are isolated projects.
seaweed is offline   Reply With Quote
Old 10-08-10, 12:50 PM   #15
Stephen Warren
Moderator
 
Stephen Warren's Avatar
 
Join Date: Aug 2005
Posts: 1,327
Default Re: ALSA and GTX 4XX Series

modprobe ordering shouldn't affect anything; the communication between the two drivers is implemented in the audio HW, which is always present first. If the audio driver loads first, it'll get notified of any new information from the video driver. If the video driver loads first, the information will already be there for when the audio driver starts.
Stephen Warren is offline   Reply With Quote
Old 10-15-10, 07:58 PM   #16
seaweed
Registered User
 
Join Date: Sep 2009
Posts: 57
Default Re: ALSA and GTX 4XX Series

Quote:
Originally Posted by Stephen Warren View Post
modprobe ordering shouldn't affect anything; the communication between the two drivers is implemented in the audio HW, which is always present first. If the audio driver loads first, it'll get notified of any new information from the video driver. If the video driver loads first, the information will already be there for when the audio driver starts.
This is what I get (dmesg) on some of the Ion boxes when audio does not work. 2 out 3 has this issue.

8.933726] udev: starting version 147
[ 10.260484] EXT3 FS on sda1, internal journal
[ 12.767267] nvidia: module license 'NVIDIA' taints kernel.
[ 12.767276] Disabling lock debugging due to kernel taint
[ 12.813458] ip_tables: (C) 2000-2006 Netfilter Core Team
[ 12.846061] lp: driver loaded but no devices found
[ 13.030873] i2c-adapter i2c-0: nForce2 SMBus adapter at 0x4d00
[ 13.030883] ACPI: I/O resource nForce2_smbus [0x4e00-0x4e3f] conflicts with ACPI region SM00 [0x4e00-0x4e3f]
[ 13.030891] ACPI: If an ACPI driver is available for this device, you should use it instead of the native driver
[ 13.030897] nForce2_smbus 0000:00:03.2: Error probing SMB2.
[ 13.031416] shpchp: Standard Hot Plug PCI Controller Driver version: 0.4
[ 13.035283] ACPI: PCI Interrupt Link [LPMU] enabled at IRQ 21
[ 13.035300] nvidia 0000:00:03.5: PCI INT B -> Link[LPMU] -> GSI 21 (level, low) -> IRQ 21
[ 13.037075] ACPI: PCI Interrupt Link [SGRU] enabled at IRQ 20
[ 13.037087] nvidia 0000:02:00.0: PCI INT A -> Link[SGRU] -> GSI 20 (level, low) -> IRQ 20
[ 13.037102] nvidia 0000:02:00.0: setting latency timer to 64
[ 13.037527] NVRM: loading NVIDIA UNIX x86_64 Kernel Module 260.19.04 Thu Sep 2 18:45:06 PDT 2010
[ 13.800632] snd_hda_codec: disagrees about version of symbol snd_ctl_add
[ 13.800641] snd_hda_codec: Unknown symbol snd_ctl_add
[ 13.800921] snd_hda_codec: disagrees about version of symbol snd_card_register
[ 13.800926] snd_hda_codec: Unknown symbol snd_card_register
[ 13.801105] snd_hda_codec: disagrees about version of symbol snd_card_proc_new
[ 13.801109] snd_hda_codec: Unknown symbol snd_card_proc_new
[ 13.801356] snd_hda_codec: disagrees about version of symbol snd_add_device_sysfs_file
[ 13.801361] snd_hda_codec: Unknown symbol snd_add_device_sysfs_file
[ 13.801644] snd_hda_codec: disagrees about version of symbol snd_ctl_remove
[ 13.801649] snd_hda_codec: Unknown symbol snd_ctl_remove
[ 13.801828] snd_hda_codec: disagrees about version of symbol snd_ctl_find_id
[ 13.801832] snd_hda_codec: Unknown symbol snd_ctl_find_id
[ 13.802089] snd_hda_codec: disagrees about version of symbol snd_ctl_new1
[ 13.802093] snd_hda_codec: Unknown symbol snd_ctl_new1
[ 13.802433] snd_hda_codec: disagrees about version of symbol snd_component_add
[ 13.802438] snd_hda_codec: Unknown symbol snd_component_add
[ 13.802634] snd_hda_codec: disagrees about version of symbol snd_ctl_make_virtual_master
[ 13.802639] snd_hda_codec: Unknown symbol snd_ctl_make_virtual_master
[ 13.802875] snd_hda_codec: Unknown symbol __snd_printk
[ 13.803054] snd_hda_codec: disagrees about version of symbol snd_iprintf
[ 13.803058] snd_hda_codec: Unknown symbol snd_iprintf
[ 13.803253] snd_hda_codec: Unknown symbol compat_skip_spaces
[ 13.803431] snd_hda_codec: disagrees about version of symbol snd_ctl_boolean_mono_info
[ 13.803436] snd_hda_codec: Unknown symbol snd_ctl_boolean_mono_info
[ 13.803824] snd_hda_codec: disagrees about version of symbol snd_hwdep_new
[ 13.803828] snd_hda_codec: Unknown symbol snd_hwdep_new
[ 13.804648] snd_hda_codec: disagrees about version of symbol _snd_ctl_add_slave
[ 13.804653] snd_hda_codec: Unknown symbol _snd_ctl_add_slave
[ 13.805572] snd_hda_codec: disagrees about version of symbol snd_pcm_hw_constraint_step
[ 13.805577] snd_hda_codec: Unknown symbol snd_pcm_hw_constraint_step




Kernel version: 2.6.31-20-generic x86_64 GNU/Linux

DC400-e0cb4ef8fdcf:~$ dpkg -l | grep nvidia
ii libvdpau1 0.4-2~karmic~nvidiavdpauppa4 Video Decode and Presentation API for Unix (
ii nvidia-glx-260 260.19.04-0ubuntu1~karmic~nvidiavdpauppa3 NVIDIA binary Xorg driver, kernel module and
ii nvidia-glx-260-modaliases 260.19.04-0ubuntu1~karmic~nvidiavdpauppa3 Modaliases for the NVIDIA binary X.Org drive
ii nvidia-settings 256.29-0ubuntu1~nvidiavdpauppa1 Tool of configuring the NVIDIA graphics driv
seaweed is offline   Reply With Quote
Old 10-15-10, 10:09 PM   #17
seaweed
Registered User
 
Join Date: Sep 2009
Posts: 57
Default Re: ALSA and GTX 4XX Series

Quote:
Originally Posted by seaweed View Post
This is what I get (dmesg) on some of the Ion boxes when audio does not work. 2 out 3 has this issue.
...
Recompiled one of the latest snapshot alsa driver versions, loaded the module without default options and viola, it works. Some unreferenced symbols though.

Now I need to make a ubuntu package out of it
seaweed is offline   Reply With Quote
Old 10-18-10, 11:12 AM   #18
Stephen Warren
Moderator
 
Stephen Warren's Avatar
 
Join Date: Aug 2005
Posts: 1,327
Default Re: ALSA and GTX 4XX Series

You shouldn't be getting any unreferenced symbols. It sounds like there's some problem building the kernel modules; are you building against the same kernel source/build tree as the kernel you're running? Perhaps you have some package installed that's building/replacing some of your audio modules on boot? The best source for assistance with ALSA issues is probably the ALSA users mailing list.
Stephen Warren is offline   Reply With Quote
Old 10-21-10, 06:18 PM   #19
seaweed
Registered User
 
Join Date: Sep 2009
Posts: 57
Default Re: ALSA and GTX 4XX Series

Quote:
Originally Posted by Stephen Warren View Post
You shouldn't be getting any unreferenced symbols. It sounds like there's some problem building the kernel modules; are you building against the same kernel source/build tree as the kernel you're running? Perhaps you have some package installed that's building/replacing some of your audio modules on boot? The best source for assistance with ALSA issues is probably the ALSA users mailing list.
Yes, I built on the same box - after getting the proper source for it. I have pulse installed so its possible. I am just happy that audio is working again and the unreferenced symbols doesn't seem to cause any issue.
seaweed is offline   Reply With Quote
Old 10-23-10, 06:19 AM   #20
[Albator]
Registered User
 
Join Date: May 2005
Posts: 2
Default Re: ALSA and GTX 4XX Series

(post deleted)

Last edited by [Albator]; 10-23-10 at 11:29 AM. Reason: offtopic
[Albator] is offline   Reply With Quote

Old 10-25-10, 05:30 PM   #21
xbmcoholic
Registered User
 
Join Date: Oct 2010
Posts: 2
Angry Re: ALSA and GTX 4XX Series

Quote:
Originally Posted by seaweed View Post
Hmm I am using 2.6.31 kernel - perhaps that ? I will try recompiling alsa. BTW what creates the /dev/audio - is it the alsa driver?
I have similar output for those commands but HDMI audio is still broken - the mini stereo jack works however...

Quote:
Aspire-R3610:~$ dmesg|grep NVRM;uname -a;aplay -l
[ 19.375833] NVRM: loading NVIDIA UNIX x86_64 Kernel Module 260.19.06 Mon Sep 13 04:29:19 PDT 2010
Linux Aspire-R3610 2.6.35-22-generic #35-Ubuntu SMP Sat Oct 16 20:45:36 UTC 2010 x86_64 GNU/Linux
**** List of PLAYBACK Hardware Devices ****
card 0: NVidia [HDA NVidia], device 0: ALC662 rev1 Analog [ALC662 rev1 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 1: ALC662 rev1 Digital [ALC662 rev1 Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 3: NVIDIA HDMI [NVIDIA HDMI]
Subdevices: 1/1
Subdevice #0: subdevice #0
xbmcoholic is offline   Reply With Quote
Old 11-02-10, 11:45 AM   #22
Stephen Warren
Moderator
 
Stephen Warren's Avatar
 
Join Date: Aug 2005
Posts: 1,327
Default Re: ALSA and GTX 4XX Series

xbmcoholic,

Can you please describe your problems in detail. Please try using alsamixer to unmute everything on your audio card, try the speaker-test application to test audio, use device hw:0,3 when testing with speaker-test. Finally, can you please provide an nvidia-bug-report. Thanks.
Stephen Warren is offline   Reply With Quote
Old 11-02-10, 05:38 PM   #23
xbmcoholic
Registered User
 
Join Date: Oct 2010
Posts: 2
Default Re: ALSA and GTX 4XX Series

Quote:
Originally Posted by Stephen Warren View Post
xbmcoholic,

Can you please describe your problems in detail. Please try using alsamixer to unmute everything on your audio card, try the speaker-test application to test audio, use device hw:0,3 when testing with speaker-test. Finally, can you please provide an nvidia-bug-report. Thanks.
Thanks for responding Stephen,
I managed to fix it on the weekend by un-muting the S/PDIF and S/PDIF 1 in the alsamixer. I cant believe how many other things I tried before this, what a bad label.

Cheers,
X
xbmcoholic is offline   Reply With Quote
Old 12-22-10, 03:24 PM   #24
Astar
Registered User
 
Join Date: Aug 2008
Posts: 14
Default Re: ALSA and GTX 4XX Series

Just want to confirm, that I have sound over hdmi/dp working with ALSA (no pulse yet)
Info:
  1. GTX 460 (Zotac's)
  2. nvidia driver 260.19.06
  3. ubuntu maverick (2.6.35-24-generic)
  4. linux-alsa-driver-modules-2.6.35-24-generic from ubuntu-audio-dev ppa
  5. unmuted S/PDIF devices in alsamixer (by default, only 1st is unmuted)

I don't use any tricks with "probe_mask"

I don't know how to select proper device name, when I know which eld# is used, but I iterated through all available devices
Code:
$ cat /proc/asound/pcm | grep HDMI
01-03: HDMI 0 : HDMI 0 : playback 1
01-07: HDMI 0 : HDMI 0 : playback 1
01-08: HDMI 0 : HDMI 0 : playback 1
01-09: HDMI 0 : HDMI 0 : playback 1
using plughw device:
Code:
$ aplay -Dplughw:1,3 /usr/share/sounds/alsa/Noise.wav
$ aplay -Dplughw:1,7 /usr/share/sounds/alsa/Noise.wav
...
plughw:NVidia:* works well too.

Does anyone know how to force pulse to use specific alsa device?

Last edited by Astar; 01-14-11 at 01:57 PM. Reason: audio over DisplayPort works too
Astar is offline   Reply With Quote
Reply


Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 09:16 AM.


Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright 1998 - 2014, nV News.