# Radeon HD 6970

## Psi15

Hi!

With The X Server Configuration HOWTO I got my graphics card working very well, though I'm using the folling configuration at Device Drivers -> Generic Driver Options:

```

radeon/CAYMAN_pfp.bin radeon/CAYMAN_mc.bin radeon/CAYMAN_me.bin radeon/CAYMAN_rlc.bin

```

The only problem I've left is how to configure the sound over HDMI?

lspci -vvv says the following about the sound card:

```

01:00.1 Audio device: ATI Technologies Inc Device aa80

        Subsystem: PC Partner Limited Device aa80

        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, Cache Line Size: 64 bytes

        Interrupt: pin B routed to IRQ 17

        Region 0: Memory at fe640000 (64-bit, non-prefetchable) [size=16K]

        Capabilities: [50] Power Management version 3

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

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

        Capabilities: [58] Express (v2) Legacy Endpoint, MSI 00

                DevCap: MaxPayload 256 bytes, PhantFunc 0, Latency L0s <4us, L1 unlimited

                        ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset-

                DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-

                        RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop+

                        MaxPayload 128 bytes, MaxReadReq 512 bytes

                DevSta: CorrErr+ UncorrErr- FatalErr- UnsuppReq+ AuxPwr- TransPend-

                LnkCap: Port #0, Speed 2.5GT/s, Width x16, ASPM L0s L1, Latency L0 <64ns, L1 <1us

                        ClockPM- Surprise- LLActRep- BwNot-

                LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+

                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-

                LnkSta: Speed 2.5GT/s, Width x16, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-

                DevCap2: Completion Timeout: Not Supported, TimeoutDis-

                DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-

                LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-, Selectable De-emphasis: -6dB

                         Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-

                         Compliance De-emphasis: -6dB

                LnkSta2: Current De-emphasis Level: -6dB

        Capabilities: [a0] MSI: Enable- Count=1/1 Maskable- 64bit+

                Address: 0000000000000000  Data: 0000

        Capabilities: [100 v1] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>

        Capabilities: [150 v1] Advanced Error Reporting

                UESta:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-

                UEMsk:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-

                UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-

                CESta:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+

                CEMsk:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+

                AERCap: First Error Pointer: 00, GenCap+ CGenEn- ChkCap+ ChkEn-

        Kernel driver in use: HDA Intel

        Kernel modules: snd-hda-intel

```

unfortunately my alsamixer looks very poor:

```

+---------------------------- AlsaMixer v1.0.24.2 -----------------------------+

| Card: HD-Audio Generic                               F1:  Help               |

| Chip: ATI R6xx HDMI                                  F2:  System information |

| View: F3:[Playback] F4: Capture  F5: All             F6:  Select sound card  |

| Item: S/PDIF                                         Esc: Exit               |

|                                                                              |

|                                                                              |

|                                                                              |

|                                                                              |

|                                                                              |

|                                                                              |

|                                                                              |

|                                     +--+                                     |

|                                     |OO|                                     |

|                                     +--+                                     |

|                                  < S/PDIF >                                  |

|                                                                              |

|                                                                              |

|                                                                              |

|                                                                              |

|                                                                              |

|                                                                              |

|                                                                              |

+------------------------------------------------------------------------------+

```

any ideas? Are there any options I have to pass to the kernel module?

thx

Philipp

----------

## Neithan

I am not ATI user anymore but if I was I would need to see your lsmod output. Generally when alsamixer is not picking up your device correctly it means that either you need to compile built in support for some additional driver in your kernel or if you compile/compiled it as a module you need to make sure its loaded.

----------

## Neithan

This is my "Device Drivers  ---> Sound card support  ---> <M> Advanced Linux Sound Architecture  ---> PCI sound devices ---> Intel HD Audio" configuration, perhaps you only need to replace nvidia with ati (but again if you are building it as module make sure its loaded)

```
--- Intel HD Audio

   -*-   Build hwdep interface for HD-audio driver

   -*-     Allow dynamic codec reconfiguration (EXPERIMENTAL)

   [ ]   Support digital beep via input layer

   [*]   Support jack plugging notification via input layer

   [*]   Support initialization patch loading for HD-audio

   [*]   Build Realtek HD-audio codec support

   [*]   Build Analog Device HD-audio codec support

   [ ]   Build IDT/Sigmatel HD-audio codec support

   [ ]   Build VIA HD-audio codec support

   [ ]   Build ATI HDMI HD-audio codec support

   [*]   Build NVIDIA HDMI HD-audio codec support

   [ ]   Build INTEL HDMI HD-audio codec support

   [ ]   Build Cirrus Logic codec support

   [ ]   Build Conexant HD-audio codec support

   [ ]   Build Creative CA0110-IBG codec support

   [ ]   Build C-Media HD-audio codec support

   [ ]   Build Silicon Labs 3054 HD-modem codec support

   [*]   Enable generic HD-audio codec parser

   [ ]   Aggressive power-saving on HD-audio
```

Keep in mind that all this depends on if you have Intel motherboard and if you use alsa.

----------

## GES

 *Psi15 wrote:*   

> 
> 
> lspci -vvv says the following about the sound card:
> 
> ```
> ...

 

?

```

# update-pciids

# lspci -vvv

```

----------

## Etal

I had a similar problem. See if this helps: https://forums.gentoo.org/viewtopic-p-6780264.html#6780264

(But be sure to have the right HD-Audio modules, as Neithan showed. In Linux 3.0.4 it's called "Build HDMI/DisplayPort HD-audio codec support" / CONFIG_SND_HDA_CODEC_HDMI)

----------

## Psi15

@Etal:

The last one didn't help

```

# cat /sys/module/radeon/parameters/audio

1

```

@Neithan:

I think I'm using a more current kernel version (vanilla-sources-2.6.39.3). I've enabled the following kernel options:

```

--- Intel HD Audio

[ ]   Build hwdep interface for HD-audio driver

[ ]   Support digital beep via input layer

[ ]   Support jack plugging notification via input layer

[ ]   Support initialization patch loading for HD-audio

[*]   Build Realtek HD-audio codec support

[ ]   Build Analog Device HD-audio codec support

[ ]   Build IDT/Sigmatel HD-audio codec support

[ ]   Build VIA HD-audio codec support

[*]   Build HDMI/DisplayPort HD-audio codec support

[ ]   Build Cirrus Logic codec support

[ ]   Build Conexant HD-audio codec support

[ ]   Build Creative CA0110-IBG codec support

[ ]   Build C-Media HD-audio codec support

[ ]   Build Silicon Labs 3054 HD-modem codec support

[*]   Enable generic HD-audio codec parser

[ ]   Aggressive power-saving on HD-audio

```

Though the Realtek-driver is for the onboard soundcard. And I indeed to have an intel ich9 chipset as well as using alsa.

lsmod outputs the following:

```

# lsmod

Module                  Size  Used by

vboxnetadp              4870  0 

vboxnetflt             13453  0 

vboxdrv              1763843  2 vboxnetadp,vboxnetflt

snd_hda_codec_hdmi     21584  1 

snd_hda_codec_realtek   286975  1 

snd_hda_intel          19758  0 

snd_hda_codec          54662  3 snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_intel

snd_pcm                61352  3 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec

snd_page_alloc          6657  2 snd_hda_intel,snd_pcm

```

@GES:

```

# update-pciids 

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

                                 Dload  Upload   Total   Spent    Left  Speed

100  181k  100  181k    0     0   127k      0  0:00:01  0:00:01 --:--:--  140k

Done.

# lspci -vvv

01:00.1 Audio device: ATI Technologies Inc Device aa80

        Subsystem: PC Partner Limited Device aa80

        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, Cache Line Size: 64 bytes

        Interrupt: pin B routed to IRQ 17

        Region 0: Memory at fe640000 (64-bit, non-prefetchable) [size=16K]

        Capabilities: [50] Power Management version 3

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

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

        Capabilities: [58] Express (v2) Legacy Endpoint, MSI 00

                DevCap: MaxPayload 256 bytes, PhantFunc 0, Latency L0s <4us, L1 unlimited

                        ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset-

                DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-

                        RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop+

                        MaxPayload 128 bytes, MaxReadReq 512 bytes

                DevSta: CorrErr+ UncorrErr- FatalErr- UnsuppReq+ AuxPwr- TransPend-

                LnkCap: Port #0, Speed 2.5GT/s, Width x16, ASPM L0s L1, Latency L0 <64ns, L1 <1us

                        ClockPM- Surprise- LLActRep- BwNot-

                LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+

                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-

                LnkSta: Speed 2.5GT/s, Width x16, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-

                DevCap2: Completion Timeout: Not Supported, TimeoutDis-

                DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-

                LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-, Selectable De-emphasis: -6dB

                         Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-

                         Compliance De-emphasis: -6dB

                LnkSta2: Current De-emphasis Level: -6dB

        Capabilities: [a0] MSI: Enable- Count=1/1 Maskable- 64bit+

                Address: 0000000000000000  Data: 0000

        Capabilities: [100 v1] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>

        Capabilities: [150 v1] Advanced Error Reporting

                UESta:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-

                UEMsk:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-

                UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-

                CESta:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+

                CEMsk:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+

                AERCap: First Error Pointer: 00, GenCap+ CGenEn- ChkCap+ ChkEn-

        Kernel driver in use: HDA Intel

        Kernel modules: snd-hda-intel

```

But thank you very much for your input so far. I'm simply afraid that the chip for some reason is too new and the kernel driver doesn't recognize it properly (especially the device id being aa80)

ciao

Philipp

----------

## Neithan

If you don't know what else to try, give "Build Analog Device HD-audio codec support" a go. But is your problem only that the sound doesn't work over HDMI or that your sound doesn't work at all?

This is my lsmod it's the minimum I needed.

```
Module                  Size  Used by

snd_hda_codec_nvhdmi    14179  1 

nvidia              10083188  40 

snd_hda_codec_realtek   269336  1 

r8169                  35384  0 

snd_hda_intel          20968  3 

ath9k                  97117  0 

ath9k_common            3584  1 ath9k

ath9k_hw              290322  2 ath9k,ath9k_common

snd_hda_codec          71844  3 snd_hda_codec_nvhdmi,snd_hda_codec_realtek,snd_hda_intel

snd_hwdep               5972  1 snd_hda_codec

snd_pcm                70464  3 snd_hda_intel,snd_hda_codec

snd_timer              18248  1 snd_pcm

snd                    54863  11 snd_hda_codec_realtek,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm,snd_timer

snd_page_alloc          6921  2 snd_hda_intel,snd_pcm
```

Maybe you are right with realtek being for onboard cards but I definitely need it as without it my sound didn't work. Perhaps because I have an onboard sound card  :Smile:  (Assus laptop).

EDIT:

 *Quote:*   

> But thank you very much for your input so far. I'm simply afraid that the chip for some reason is too new and the kernel driver doesn't recognize it properly (especially the device id being aa80)

 

If that proves to be true try newer kernel.

----------

## chithanh

The open source driver does not yet support HDMI Audio on Northern Islands/Radeon 6000 series:

http://wiki.x.org/wiki/RadeonFeature

There is code for that already but it is not yet public:

http://phoronix.com/forums/showthread.php?59680-So-what-about-Evergreen-HDMI-Audio

----------

## Psi15

hmm...

that sounds reasonable. So I'm waiting  :Smile: 

thx

Philipp

 *chithanh wrote:*   

> The open source driver does not yet support HDMI Audio on Northern Islands/Radeon 6000 series:
> 
> http://wiki.x.org/wiki/RadeonFeature
> 
> There is code for that already but it is not yet public:
> ...

 

----------

## disi

Thanks, was wondering myself here about the alsamixer (though never used hdmi yet).

----------

## schwarzygesetzlos

Thanks for pointing out chithanh! I was also wondering why it didn't work on my HD5770, whereas it works on my HD4290.

Out of curiosity I tried the closed-source x11-drivers/ati-drivers. Now audio via HDMI is working!

----------

## Psi15

hmm... kernel 3.0.6 doesn't seem to help  :Sad:  waiting for new ati-drivers...

----------

