Rafał Miłecki ─ Zajec

Evergreen HDMI audio ready!

Few days ago I've managed to hack radeon to play audio over HDMI on my Evergreen card. At first I just forced radeon to use single hardcoded HDMI block I've discovered on my card.
Then I started looking for universal (general) solution. I was trying to do HDMI block mapping based on crtc offset, but it failed. Trying to use encoder type (which is really a transmitter in Radeon hardware) also didn't work out.

Finally, after analyzing dumps I've received from people, I found out the real solution. HDMI block mapping has to be based on DIG encoder.

I want to help the community for helping me with the dumps. Without them I wouldn't write really-working code so fast. Sometimes you don't have to known ANSI C and hardware programming to help in development :)

The patches will be released in minutes, I hope every Evergreen card will be supported now. They hopefully will hit Dave's tree soon and kernel 3.3 as the result.

P.S.
List of patches:
[PATCH] drm/radeon/kms: minor HDMI audio cleanups
[PATCH 1/3] drm/radeon/kms: one more HDMI cleanup (in disabling code)
[PATCH 2/3] drm/radeon/kms: support for audio on Evergreen
[PATCH V2 3/3] drm/radeon/kms: enable HDMI mode on Evergreen encoders
[PATCH V2] drm/radeon/kms: do not force DVI mode on DCE4 if audio is on