# Broken Sound Chip?

## avieth

Hello,

I've built a new system from old parts: an ASUS SK8N motherboard, AMD Opteron 146, etc. Everything is going well, except that the onboard nForce3 sound chip (intel8x0 driver) doesn't seem to be functioning. I have it enabled in the bios, but lspci doesn't say anything about it. Of course this leads me to suspect that the onboard sound is physically broken. Is there any other explanation for lscpi not showing the device?

Thanks.

----------

## audiodef

Isn't nForce Nvidia?

I would think if lspci doesn't show it, it's either not connected or broken.

----------

## avieth

Today I powered on the machine and nForce audio is back in lspci. Weird. However, loading snd-intel8x0 doesn't work, and dmesg shows:

```

Intel ICH 0000:00:06.0: PCI INT A disabled

Intel ICH: probe of 0000:00:06.0 failed with error -5

Intel ICH 0000:00:06.0: PCI INT A -> Link[LAUI] -> GSI 21 (level, high) -> IRQ 21

Intel ICH 0000:00:06.0: setting latency timer to 64

codec_ready: codec is not ready [0x300000]

```

I don't know why Intel ICH is there. There is nothing in this system that bears an Intel label. I do remember that when I had Windows on this machine many years ago, the audio driver was Realtek, but I'm sure intel8x0 is the driver for nForce3 audio.

What could be causing this strange behaviour?

----------

## aCOSwt

Hello,

Of course, you know your system better than I do, but I would have bet that ALC850 and not Intel 8x is the appropriate sound driver for nforce3 chipsets.

As it his a Realtek HDA, I just wonder wether you get the driver for Intel HDA (ICH10 chipset) which unfortunately tries to attach the device.

----------

## avieth

Where can I find ALC850 in the kernel? I checked out all of the PCI driver options and none of them are called ALC850. I'm running gentoo-sources-2.6.31-r6

In the meantime, here is lspci -vv for my sound card, as well as /proc/interrupts.

```

00:06.0 Multimedia audio controller: nVidia Corporation nForce3 Audio (rev a2)

        Subsystem: ASUSTeK Computer Inc. Device 80c5                          

        Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-

        Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- 

        Interrupt: pin A routed to IRQ 21                                                                    

        Region 0: I/O ports at e800 [size=256]                                                               

        Region 1: I/O ports at e400 [size=128]                                                               

        Region 2: Memory at febfb000 (32-bit, non-prefetchable) [size=4K]                                    

        Capabilities: [44] Power Management version 2                                                        

                Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)                   

                Status: D0 PME-Enable- DSel=0 DScale=0 PME-                                                  

        Kernel modules: snd-intel8x0 

```

```

 # cat /proc/interrupts

           CPU0

  0:        121   IO-APIC-edge      timer

  1:          8   IO-APIC-edge      i8042

  7:          1   IO-APIC-edge

  8:          2   IO-APIC-edge      rtc0

  9:          0   IO-APIC-fasteoi   acpi

 12:          4   IO-APIC-edge      i8042

 14:         42   IO-APIC-edge      ide0

 15:          0   IO-APIC-edge      ide1

 17:       3073   IO-APIC-fasteoi   eth0

 19:      36321   IO-APIC-fasteoi   sata_promise

 20:         32   IO-APIC-fasteoi   ehci_hcd:usb1, ohci_hcd:usb2, ohci_hcd:usb3

NMI:          0   Non-maskable interrupts

LOC:      54929   Local timer interrupts

SPU:          0   Spurious interrupts

CNT:          0   Performance counter interrupts

PND:          0   Performance pending work

TRM:          0   Thermal event interrupts

THR:          0   Threshold APIC interrupts

MCE:          0   Machine check exceptions

MCP:          3   Machine check polls

ERR:          1

MIS:          0

```

----------

## aCOSwt

Did you come across this one ?

https://bugs.gentoo.org/113595

BTW, your preceeding traces show that intel_8x0 catched the device

----------

## avieth

 *aCOSwt wrote:*   

> Did you come across this one ?
> 
> https://bugs.gentoo.org/113595
> 
> BTW, your preceeding traces show that intel_8x0 catched the device

 

Unfortunately, that fix didn't work for me.

----------

## audiodef

http://www.google.com/search?q=nforce&ie=utf-8&oe=utf-8&aq=t&rls=org.gentoo:en-US:unofficial&client=firefox-a

Or did I miss something and nforce has nothing at all to do with nvidia?

----------

## avieth

 *audiodef wrote:*   

> http://www.google.com/search?q=nforce&ie=utf-8&oe=utf-8&aq=t&rls=org.gentoo:en-US:unofficial&client=firefox-a
> 
> Or did I miss something and nforce has nothing at all to do with nvidia?

 

The motherboard's chipset bears nVidia's name, but the sound chip is, in reality, manufactured by Realtek. The Realtek logo even appears on the chip itself.

----------

## NeddySeagoon

avieth,

If the sound device randomly comes and goes from lspci, you probably have an intermittent fault on the motherboard.

----------

## avieth

 *avieth wrote:*   

> 
> 
> ```
> 
> Intel ICH 0000:00:06.0: PCI INT A disabled
> ...

 

I posted this earlier. Notice how it points to IRQ21, but /proc/interrupts lists no IRQ21, but stops instead at IRQ20. I don't have a great understanding of how IRQs work, but could this be a problem?

What I'd really like to know is the meaning of "PCI INT A disabled" and "error -5". I've been googling for hours with no luck.

----------

## NeddySeagoon

avieth,

The PCI bus provides for four IRQa called "#A" "#B" "#C" and #"D"  ... the # means active low.

Motherboards tend to only connect "#A" and its up to some mechanisim to route these IRQs to the IRQ numbers.

So "PCI INT A disabled" means the IRQ for that card has been disabled.  "error -5" will be ther reason but I would need to read the code or maybe /usr/src/linux/Documentation to see what error -5 really means

----------

## audiodef

 *avieth wrote:*   

> 
> 
> The motherboard's chipset bears nVidia's name, but the sound chip is, in reality, manufactured by Realtek. The Realtek logo even appears on the chip itself.

 

Cool, thanks. I might find this useful, as I have a machine with an nforce card on the way.

----------

## avieth

I looked at the manual for this motherboard, and it says that the sound shares an IRQ with the parallel port; IRQ5, to be exact. So, I turned on the parallel port in the BIOS, and now lspci shows this:

```

00:06.0 Multimedia audio controller: nVidia Corporation nForce3 Audio (rev a2)

        Subsystem: ASUSTeK Computer Inc. Device 80c5                          

        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-

        Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- 

        Latency: 0 (500ns min, 1250ns max)                                                                   

[b]        Interrupt: pin A routed to IRQ 4   [/b]                                                                  

        Region 0: I/O ports at e800 [size=256]                                                               

        Region 1: I/O ports at ec00 [size=128]                                                               

        Region 2: Memory at febfb000 (32-bit, non-prefetchable) [size=4K]                                    

        Capabilities: [44] Power Management version 2                                                        

                Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)                   

                Status: D0 PME-Enable- DSel=0 DScale=0 PME-                                                  

        Kernel modules: snd-intel8x0   
```

And of course, IRQ 4 doesn't show up in /proc/interrupts. Once again, I have no idea whether or not this is an important discovery, but it just seems strange to me.

I booted up the latest Knoppix CD and it returns the same errors in dmesg that I get on my installation:

```

Intel ICH 0000:00:06.0: setting latency timer to 64

codec_ready: codec is not ready [0x300000]

Intel ICH: probe of 0000:00:06.0 failed with error -5

```

It no longer complains about PCI INT A, but that's probably because I disabled ACPI support in the kernel. I suspect that perhaps the driver is failing to recognize the actual make on my device, opting instead for an Intel chip.

----------

## NeddySeagoon

avieth,

The device may not show up in /proc/interrupts until there is a driver loaded for the device. So 

```
00:06.0 Multimedia audio controller: nVidia Corporation nForce3 Audio (rev a2) 
```

looks encouraging and 

```
Intel ICH: probe of 0000:00:06.0 failed with error -5 
```

looks bad.

snd-intel8x0 accepts these load time module parameters

```
parm:           index:Index value for Intel i8x0 soundcard. (int)

parm:           id:ID string for Intel i8x0 soundcard. (charp)

parm:           ac97_clock:AC'97 codec clock (0 = whitelist + auto-detect, 1 = force autodetect). (int)

parm:           ac97_quirk:AC'97 workaround for strange hardware. (charp)

parm:           buggy_semaphore:Enable workaround for hardwares with problematic codec semaphores. (bool)

parm:           buggy_irq:Enable workaround for buggy interrupts on some motherboards. (bool)

parm:           xbox:Set to 1 for Xbox, if you have problems with the AC'97 codec detection. (bool)

parm:           spdif_aclink:S/PDIF over AC-link. (int)

parm:           enable:bool

parm:           joystick:int
```

Try 

```
modprobe -r snd-intel8x0

modprobe snd-intel8x0 buggy_irq=1
```

A description of the parameters can probably be found in /usr/src/linux/Documentation/...

----------

## avieth

I tried buggy_irq=1, buggy_semaphore=1, and ac97_quirk=1 but with no positive results. The same error messages arise. 

I installed Windows XP on a different hard drive, and Windows also has trouble with the device. Device manager tells me that the audio controller failed to start with error code 10, and that the device is not using any resources. Since I already have Windows installed, I think I'll update the BIOS. I hope it doesn't add any new problems.

----------

