Jump to content

ATI Radeon HD 5000 instead of ATI Radeon HD 6770


angelol
 Share

6 posts in this topic

Recommended Posts

Hello guys, been a while since my last post in here.
I came up with a thought while trying to make my HDMI port on my MSI 6770 1gb while at the same keeping ATI Radeon HD 6770 1024 MB in the about this mac window.

 

Skip to the end if you are in a hurry :P

 

I found that if I inject my "@0-2" framebuffer names as "Hoolock" in my DSDT per Rampagedev's instruction in http://www.insanelymac.com/forum/topic/282687-radeon-hd-6770-full-qeci-mlmavericksyosemite/page-2?do=findComment&comment=1902721, my card was recognised as 6770 and VGA and DVI worked, but the HDMI didn't.

 

If, on the other hand I, don't fiddle with them in my DSDT, DVI and HDMI works(video only) (i really forgot to test VGA at that point) but in ioreg, the chosen framebuffer would be "ATI_Framebuffer" or something like that.

At the same time, in "About this Mac" the card was recognised as  ATI Radeon HD 5000 1024 MB.

Hold my (that) though.

After bumping in this and this tutorials, again by Rampagedev, whom I respect for this guy is tremendously btw, I noticed that Hoolock that it has wrong port types. In detail:

Personality: Hoolock
ConnectorInfo count in decimal: 3
Disk offset in decimal 166176
0000000 00 04 00 00 04 06 00 00 00 01 00 00 21 03 05 01   // 0x400 means Display Port
0000010 00 04 00 00 04 06 00 00 00 01 00 00 11 02 04 02   // 0x400 means Display Port 
0000020 04 00 00 00 14 02 00 00 00 01 00 00 02 04 01 03   // 0x4   means DVI-Dual Link port
0000030
Connector Type LVDS          0x00000002 = 02  00  00  00   Note: Laptop Monitor
Connector Type DVIDL         0x00000004 = 04  00  00  00   Note: Dual Link DVI
Connector Type VGA           0x00000010 = 10  00  00  00
Connector Type S-V           0x00000080 = 08  00  00  00
Connector Type DP            0x00000400 = 00  04  00  00
Connector Type HDMI          0x00000800 = 00  08  00  00
Connector Type DVISL         0×00000200 = 00  02  00  00   Note: Single Link DVI

On the contrary, Vervet had 2 of my connector types correct:

Personality: Vervet
ConnectorInfo count in decimal: 4
Disk offset in decimal 166224
0000000 00 04 00 00 00 04 00 00 00 71 00 00 12 04 04 02   // 0x400 means Display Port 
0000010 04 00 00 00 14 00 00 00 00 71 00 00 01 12 01 04   // 0x4   means DVI-Dual Link port
0000020 00 02 00 00 14 00 00 00 00 71 00 00 00 00 06 03   // 0x200 means DVI-Single Link port 
0000030 00 08 00 00 00 02 00 00 00 71 00 00 22 05 05 01   // 0x800 means HDMI 
0000040 

So I thought hey what the hell, I'll try it ,and to my blame-my-genius type of shock, it finally has worked.Video worked through HDMI and my card had the so crazily desired correct/corrected name.

 

Gonna update the post after I used these chaned Vervet framebuffer and in order to make the 3rd port,by swapping  the Single Link DVI, with the working VGA from Baboon. This is how it looks:

0000000 10 00 00 00 10 00 00 00 00 01 00 00 00 10 00 02   // ex-Displayport, now VGA from Baboon Framebuffer
0000010 00 08 00 00 00 02 00 00 00 71 00 00 22 05 05 01   // ex-DVI-Dual Link, now HDMI 
0000020 04 00 00 00 14 00 00 00 00 71 00 00 01 12 01 04   // ex-Single Link, now  
0000030 00 04 00 00 00 04 00 00 00 71 00 00 12 04 04 02   // ex-HDMI type, now Display Port and the reason for using Display Port,  
0000040                                                   // was to preserve the framebuffer's port symmetry,weight.

edit 1:

 

Didn't do much.. VGA got recognized only if I use an HDMI to DVI adapter and a VGA cable but I didn't got the right resolution on that screen. Still a bit better than before.
Im gonna continue tomorrow, I had an all-nighter and it's 8 am already..

 

 

 

 

edit 2: (The Last Edit)   :thumbsup_anim:  :hyper:  :hyper:  :hyper:  :blowup:

 

 

 
Curtesy of Antien's post here,behold a patched Vervet FrameBuffer that HDMI and DVI works perfectly.
I added VGA from Baboon which I know is working and voilà, fully working DVI+HDMI(audio too)+VGA ports on MSI 6770 1Gb.

I hope this will help present and future, 6770 owners. 

0000000 10 00 00 00 10 00 00 00 00 01 00 00 00 10 00 02 // VGA from Baboon
0000010 04 00 00 00 14 02 00 00 00 01 00 00 11 02 03 03 // DVI-Dual Link from Antien 
0000020 00 02 00 00 04 02 00 00 00 01 00 00 00 10 04 03 // Display Port from Antien
0000030 00 08 00 00 04 02 00 00 00 01 00 00 22 05 02 04 // HDMI from Antien
0000040
  • Like 1
Link to comment
Share on other sites

Yeah, I guess I went full retard to forgot it  :P 
This is about my Desktop, as you can see in my signature.  :D 

 

Link to comment
Share on other sites

Was the DSDT of any help mate?  :)

yes and no

I was totally wrong with understanding what to do.

first: injecting device-id and patching FB

sec.: my card is a sapphire Radeon HD 6770 and not MSI, which has DP, HDMI and DL DVI

but now I have a clue how this stuff works.

I already tried some FB settings, but not successfully.

Did you patch the both info.plist with dev-id 68ba. I tried it with injecting 68b8 in DSDT and leave them untouched.

Does it make any difference to set GraphicsEnabler to Yes or No

Link to comment
Share on other sites

I injected my card through my DSDT.aml (the GFX0 section) and I patched my framebuffer successfully to the point that all 3 of my ports are working. And this is how i did it:

 

At first, I thought Hoolock was my correct framebuffer, but I was wrong. Vervet was (because it has an HDMI port by default).

After countless trials-soon to be errors- with Hoolock injections, I thought wtf, Hoolock doesn't have an HDMI port (at least according to ATI5000Controller.kext's dump by Rampagedev)

Then I brought the pieces together when I noticed that Vervet had one..

 

I googled "patched vervet 6770" and I found Antien's post and changed the Display port from Antien's already patched Framebuffer to a VGA from Baboon.

(I tried another first though, the one found in Eulemur)

 

Conclusion: Since you have 3 ports as me,you should copy my GFX0's _DSM method to your dsdt according to your corresponding method,and then, if you use clover, use the patched by Antien Vervet Framebuffer in Kernel And Kexts Patches section.
 

At last I did insert 68ba1002 address in both AMD5000Controller and AMDRadeonX3000 kexts,but that didn't have any significance now that I can do the same and more through my DSDT.
If you follow my advice and all work except from a cosmetically wrong detail in System Information ( from About this Mac window ), that your card's Rom Revision is MSI JUNIPERXT V21430 64MX32 1G UCODEV:128

you can delete this from your (edited) DSDT:

"ATY,Rom#", 
                            Buffer (0x2A)
                            {
                                "MSI JUNIPERXT V21430 64MX32 1G UCODEV:128"
                            }, 

Link to comment
Share on other sites

 Share

×
×
  • Create New...