nVIDIA nFORCE4 - Can't get sound working

Problems and successes with specific brands/models of computer audio hardware
Post Reply
Message
Author
Knoc
Posts: 3
Joined: Tue 11 Apr 2006, 18:35

nVIDIA nFORCE4 - Can't get sound working

#1 Post by Knoc »

Before I explain my little problem, please note I've only had about 2 days worth of Linux experience thus far.

Anyhows my problem is the following, I have a DFI LANPARTY UT Ultra-D motherboard, which is based on the nFORCE4 chipset from nVIDIA. According to the DFI site the motherboard uses a Realtek Karajan Audio (AC97 ALC850 chipset) module. Unforetunatly I can't get it working in Puppy (1.08R1).

I've read previous posts on the forum, one topic suggested using a soundcore.o.gz and nvsound.o.gz driver that was supplied inside that topic (files and instructions by tempestuous). This does bring up sound for me, but it's interrupted every second by a second of silence. I continued to the nVIDIA site to check the known problems with the Linux drivers, it said something about booting with ACPI turned off. I tried this, but my problem continued to excist.

When installing the nvsound.o.gz driver from the topic is previously mentioned I did get the following warning.
# insmod /root/my-applications/nvsound.o.gz
Warning: /root/my-applications/nvsound.o.gz symbol for parameter vapu_enable not found
Warning: loading /root/my-applications/nvsound.o.gz will taint the kernel: non-GPL license - NVIDIA
See http://www.tux.org/lkml/#export-tainted for information about tainted modules
Module nvsound loaded, with warnings
I'm not sure however if that could be causing the sound errors, and I don't have a clue whatsoever on how to fix this error.

So to make a long story short, I was hoping if some of the more experienced Puppy/Linux users could give me some pointers on how to fix this problem.

slvrldy17
Posts: 292
Joined: Fri 17 Feb 2006, 22:17
Location: Mid western USA

Nvidia sound...

#2 Post by slvrldy17 »

Don't know that I can point you to any improvements in your situation, but having used the driver/modules that you mention for the last several weeks I've had no trouble resulting from the warning about "tainting the kernel". At least that I can point to directly. I've also had occassional interuptions in sound on CD playbacks with Xine CD/multimedia player. On a couple of occasions I've had to completely shut Xine down and restart it to get sound again. Until an updated Puppy comes out with the Nvidia drivers incorporated in it I guess its something I'll have to live with. If anyone comes up with a reason/cure for the problem there is at least two of us out there that will benifit - I'll keep watching to see what develops.

Knoc
Posts: 3
Joined: Tue 11 Apr 2006, 18:35

#3 Post by Knoc »

Did some more research on this problem. According to a post I've read on another Linux forum the Realtek ALC850 soundchip is wrongfully detected by ALSA, it says it found a intel8x0 soundchip (it does this for me also). Anyways, the user posted to following guide on how to fix the problem.
Hi, after I modified intel8x0.c according to a post here, I solved this problem.
basicly I added { 0x10de, 0x026b, PCI_ANY_ID, PCI_ANY_ID, 0, 0, DEVICE_NFORCE }, /* NFORCE4 */ in snd_intel8x0_ids array.

and added .asoundrc to ~ directory.
.asoundrc like this:
[root@localhost ~]# cat .asoundrc
pcm.nforce-hw {
type hw
card 0
}
pcm.!default {
type plug
slave.pcm "nforce"
}
pcm.nforce {
type dmix
ipc_key 1234
slave {
pcm "hw:0,0"
period_time 0
period_size 512
buffer_size 4096
rate 44100
}
}
ctl.nforce-hw {
type hw
card 0
}
Now from my understanding I would need to download the latest ALSA driver, then modify the files in the manner this guy/girl describes and recompile. The later is a problem for me tho, anyone able to give me a clue how to do this in Puppy?

Edit: I downloaded and extracted the alsa-driver-1.0.10 from the ALSA website. <alsafolder>/alsa-kernel/pci/intel8x0.c is the file to modify? Well anyway thats what I did. Now clueless on how to continue tho :P

Edit 2: Okay, checked the ALSA wiki on how to compile, doesn't sound that hard. But first I need to get a C compiler according to the console :D . But its getting to late, and my eyes are refusing to stay open much longer.

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#4 Post by tempestuous »

The first part of those instructions just seems to modify the ALSA source code so that the snd-intel8x0.o module will recognise the NFORCE hardware correctly. I think that you could just configure ALSA to use the snd-intel8x0 module anyway ... and maybe you should try this. But in case it doesn't work, I have attached the modified snd-intel8x0 module, using ALSA v1.0.8 to match Puppy's existing libraries.

The second part of those instructions is easy - paste that text into a new text file and save it as /root/.asoundrc
Attachments
snd-intel8x0.o.gz
(11.89 KiB) Downloaded 1026 times

Knoc
Posts: 3
Joined: Tue 11 Apr 2006, 18:35

#5 Post by Knoc »

Thanks a lot tempestuous!

I've downloaded the modified snd-intel8x0.o.gz you supplied, however I'm a little clueless where to put it so the soundconfigurator will pick up the modifications.

Sorry for being blonde ;)

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#6 Post by tempestuous »

I'm assuming you are running Puppy 1.0.8. If you're running Puppy2 alpha, stop now ... this module won't work because the kernels are different.
The module will be somewhere in /lib/modules/2.4.29/ I don't have Puppy 1.0.8 myself. Run "modinfo snd-intel8x0" to find out. Then overwrite the existing module with the new one ... but now things get a little complex:
First you need to unload the old module because it still exists in RAM - "rmmod snd-intel8x0"
Now load the freshly installed module - "modprobe snd-intel8x0"

Hopefully now your sound will work, but if not, then maybe the whole ALSA system needs to be restarted. I'm not sure.

Your next problem is that the /lib directory is not persistent, so you will lost the new module when you reboot unless you have a full HD install. So at each boot up you must repeat the installation and loading of the new module. You can automate this process by adding all necessary commands to the boot script /root/.etc/rc.d/rc.local

Yogi
Posts: 207
Joined: Fri 19 Aug 2005, 18:50

#7 Post by Yogi »

I have a Compaq Presario V3000 that I'm running PizzaPup 3.0 on. The main problem is no system sound, no sound for various games and no sound for MPlayer. But, XMMS plays just fine. ALSA sound wizard finds the hda-intel sound card and uses that to configure the sound file but no luck. Your previous post had a .gz file for Puppy 1.0 series but I was wondering if you had one for the 2.0 series. I also googled this topic and it seems that Nvidia sound does not play well with Linux. Any ideas how I can get this notebook pc to find its voice?
Thanks.

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#8 Post by tempestuous »

Yogi wrote:XMMS plays just fine. ALSA sound wizard finds the hda-intel sound card ...
There's no point patching the ALSA snd-intel8x0 module, since it's already detected and loaded.
Yogi wrote:no sound for various games
Do some reading and searching on this subject. I think you will probably just need to install libSDL.
Yogi wrote:and no sound for MPlayer
This is probably just a configuration issue. From the MPlayer gui (GMPlayer) open the configuration menu, and select ALSA under audio options.
I'm not sure which version of MPlayer PizzaPup contains. The latest version is 1.0rc1, available as a dotpup here -
http://puppyfiles.org/dotpupsde/dotpups ... er-1.0rc1/
This one certainly supports ALSA output.[/code]

Yogi
Posts: 207
Joined: Fri 19 Aug 2005, 18:50

#9 Post by Yogi »

Thank you for your quick response.
I should have mentioned in my previous post that I also tried running PizzaPup 3.0 on my desktop pc (different hardware, of course) and installed/ran the Barrage.pup game and had no problems with the audio. Didn't need any additional sound libraries. XMMS was fine, too. But to get audio from Mplayer it didn't matter how I configured the ALSA preferences. I finally had to select OSS and only then did the audio play with the video files.

Now, back to the Compaq Presario. I tried every configuration combination available under ALSA and when I would open a video file and click on "play" it would either report that no sound was present or Mplayer would close. OSS was no help either.

I'll try adding libSDL and get back to you in a couple days. But I'm still a little dubious about that solving this problem.

Post Reply