Jump to content

[HOW TO] enable HDMI DP DVI output on ATI 4890 4870 4850 4830 series (TESTING)


  • Please log in to reply
55 replies to this topic

#41
Mr. Zarniwoop

Mr. Zarniwoop

    InsanelyMac Protégé

  • Members
  • Pip
  • 16 posts
  • Gender:Male

[...] Everything is working perfectly at proper resolution on my main DVI display, but the second VGA display goes into power-save mode as soon as the OSX login screen appears. [...]

I doubt my HDMI patch is going to help you out, because you're not using an HDMI port and your card may be physically different from mine. I suspect you either need (1) the regular QE/CI exotic card patch without my HDMI patch because it might light up your VGA port... although it may not because in the case of non-patched MotMot the second port is meant to be a DP port, or (2) to roll your own VGA ATI Radeon HD 48xx MotMot framebuffer/personality patch to enable simultaneous dual-link DVI+VGA displays output (basically, do the VGA version of my HDMI patch). It took me a while to dive into it, but I got all the information I needed to do this type of patch from mucha's post.

#42
Blame73

Blame73

    InsanelyMac Protégé

  • Donators
  • 80 posts
  • Gender:Male
  • Location:Italy

I am not currently running 10.8.3 on my system, can someone test this for me for hardware acceleration on unsupported cards and simultaneous dual-link DVI+HDMI displays output?

UPDATE: Moved to 10.8.3, been tested. Works.

Attached are patched Apple ATI Radeon HD 48xx Graphics drivers for OS X 10.8.3 (12D78), consisting of version 8.10.44 of ATI4800Controller.kext and ATIRadeonX2000.kext with both netkas' QE/CI ATI Radeon HD 48xx "exotic" card patch and my HDMI MotMot framebuffer patch.

Both kexts need to be installed with Cindori's Kext Drop or something else that properly installs kext files.


Thanks, it works on my 4890 Sapphire Vapor-X 1Gb too!

I have DVI + HDMI working fine, just had to add:
<key>display_1</key>
<string>display_4</string>
in order to have the HDMI and not the VGA as a second monitor

#43
artix123

artix123

    InsanelyMac Protégé

  • Members
  • PipPip
  • 53 posts

Hey guys, I'm trying to get dual DVI working on my Sapphire 4870, in Mavericks DP1. (It should be roughly the same as ML)

 

I've tried various kexts available through this thread, but all to no avail.

Specifically, the ATIFramebuffer.kext on the first post will make my screen display gibberish black and white after the Apple logo during bootup (computer still runs fine, I can hear the volume adjustments)

As for the exotic QE/CI patch, I get kext load errors when booting in verbose.

 

Is there any manual editing of the kexts I need to do to get dual DVI to work? If so, will anyone kindly point in the right direction? Thanks!



#44
VirusX

VirusX

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 367 posts
  • Gender:Male
  • Location:Germany

I am not currently running 10.8.3 on my system, can someone test this for me for hardware acceleration on unsupported cards and simultaneous dual-link DVI+HDMI displays output?

UPDATE: Moved to 10.8.3, been tested. Works.

Attached are patched Apple ATI Radeon HD 48xx Graphics drivers for OS X 10.8.3 (12D78), consisting of version 8.10.44 of ATI4800Controller.kext and ATIRadeonX2000.kext with both netkas' QE/CI ATI Radeon HD 48xx "exotic" card patch and my HDMI MotMot framebuffer patch.

Both kexts need to be installed with Cindori's Kext Drop or something else that properly installs kext files.

 

Thank you Mr. Zarniwoop,

the kexts you provided work well. My main screen is connected via DVI and my TV via HDMI. Sound is not working via HDMI but this is another topic itself ;)

Attached Files



#45
Mr. Zarniwoop

Mr. Zarniwoop

    InsanelyMac Protégé

  • Members
  • Pip
  • 16 posts
  • Gender:Male

 

the kexts you provided work well. My main screen is connected via DVI and my TV via HDMI. Sound is not working via HDMI but this is another topic itself ;)

 

 

Add the following to your DSDT to enable HDMI audio output:

 
            Device (PEGP)
            {
                Name (_ADR, 0x00040000)
                Name (_PRW, Package (0x02)
                {
                    0x09, 
                    0x05
                })
 
                Device (GFX0)
                {
                    Name (_ADR, Zero)
                    Name (_SUN, One)
                    Method (_DSM, 4, NotSerialized)
                    {
                        Store (Package (0x02)
                            {
                                "hda-gfx", 
                                Buffer (0x0A)
                                {
                                    "onboard-1"
                                }
                            }, Local0)
                          DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                        Return (Local0)
                    }
                }
 
                Device (HDAU)
                {
                    Name (_ADR, One)
                    Method (_DSM, 4, NotSerialized)
                    {
                        Store (Package (0x02)
                            {
                                "hda-gfx", 
                                Buffer (0x0A)
                                {
                                    "onboard-1"
                                }
                            }, Local0)
                          DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                        Return (Local0)
                    }
                }
            }
 
Note that address in "Name (_ADR, 0x00040000)" may be different for your card, I don't have enough experience to know if this is the same across all cards or not?  It definitely seems to be the same at least for those with OEM Apple ATI Radeon HD 5770 cards and this DSDT also enables audio over the Mini DisplayPort ports including using MiniDP-to-HDMI adapters.  In order for this DSDT edit to work, Chameleon's bdmesg output needs to show the PCI card's address as 0x4. Mine reads "ATI Radeon HD 4890 2048MB [1002:9460] (subsys [174b:e118]) (RV772:Motmot) :: PciRoot(0x0)/Pci(0x4,0x0)/Pci(0x0,0x0)" which equates to "Name (_ADR, 0x00040000)" for my 4890 in slot 1.
 
No edits were necessary to AppleHDA or AppleHDAController as my card's HDMI Audio Device_id, "30 aa", was already in the kexts.  If your ID is the same, this should fully recognize your graphics card in "PCI Cards" and should add "HDMI Output" to your audio devices.


#46
VirusX

VirusX

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 367 posts
  • Gender:Male
  • Location:Germany

Thank you again Mr. Zarniwoop for your answer. I haven't gotten into testing HDMI audio with your tips yet because the last days I've been setting up my Mavericks install.

 

I am using Clover as bootloader (r2236) which gives me HDMI video corruption and a black DVI screen out of the box. Installing the provided kexts lead to a working DVI when HDMI cable is connected but a 'not supported video signal' on my TV.

 

Did you get a chance to update your kexts for Mavericks?

Have you checked out Clover yet? It's a really powerful bootloader - unfortunately my knowledge is too limited to use all the options. I feel that all your edits on the kexts/DSDT can be included there right in the config.plist because Clover can patch kexts on the fly. 

 

Keep us updated when you have news :)



#47
Mr. Zarniwoop

Mr. Zarniwoop

    InsanelyMac Protégé

  • Members
  • Pip
  • 16 posts
  • Gender:Male

Haven't tried Clover, as there's not enough incentive for me to switch since Chameleon works so well, but it does sound like it offers a few great features.

 

I haven't updated my system to Mavericks yet.  I was thinking of upgrading over the weekend.  I have looked at the kexts and it seems like they are unchanged so both netkas' exotic patch and my HDMI patch should work fine in case you wanted to do it yourself.



#48
VirusX

VirusX

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 367 posts
  • Gender:Male
  • Location:Germany

I renamed your kexts to 'AMD4800Controller' and 'AMDRadeonX2000' and installed them but I got only a mirrored display with 1024x768 resolution -.-

I'll just wait for your install :P

 

I'm using this guide  for audio and system information is telling me, that I have HDMI audio out but it's not showing in system preferences (yet). But again, first step is working video...

 

edit: ATI RV770 ATI Radeon HD 4870  2048MB (Motmot) [1002:9440] (subsys [174B:E114]):: PcieRoot(0x0)/Pci(0x3,0x0)/Pci(0x0,0x0)

so after your guide I have to patch my DSDT with "Name (_ADR, 0x00030000)".

Since I use Clover bootloader, I don't provide a DSDT to my system and clover is applying all the fixes/patches on the fly while booting (IF I understood that correctly). I haven't found out yet how to add custom fixes :(

 

edit2: apparently installing those kexts and then deleting them and replacing with the original AMD4800Controller somehow broke my QE/CI so I can't watch *.mkv anymore. sigh. But at least my 5.1 sound is working haha

I guess that's enough for today - glad that this is only my testbed ;)

Attached Files



#49
VirusX

VirusX

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 367 posts
  • Gender:Male
  • Location:Germany

Today I started a new try after made a fresh testbed install for Mavericks.

My MotMot personality is as follows:

Personality: MotMot
ConnectorInfo count in decimal: 2
Disk offset in decimal 531280
0000000    00  04  00  00  04  01  00  00  00  01  00  00  10  00  02  03
0000010    04  00  00  00  14  02  00  00  00  01  00  00  01  11  01  04
0000020

I grabbed the AMD4800Controller.kext from S/L/E, copied to my desktop and opened AMD4800Controller.kext/Contents/MacOS/AMD4800Controller with HexEdit.

 

I did a search and replace of the line (my 'display port')

00  04  00  00  04  01  00  00  00  01  00  00  10  00  02  03

and changed it to 

00  08  00  00  04  02  00  00  00  01  00  00  20  00  02  02

saved it, and installed that kext with kextdrop.

Plugged in my TV over HDMI and rebootet. 

Funny thing: My clover bootloader won't even begin to boot Mavericks when I have a HDMI cable plugged in!

When I unplug the HDMI cable, Mavericks would boot up fine but my main DVI screen lost QE/CI and the resolution is {censored}. Installing the provided ATIRadeonX2000.kext does not help.

 

Mr. Zarniwoop, what did you change in the ATIRadeonX2000.kext? Did you do something else to the AMD4800controller.kext?

 

Thanks for your help

 

edit: Not being able to boot when HDMI cable is plugged in, that's the bootloader's fault (Clover r2293) - booting with an older version and hdmi cable plugged in works... but still same problems as above.



#50
VirusX

VirusX

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 367 posts
  • Gender:Male
  • Location:Germany

I got a R9 270X.

 

my follow-up problems are here -.-



#51
Mr. Zarniwoop

Mr. Zarniwoop

    InsanelyMac Protégé

  • Members
  • Pip
  • 16 posts
  • Gender:Male

Mr. Zarniwoop, what did you change in the ATIRadeonX2000.kext? Did you do something else to the AMD4800controller.kext?

 

I know you've moved on, but I stumbled across this and thought I'd answer in case it helps others.

 

Yes, I changed both of those kexts by first patching them as netkas' QE/CI 48xx exotic card patch, and then after that doing my HDMI patch. It looks to me like you only did my HDMI patch.

 

You might want to find the QE/CI 48xx exotic kexts as a starting point, and then do my HDMI patch which changes the DP personality to HDMI.



#52
MOudz

MOudz

    InsanelyMac Protégé

  • Members
  • Pip
  • 5 posts

I know you've moved on, but I stumbled across this and thought I'd answer in case it helps others. Yes, I changed both of those kexts by first patching them as netkas' QE/CI 48xx exotic card patch, and then after that doing my HDMI patch. It looks to me like you only did my HDMI patch. You might want to find the QE/CI 48xx exotic kexts as a starting point, and then do my HDMI patch which changes the DP personality to HDMI.


Could u explain more the steps for enabling HDMI .. I got the exotic patch to the ATI 4870 card and got it to work but i cant get the HDMI port to work .. Thanks

#53
Mr. Zarniwoop

Mr. Zarniwoop

    InsanelyMac Protégé

  • Members
  • Pip
  • 16 posts
  • Gender:Male

Could u explain more the steps for enabling HDMI .. I got the exotic patch to the ATI 4870 card and got it to work but i cant get the HDMI port to work .. Thanks

 

My HDMI patch is here, my card used the Motmot framebuffer personality:

 

http://www.insanelym...ting/?p=1814469



#54
MOudz

MOudz

    InsanelyMac Protégé

  • Members
  • Pip
  • 5 posts

My HDMI patch is here, my card used the Motmot framebuffer personality:

 

http://www.insanelym...ting/?p=1814469

Thanks for your reply,

 

Here's what i did i opened AMD4800Controller.kext/Contents/MacOS/AMD4800Controller with HexEdit and replaced 00 04 00 00 04 01 00 00 00 01 00 00 10 00 02 03 with 00 08 00 00 04 02 00 00 00 01 00 00 20 00 02 02 

Saved and restarted .. when i plug in my HDMI nothing happens but before patching, when i plug it my main screen mess up ...

is there a step i am messing ? 

i'm using the QE\CI 4800 Exotic patch for 10.10.0 

thanks 



#55
Mr. Zarniwoop

Mr. Zarniwoop

    InsanelyMac Protégé

  • Members
  • Pip
  • 16 posts
  • Gender:Male

 

is there a step i am messing ? 

i'm using the QE\CI 4800 Exotic patch for 10.10.0 

 

 

I always needed to install the new Kext with Kextdrop or something similar, otherwise it didn't rebuild the Kext Cache and use the newly patched kext.

 

Otherwise, it sounds like you did what I would have done. HDMI was recognized once the Mac OS X desktop appeared.



#56
VirusX

VirusX

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 367 posts
  • Gender:Male
  • Location:Germany

Thanks for the follow-up.

For everyone who is using clover: There is an easy way to patch the framebuffer with clover now. The procedure is described here. With Clover Configurator it is even easier - give it a try :)

No need for manually patching some kexts, installing them and rebuilding caches etc -- just change the clover config file with clover configurator, save and reboot and test :)

 

btw: DVI and HDMI incl audio works nicely with my R9 270X :)







0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2015 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy