LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Hardware (https://www.linuxquestions.org/questions/linux-hardware-18/)
-   -   ADI AD1980 Sound not working Mandrake 9.0 (https://www.linuxquestions.org/questions/linux-hardware-18/adi-ad1980-sound-not-working-mandrake-9-0-a-146404/)

Relja 02-15-2004 01:03 PM

ADI AD1980 Sound not working Mandrake 9.0
 
Hello,
I installed Mandrake 9.0. I had it before, but after buying a newer mother board and CPU it wouldn't work (XP either), so I reinstalled it both.
It works fine, but I can't get any sound.
My new motherboard is ASUS P4P800-VM
and it has integrated sound: ADI AD1980 SoundMAX 6-channel audio CODEC.
The sound works fine in Windows XP Pro.

When I run sndconfig it says:
A PCI sound card was found in your system. The details are:
Model: Intel Corporation|unknown device 8086:24d5

Then I press OK
The Intel Corporation|unknown device 8086:24d5 is not supported

lspci:
Code:

00:00.0 Host bridge: Intel Corp.: Unknown device 2570 (rev 02)
00:02.0 VGA compatible controller: Intel Corp.: Unknown device 2572 (rev 02)
00:1d.0 USB Controller: Intel Corp.: Unknown device 24d2 (rev 02)
00:1d.1 USB Controller: Intel Corp.: Unknown device 24d4 (rev 02)
00:1d.2 USB Controller: Intel Corp.: Unknown device 24d7 (rev 02)
00:1d.3 USB Controller: Intel Corp.: Unknown device 24de (rev 02)
00:1d.7 USB Controller: Intel Corp.: Unknown device 24dd (rev 02)
00:1e.0 PCI bridge: Intel Corp. 82801BA/CA PCI Bridge (rev c2)
00:1f.0 ISA bridge: Intel Corp.: Unknown device 24d0 (rev 02)
00:1f.1 IDE interface: Intel Corp.: Unknown device 24db (rev 02)
00:1f.3 SMBus: Intel Corp.: Unknown device 24d3 (rev 02)
00:1f.5 Multimedia audio controller: Intel Corp.: Unknown device 24d5 (rev 02)
01:08.0 Ethernet controller: Intel Corp.: Unknown device 1050 (rev 02)
01:09.0 Communication controller: Lucent Microelectronics F-1156IV WinModem (V90, 56KFlex) (rev 01)

The first message I get when starting Linux is
Code:

PCI: Device 00:1f.1 not available because of resource collisions
Since up (lspci) Multimedia audio contorller is 00:1f.5 the message is about something else? If it is, never mind, now I want to concentrate on sound... But, in Windows in System Information it says that the IRQ for Modem is the same as for Audio Device IRQ=17, but both work fine in WinXP...

I looked up on the Google for AD1980 driver for linux, and downloaded one from the ASUS website. I did what the readme said, and now the module sis7012 is loaded
lsmod:
Code:

sis7012                16176  0  (unused)
ac97_codec            10088  0  [sis7012]
soundcore              3812  0  [sis7012]

What does "unused" mean?

I'm pretty much a Linux Newbee, so I don't really know what all this stuff means. If the module is loaded does it mean that the sound should work or should I do something else? I'm asking because the last step of the Readme for the installation said:
Code:

9> Reboot your computer and configurate sis7012.
What does "configurate sis7012" mean?

Thank you for your time

maroonbaboon 02-15-2004 09:35 PM

I have the same motherboard, so this looks a bit familiar. If you search this site for AD1980 you will see quite a few problems reported, esp with MDK. One solution is to install and use the ALSA sound system instead of the default. This works for me, but I don't know the best way to do that in MDK. There should be packages, but I think the advice on

http://freshrpms.net/docs/alsa

is specific to Redhat.

If you don't want to get into ALSA you might find some advice in the search results. Also I am a bit suspicious of that 'sis7012' module. Are you sure this is the right one for this m/b? 'Unused' means exactly that - nothing in your system is making any use of this kernel module.

Relja 02-16-2004 09:26 AM

Thanks for the respose.
I did look around the forum for this, but didn't really understand much of it, and on many places it said that Alsa is needed, and I didn't want to do it... Anyway, seems like the only solution.
Could you please keep looking at this thread in case I needed any help?
On some other thread I saw you used snd-intel8x0 ?

Relja 02-16-2004 11:34 AM

I downloaded Alsa 0.9.6 sources from the ASUS website some days ago and installed it now, but it doesn't seem to be working. It gave some snd.o compile error or someting... When I looked it up on the forum someone said that it probably means that it's for the wrong kernel (but how if it is compiled from the sources which are all the same?).

So I downloaded the rpms of sources
http://fr.rpmfind.net/linux/freshrpms/redhat/9/
Then ./configure of alsa-driver-0.9.8, but make:
Code:

make[2]: *** [usbus428.o] Error 1
make[2]: Leaving directory `/usr/src/RPM/SOURCES/alsa-driver-0.9.8/usb/us428'
make[1]: *** [_modsubdir_us428] Error 2
make[1]: Leaving directory `/usr/src/RPM/SOURCES/alsa-driver-0.9.8/usb'
make: *** [compile] Error 1

What's wrong?
Should I have somehow uninstalled the previous alsa? How is that done when installing from sources?

maroonbaboon 02-16-2004 04:29 PM

I don't really know about RPM source packages. I wouldn't assume they would automatically be usable with a different distro. I'm not a Mandrake user, so it's difficult to give specific advice, especially as the Mandrake web site does not seem especially helpful (maybe it's OK if you register).

ALSA may even already be installed by Mandrake, and just needs configuring. Try running

find /lib -name alsa

or

find /lib -name 'snd-*'

to see if you have any alsa related files already installed.

I don't know what went wrong when you ran 'make'.

Relja 02-18-2004 09:49 AM

Ok, I installed Alsa (I think so). At startup it says that Alsa is starting, loading module snd-intel8x0, but there is no sound...
In lsmod there isn't snd-intel8x0...
I tried:
modprobe snd-intel8x0
Code:

/lib/modules/2.4.19-16mdk/kernel/sound/pci/snd-intel8x0.o: unresolved symbol change_page_attr
modprobe: insmod /lib/modules/2.4.19-16mdk/kernel/sound/pci/snd-intel8x0.o failed
modprobe: insmod snd-intel8x0 failed

What does that mean? Could you somehow send me this file if that could solve this?
Any suggestions?
Thank you for everything...

maroonbaboon 02-18-2004 04:57 PM

How did you install ALSA? From the original source or a package? If ALSA is at least starting you may have an error message in the system logs. Have a look at the output of 'dmesg' for any reference to ALSA.

'modprobe' is supposed to add a chunk of driver code to the running kernel, so that code has to be compiled as if it was part of the same kernel, otherwise things do not match up (typically there are 'unresolved symbols').

So when you compile ALSA it has to have access to exactly the same code that the kernel was compiled from.

Relja 02-19-2004 05:58 AM

Sorry, I don't really know what to do with this dmesg?
When I did it:
Code:

...
mtrr: no more MTRRs available
Loading Lucent Modem Controller driver version 8.22
Detected Parameters Irq=17 BaseAddress=0xd800 ComAddress=0xdfe0
Lucent Modem Interface driver version 8.22 (2002-04-11) with SHARE_IRQ enabled
ttyLT00 at 0xd800 (irq = 17) is a Lucent Modem
usb.c: registered new driver usbdevfs
usb.c: registered new driver hub
usb.c: registered new driver usbscanner
scanner.c: 0.4.6:USB Scanner Driver
Splash status on console 0 changed to off
CSLIP: code copyright 1989 Regents of the University of California
PPP generic driver version 2.4.2
PPP BSD Compression module registered
PPP Deflate Compression module registered

(the first line is repeated about 30-40 times at the begining)

When I chacked what /var/log/syslog several times it's the same message:
localhost modprobe: modprobe: insmod snd-card-0 failed

I installed ALSA by compiling the sources found on www.alsa-project.org:
alsa-driver-1.0.2c, alsa-firmware-1.0.2, alsa-lib-1.0.2, alsa-utils-1.0.2
Can I somehow chack did I install it well?
On startup, it says starting Alsa (intel8x0), (but it repeats this (intel8x0) twice)

In the dir where alsa-driver sources are, there is an util dir, and when I say:
alsasound.in status
it says: ALSA sound driver loaded.

I forgot to say, I have this devfs (whatever it is...) so I didn't run the ./snddevices script because it says that if you have it you don't have to run it....

Thanks again..

maroonbaboon 02-19-2004 04:17 PM

One problem with giving advice is that the answer might depend on what distro you are using. At some stage I must have run some configuration utility called 'alsaconf', which put the following lines in the file /etc/modules.conf

# --- BEGIN: Generated by ALSACONF, do not edit. ---
# --- ALSACONF verion 0.9.0 ---
alias char-major-116 snd
alias snd-card-0 snd-intel8x0
alias char-major-14 soundcore
alias sound-slot-0 snd-card-0
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
options snd major=116 cards_limit=1
options snd-intel8x0 index=0
# --- END: Generated by ALSACONF, do not edit. ---

This tells the kernel which modules need to be loaded for particular services.

You should check for something similar, or maybe conflicting. Also see what 'modprobe snd-intel8x0' does - any error messages this time? Also check output of 'lsmod' command to see what modules are actually getting loaded.

If you can get alsa compiled and installed without errors it should be possible to get it running. I guess you installed all three source packages OK - libs, drivers and utils?

Andrew Benton 02-19-2004 07:09 PM

Code:

/lib/modules/2.4.19-16mdk/kernel/sound/pci/snd-intel8x0.o: unresolved symbol change_page_attr
modprobe: insmod /lib/modules/2.4.19-16mdk/kernel/sound/pci/snd-intel8x0.o failed
modprobe: insmod snd-intel8x0 failed

What options have you enabled on the sound menu in your kernel configuration? Enable sound support at the top of the sound menu and nothing else as that may prevent the alsa modules loading. Also, make sure you compile the ALSA modules with the same compiler that the kernel was compiled with. Good choice going for the user space ALSA drivers. They work better than the kernel modules so it's worth making the effort to get them working.

Relja 02-21-2004 05:37 AM

/etc/modules.conf
Code:

# --- BEGIN: Generated by ALSACONF, do not edit. ---
# --- ALSACONF verion 1.0.2 ---
alias char-major-116 snd
alias char-major-14 soundcore
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
options snd  device_mode=0666
alias snd-card-0 snd-intel8x0
alias sound-slot-0 snd-intel8x0
# --- END: Generated by ALSACONF, do not edit. ---

It's a little diferent, so I'll try your one instead. Probably won't work, but I'll try it in few minutes...

Sorry, I don't know how to enable this sound support? I looked up a few web pages, and they said "make xconfig" or "make menuconfig". They both give:
make: *** No rule to make target `menuconfig'. Stop.

"Also, make sure you compile the ALSA modules with the same compiler that the kernel was compiled with."
How do I know which compiler the kernel was compiled with? It's probably the same - I installed Mandrake 9.0 just days ago (I had it before, but when I baught the new moderboard and CPU, it wouldn't work...)
Thank you for helping me too.

Relja 02-21-2004 06:04 AM

Same error again... lsmod gives the same thing, the only (I think) relevant stuff:
Code:

snd                    31364  0
soundcore              3812  0  [snd]

The diference is that at startup it now gives the "unresolved symbols" errror, and I think that it didn't report it to me before at sturtup... And when before it said (something like)
ALSA 1.02c starting up (intel8x0) (intel8x0)
now
ALSA 1.02c starting up (intel8x0) (card)

Should I leave it like this? I like to see the errors at startup...

Yes, I installed driver, lib and utils... How do I make sure that it's installed ok? If I installed it again, to make sure that there's no errors - would it be the same, or would it make some problems?

Andrew Benton 02-21-2004 06:14 AM

Quote:

Originally posted by Relja
I looked up a few web pages, and they said "make xconfig" or "make menuconfig". They both give:
make: *** No rule to make target `menuconfig'. Stop.

You need to cd into the kernel sources before you run make menuconfig. Recompiling the kernel is a large subject but it's worth learning how to do it as it may not be possible to fix a problem with hardware (like your current one - installing the drivers for your sound card) without recompiling the kernel.
As for the C compiler, that should be easier to fix. Check your Linux CD's for a copy of gcc-2.95. You may already have it installed. To find out, open a terminal and
Code:

find / -name gcc
It'll list folders you're not allowed to search but in amongst that, if it returns something like /opt/gcc-2.95.3/bin/gcc that's the one to use. If it's not installed, get it off your CD's or download it. Before you compile the ALSA modules
Code:

export CC=/opt/gcc-2.95.3/bin/gcc
and when you make the ALSA drivers use
Code:

make CC=/opt/gcc-2.95.3/bin/gcc

Relja 02-21-2004 06:50 AM

When I do "make xconfig" it does some stuff and shows a window with lots of options. When I click sound, the first row of the new window is "Sound card support" and it's M (if I understud it right on some web pages - it's for "module", it's ok, right?). Also there is ALSA -> PCI devices all is M (my card too) except Y for some expertimental (CIrrys Logic) driver.
So, here's all OK, right?

When I did
find / -name gcc (I'm not sending the Permission denied stuff)
Code:

/etc/alternatives/gcc
/var/lib/rpm/alternatives/gcc
/usr/bin/gcc

When I
/etc/alternatives/gcc --version
and
/usr/bin/gcc --version
It gives the same:
gcc (GCC) 3.2 (Mandrake Linux 9.0 3.2-1mdk)
And the /var/lib/rpm/alternatives/gcc --version gives "Permission Denied"

So that's ok, too?

maroonbaboon 02-21-2004 07:38 AM

I just did a google search for 'mandrake alsa rpm package' and found a number of hits, some of which suggest that Mandrake comes with ALSA installed. If this is right, then trying to install a parallel version could give problems, especially if MDK has changed the basic ALSA configuration.

I think this sound chip has been supported in ALSA since about v.0.9.4. Anyway that's the version I've got and it works on the Asus board. If MDK is not actively supporting new hardware by releasing new RPM packages then this is not a good choice of distro for someone with that new hardware.

So I would really concentrate initially on finding a Mandrake solution to this before getting into kernel configuring and compiling (which is either fun or frustration for different people). Maybe even try the Mandrake forum.

Andrew Benton 02-21-2004 08:03 AM

No, I don't think so. When you do xconfig you should enable sound support (I choose y but m should work too) and then choose n for no to everything else on the sound menu.
As for gcc, I suppose it's possible to compile your kernel with gcc-3.2 but the kernel maintainers recommend using gcc-2.9. I would get gcc-2.9 before compiling the kernel. If you do recompile your kernel you may need to reinstall the drivers for your video card so you'll need to look into that. I only know about Nvidia. You should definitely get into rebuilding your kernel. It's hard at first as there are some scary moments, but to fix hardware stuff you have to go into the kernel.
I couldn't get the digital output working on my sound card when I used Mandrake. It was only after doing Linux from Scratch that I learned how to rebuild the kernel and Beyond Linux From Scratch showed me how to install the ALSA drivers. I used to have to use a tiny analog headphone socket which was no good. Now I can record music I download direct from the digital output onto minidisc and it's much better. So stick at it. It's hard work but you'll get there.

Edit - You've set me off now. We still had Mandrake 9.1 on the family computer upstairs so I thought I'd have a go at getting the digital output to work on the soundcard by recompiling the kernel and installing the alsa drivers. What a nightmare. Make menuconfig would crash me back to the command prompt whenever I tried to open the ALSA menu so I opened the mandrake config file with gedit and then ran make oldconfig. That got me through make dep and make bzImage but make modules failed with an error about ambassador.o. So I deleted the Mandrake sources, untared an official kernel and went with a .config file I knew would build. That went fine till I came to reboot and do the Nvidia driver. That failed as it couldn't find a C compiler. It seems it doesn't look for gcc at all and the gcc-2.96 I installed of the mandrake CD's doesn't make a cc symbolic link. So I did that by hand. So I can get back into Gnome again, the alsa stuff installed OK. Or rather I think they did. I've now got to figure out how the Mandrake bootscripts work and apply the supermount patch to the kernel to get the CD's to work so I can install Xmms.
Mandrake is just too weird to me now. Anytime I change something the wheels fall of something else. I've given up and decided to build linux From Scratch on that computer, which is a big nuisance to the rest of the family as it'll take me weeks. Sorry if I've given you false hope about getting Mandrake straightened out. It probably is possible, but is it worth the effort?

Relja 02-22-2004 09:50 AM

Ok, I don't really want to recompile kernel and all that stuff. I'm preety much a Linux Newbee and everything works just fine to me... I think that installing sound won't be so complicated since many people made it...

How do I uninstall ALSA? How do I uninstall anything installed from the sources (I never needed to uninstall anything...)?
I want to wipe ALSA out, and than install it again, since it seemed that ALSA was already installed with Mandrake, and I installed it again from rpm, and than from sources - that could make a lot of mess...

Relja 02-22-2004 01:49 PM

Ok, I reinstalled Mandrake 9.0 (since I had no relevant stuff - I installed it days ago).
Seems like ALSA is installed, I chacked it to start with system.
whereis alsa:
/usr/share/alsa

No sound...

find / -name alsa:
/etc/sysconfig/alsa
/etc/rc.d/init.d/alsa
/usr/share/alsa

So I tried
/etc/rc.d/init.d/./alsa start
No messages. Then I tried
/etc/rc.d/init.d/./alsa stop
Says:
"ALSA driver isn't running."

modprobe snd-intel8x0
Code:

/lib/modules/2.4.19-16mdk/kernel/sound/pci/snd-intel8x0.o.gz: init_module: No such device
Hint: insmod errors can be caused by incorrect module parameters, including invalid IO or IRQ parameters.
      You may find more information in syslog or the output from dmesg
modprobe: insmod /lib/modules/2.4.19-16mdk/kernel/sound/pci/snd-intel8x0.o.gz failed
modprobe: insmod snd-intel8x0 failed

How can I change IO or IRQ parameters? Where is alsaconf - I can't find?

maroonbaboon 02-23-2004 03:46 AM

Do you know what version of ALSA you are using? I installed 0.9.4 (with 2.4.21 kernel) around August 2003 to get my AD1980 running, and I noticed the intel 810 driver code had been patched very recently to work with this sound chip. So if your distro was put together before that you might expect problems.

If you want to keep trying, in answer to your questions, for alsaconf, mine is at /usr/sbin/alsaconf. You could try running it (probably need to be root). If its not there you can search for it with 'find / -name alsaconf -print'.

For IO and IRQ, I think the PCI protocols take that out of your hands.

Relja 02-23-2004 04:58 AM

Yes, I want to keep trying and thank you for doing so much for me...

I don't know which version is alsa, I know that alsa-utils is 0.9.0-0.6rc2... sh*t....
My kernel is 2.4.19-16mdk. Does it mean that I can't make sound work?

If not, how do completely uninstall alsa (when I run software packages removal and search for alsa, it founds only alsa-utils,libalsa and libalsa2, but not drivers?), so I can tr with your version (do your working version is 0.9.4?)

maroonbaboon 02-23-2004 05:36 AM

I think the various package numbers are synchronised, so if your utils are 0.9.0 then your drivers are likely to be the same.

'Uninstalling' is usually just a matter of figuring out where the sound system gets started and editing a file or two to stop that happening. I think unfortunately this varies from distribution to distribution. e.g. on here ALSA is started by the script /etc/init.d/alsa.

There is an informal convention that 'official' (e.g. Mandrake supplied) packages are installed in /usr/bin, /usr/lib etc., while 'unofficial' additions go in /usr/local/bin etc. So long as you install your new ALSA under /usr/local there is no danger of overwriting files.

Then you just have to change the startup script to look at /usr/local instead of /usr.

Well, maybe it is not quite that simple, and is does depend on the distro. somewhat.


Or you could get an up-to-date distro. Knoppix 3.4 will be out soon (if not already) with 2.6 kernel. You can try it without it touching your hard disk (except it uses the swap if it finds it).

Relja 02-24-2004 04:55 AM

Ok, seems like I'll have to get new kernel... When I installed alsa 0.9.4 there were some unresolved symbols when loading snd-intel8x0.... same old stuff...
Anyway, thank you very much for your effort in this marathonic thread but it just seems like it's making no advance, so I'll have to get something newer...

Relja

Relja 02-28-2004 08:48 AM

I installed Mandrake 9.2 (kernel 2.4.22-10mdk), sound works!
The system automaticaly detected it and starts Alsa on startup...
Not only that, the Intel integrated graphics works great too, with Mandrake 9.0 I couldn't play taxracer and other 3d stuff, now I can...
And it's got some really SMOOTH fonts...

Relja


All times are GMT -5. The time now is 07:35 PM.