ATI HDMI audio

Hi, this is my first post. I'm not sure exactly where to put this as the actual cause of my problem may not be hardware related, but seeing as it is a GPU that needs to work I've put it here.

I've had freebsd FreeBSD 9.1 installed on my 64-bit machine since earlier this year but am still struggling to get sound played out of my monitor through an HDMI connection in the same way I can in Windows 7.

The card is an ATI based Asus Radeon HD 4650. There seems to be some confusion which driver is the right one, currently - the RadeonHD, Radeon, or ATI.

I've enabled snd_hda in the boot/loader.conf file, and various other options as suggested elsewhere for the xorg.conf file. In fact, I think I've tried so many things, but I think the system picked up the right options to begin with as they've made no difference - so perhaps it's something else altogether. The X.Org page for the RadeonHD driver says my chipset is supported for HDMI audio. I'm using the KDE4 environment, and I've also installed Firefox and tried to play Flash videos which play way too fast. I think I saw somewhere that this could be related to the sound problem.

Similarly, when I managed to get an audio CD to load in KDE last night that also played too fast with no sound. KDE usually recognizes audio CD's in cd0 but says there's a permissions problem - which I was able to get around last night, but obviously didn't apply it permanently somehow.

I'm sorry if this is a bit of a long message but it does seem quite a confusing problem(s) and a bit frustrating when I just want to get on and start using freebsd FreeBSD! I would be very happy to provide any code output for dmesg, sndstat, etc. when I know how and someone thinks they can help. :stud
 
If I may add the following to the description above, as it illustrates the main problem I've been having:

Code:
$ cat /dev/sndstat
FreeBSD Audio Driver (newpcm: 64bit 2009061500/amd64)
Installed devices:
pcm0: <ATI R6xx (HDMI)> (play) default
pcm1: <VIA VT1708S_4 (Analog 2.0+HP/2.0)> (play/rec)

This output, (to my mind) tells me that the device I want to use is recognized as a sound device and furthermore is already set as the default for playing any audio. My first question would therefore be, how can there be no sound coming from the system? Or, to be more precise, what other configuration options should I first look at that could be interfering with sound output for this device?

I currently have these options in /boot/loader.conf:

Code:
snd_driver_load="YES"
radeonhd_load="YES"
snd_hda_load="YES"
hw.snd.default_unit="0"

I also have this in /etc/X11/xorg.conf:

Code:
        Identifier  "Card0"
        Driver      "radeonhd"
        Option      "Audio"                     "on"
        Option      "HDMI"                      "all"
        Option      "BusType"                   "PCIE"
        Option      "VideoRam"                  "524288"
        VendorName  "Advanced Micro Devices [AMD] nee ATI"
        BoardName   "RV730 PRO [Radeon HD 4650]"
        BusID       "PCI:1:0:0"
EndSection

All of this seems to tie in with the solutions offered in earlier posts, yet still the problem persists.
 
Thank you for your reply. I have looked at the manual again.

My dmesg output for the relevant section is as follows:

Code:
hdacc0: <ATI R6xx HDA CODEC> at cad 0 on hdac0
hdaa0: <ATI R6xx Audio Function Group> at nid 1 on hdacc0
pcm0: <ATI R6xx (HDMI)> at nid 3 on hdaa0
hdacc1: <VIA VT1708S_4 HDA CODEC> at cad 0 on hdac1
hdaa1: <VIA VT1708S_4 Audio Function Group> at nid 1 on hdacc1
pcm1: <VIA VT1708S_4 (Analog 2.0+HP/2.0)> at nid 28,29 and 26,30,31,27 on hdaa1

I have noted that compared to the example in the manual there is no mention of a HDA driver on hdac0 and hdac1:

Code:
... hdac0: HDA Driver Revision: 20100226_0142 hdac1: HDA Driver Revision: 20100226_0142 ...

The manual also chooses the second device as the default. However, seeing as my graphics card supports sound and is HDMI connected to the monitor, I would think the first is correct. Unless the VIA device is also in the GPU and is not in the motherboard, as I previously thought. I have tried changing default channels anyway.

Interestingly, unlike this, from the manual:

Code:
# cat /dev/sndstat FreeBSD Audio Driver (newpcm) Installed devices: pcm0: <Intel ICH3 (82801CA)> at io 0xd800, 0xdc80 irq 5 bufsz 16384 kld snd_ich (1p/2r/0v channels duplex default)

My output does not mention the audio driver, as shown in my second post.

mixer(8) tells me that:

Code:
root@ksmallman:/root # mixer
Mixer vol      is currently set to 100:100
Mixer pcm      is currently set to 100:100

I am able to change these values, but not to specify a device, such as pcm0 or pcm1. I notice there is a difference between device dev. I think I've persisted with this quite hard, and only posted as a last resort - the problem is there doesn't seem to be an obvious specific area where I can see a fault.
 
Interestingly, unlike this, from the manual:-

Code:
# cat /dev/sndstat FreeBSD Audio Driver (newpcm) Installed devices: pcm0: <Intel ICH3 (82801CA)> at io 0xd800, 0xdc80 irq 5 bufsz 16384 kld snd_ich (1p/2r/0v channels duplex default)
My output does not mention the audio driver, as shown in my second post.


Correction, yes it does (still).
 
So, all the advice in other posts, about how to get audio working on a Radeon HD card, is now out of date? In other words, it worked a year or two ago, but now it doesn't?
 
HDMI audio only worked on Radeon HD cards with UMS with the radeonhd X.Org driver, which is no longer supported or developed. I have no idea if that X.Org driver even works any more.
 
Back
Top