Contribute
Register

Windforce R9 290 3X OC + 10.11.2

Status
Not open for further replies.
Joined
Jan 25, 2011
Messages
722
Motherboard
GA-X58A-UD3R
CPU
X5650
Graphics
R9 290
Mac
  1. MacBook
Mobile Phone
  1. Android
  2. iOS
I have thus far been unable to get the following setup-- which worked perfectly with an ATI 5770 previously-- to work with my new (to me) Windforce R9 290 3X OC 4GB in El Capitan 10.11.2. I'm hoping someone can help me figure this out.

I've tried many variations of spoofing R9 290X ID, FB Baladi, Exmore or generic (Radeon). I'm currently testing over HDMI to a 4K Samsung JU(2015) series TV , but will switch back to my ACD 27" LED (miniDP) once my DP->miniDP adapter comes in a few days.

What has gotten me the closest is when I try Fix Display = True, and spoof the card for an R9 290 via Fake ID = 0x67B01002, sometimes with connector patches. What happens is that after Clover, after the Apple boot screen, my display turns totally white, with blinking/moving black lines-- it freaks out for 3-8 seconds, then usually the screen goes black.

At this point I can use Screen Sharing on my Macbook to log into my desktop. In About This Mac I see Radeon 8xxx and 4 GB memory. I'm not sure if I can test QE/CI via screen sharing. I don't get any ripple effect visible when I ad/remove dashboard widgets, and my Cinebench GPU score are half what they were with my ATI 5770 (again, not sure if running those via Screen Sharing hobbles them). Also, the video resolution is usually around 1280 x 1040, or something odd.

I get this white screen behavior any time I use Fix Display = True. All other combinations with Fix Display = False lets me boot via HDMI to the TV, but VRAM is only recognized as either 1, 5, or 7MB and screen resolutions are only a single option, sometimes 800 x 600, sometimes 1920 x 1080. None of these configurations have QE/CI working.

Suggestions?
 
FixDisplay=True is necessary for device ID spoofing, it won't work otherwise. In this case, the driver won't pick up the card, so it'll run in unaccelerated mode.

What happens when booting with FixDisplay=True, InjectAti=True, FBName=Radeon? White screen?

We can try to make a FB connector patch. You can easily dump your vBIOS with Clover, just press F6 when the boot manager comes up, this will dump your ROM to EFI/misc.

Note to anyone who has a R9 290 or R9 390 working without framebuffer patch: Please upload a ROM dump, I'd like to compare it to a non-working one. It might also be a good idea to inject the whole ROM through clover.
 
FixDisplay=True is necessary for device ID spoofing, it won't work otherwise. In this case, the driver won't pick up the card, so it'll run in unaccelerated mode.

What happens when booting with FixDisplay=True, InjectAti=True, FBName=Radeon? White screen?

We can try to make a FB connector patch. You can easily dump your vBIOS with Clover, just press F6 when the boot manager comes up, this will dump your ROM to EFI/misc.

Note to anyone who has a R9 290 or R9 390 working without framebuffer patch: Please upload a ROM dump, I'd like to compare it to a non-working one. It might also be a good idea to inject the whole ROM through clover.

Will a ROM exported from GPUz (win10) work? I had to zip the file otherwise the forum wouldn't let me upload it.

BTW, strange behavior from this card. I originally installed Windows 10 (via update from 7) w/ my 5770. When I tried to boot from the 290 into that system it moved at glacial speed-- took 30 minutes! And I couldn't really do anything inside the system with any kind of speed.

I put my 5770 back in, and Win10 booted fine. So I downloaded the latest Crimson software and installed it. Then I put the 290 into the system as well (5770 in x16 slot 1, 290 in x16 slot 2-- the latter running in 8x mode because I have a usb3 card occupying x8 slot 2, which shared bandwidth with the 290 in that arrangement)-- and it booted into Win 10 at normal speed. The 5770 (x16 slot 1 was set to primary in BIOS).

I made sure drivers were set up, everything was recognized, etc. Then I unplugged the display from the 5770, and plugged it into the 290-- and it kept working. Cinebench r15 ran, though slow (about 70fps), which I attributed to the x8 speed the 290 was running in. That's when I saved the rom below.

Next I left the 5770 in slot 1, and booted the machine into Bios and told it to make slot 2 (290) primary. I rebooted out of bios, and Win 10 booted at normal speed with the 290 in slot 2 set to primary (5770 in slot 1, nothing attached). Once in, I was able to set my display to 4K30 (HDMI 1.4 on 290, 2.0 on Samsung TV).

Great.

So then I remove the 5770, and leave the 290 where it is in slot 2 (in bios as primary)-- and boot behavior goes back to the bizarre, super-long boot into windows. It's actually still going at the moment, with a few black screens and stalled win 10 spinning ball.

I'm not really sure what to make of all this. I'd rather not leave my 5770 in to allow the 290 to work like this because my PSU only has 2 6+2 PCI-E leads, meaning I need to power the 5770 from a molex Y (2 leads) to 6-pin cable, which I've heard isn't very safe/reliable for a GPU. That said, my Corsair 650tx should be plenty to run like this if it had the proper leads. The killawatt didn't exceed 350 watts during the cinebench run.

I'm kinda at a loss. Could I have a bad card? Strange, though, since it will boot as the primary card as long as I keep the 5770 (this not via Clover, but direct to a windows legacy system on a separate drive) in the computer.

Cheers, I'm desperate to get this working with even one monitor!
 

Attachments

  • Hawaii.rom.zip
    98.4 KB · Views: 71
Florian: I really appreciate your help!

When I try: FakeID = 0x67B01002, Inject ATI = True, Fix Display = True, FBName = Radeon, the Apple logo screen takes longer than usual to show the loading bar, the loading bag gets over 50% or so, and then the screen goes white with faint flickering (almost like a few light lines and perhaps an outline of a box), and after ~5 seconds the machine reboots (no power off) to POST and repeats this cycle.

If I unplug the HDMI cable a moment after the white screen, the machine doesn't reboot. Obviously I have no screen, but I can log in with screen sharing from another computer and see that I'm at my desktop (everything seems to work) and About This Mac shows AMD 8xxx w/ 4GB memory.

If I boot from the start with no monitor plugged in and wait, I can log int remotely, but the About This Mac shows AMD 290 w/ 4GB memory.

I'm not sure if this distinction helps: AMD 8xxx vs. AMD 290, both with full 4 GB, depending on whether I boot + pull monitor before white screen causes a reboot, or if I boot with no screen at all.

I can check a little later, but I think when I try Baladi I get the same white screen situation.

I really hope the VBIOS dump (from VGA@Bios tool via Win10) will help figure out some kind of connector patch. I will be using a DP monitor primarily, but I'm using HDMI to test the system until my DP to mDP adapter arrives (hopefully soon!).

(Perhaps, at some point, we should start an R9 290/390 master thread, with specific models/firmware/OS and what configuration worked. I remember we used to have similar threads/wikis for older cards when, for instance, some 5770/80 worked in some configurations, while others didn't-- notably non-reference cards, and/or issues with DP/mDP).
 
Any reason to think 10.11.3 might bring better support? The changelog suggests updated drivers. I have two system installs on separate, internal SSDs....I could try updating the test ssd and seeing if that works before attempting the connector patch.
 
I must be doing something wrong, because no matter what I try, as long as I have Fix Display set to True, I get the blinking white screen followed by a reboot (or if I pull the HDMI during the white screen the system enters the desktop and I can use screen sharing to see that the R290 + 4096MB VRAM is recognized).

I've attached a conflig.plist from one attempt. Maybe I have something set fatally incorrectly?

I've also tried the same config, but with what I understand is your suggested patched (which I don't entirely follow compared to the guides I've tried to decipher).

So I've had variations of:

<key>ATIConnectorsController</key>
<string>8000</string>
<key>ATIConnectorsData</key> <string>000400000403000000010300120403030004000004030000000101001102010100040000040300000001020021030202000400000403000000010400220504040004000004030000000105001000050500040000040300000001060020010606</string>

With this:

<key>ATIConnectorsPatch</key>
<string>000800000402000000010200220502030004000004030000000101011204010100040000040300000001020021030202040000001402000000010300110203040004000004030000000105001000050500020000040200000001040110000406</string>

or
<key>ATIConnectorsPatch</key>
<string>000400000403000000010300120402010004000004030000000101001102010400040000040300000001020021030402000400000403000000010400220503030004000004030000000105001000060600040000040300000001060020010505</string>

Both result in blinking white screens.

Could my DSDT or SMbios (MacPro 5,1) be interfering do you think? Or maybe none of this works on a legacy install (X58 mobo) of Clover.

I another possibility is a faulty card. But it's odd that if I pull the HDMI during white screen the computer itself will load (obviously screenless) and is stable running various accelerated things. Likewise, as long as I have my 5770 installed (but nothing plugged in), I can boot into Win10 with the 290 set as primary and run Cinebench or Valley benches without a hiccup.
 

Attachments

  • config.plist
    6.8 KB · Views: 192
Update:

I've switched to Display Port (ACD 27" LED).

Nothing works yet. The closest I have gotten is with the patch I used above (the one you suggested Florian), Fix Display = True, Inject ATI = True, FBName = Baladi. After the apple logo and loading bar the screen does flash white for a moment, but then automatically goes black without rebooting. I can actually see that the display backlight is on.

I can then use screen sharing to log in remotely, and everything is recognized. I can even then plug in my TV via HDMI and it shows up (albeit as 1080p60) virtually. So I have two virtual monitors showing the desktop, though the screens themselves remain black w/ backlight on. I'm actually typing this reply from my desktop-- controlled via my laptop.

No amount of plugging and unplugging seems get the screens to work directly.

One thing I noticed in IOReg (see screenshot 1) is that I seem to be using ATi,Baladi@2, but it gets Port Number 0x0 and IOFBdependentindex 0x2. I was under the impression these should all be the same, so @2, 0x2, 0x2. I'm not sure if that helps.
 

Attachments

  • Screen Shot 2016-01-21 at 5.05.24 PM.png
    Screen Shot 2016-01-21 at 5.05.24 PM.png
    360.4 KB · Views: 153
  • Screen Shot 2016-01-21 at 5.06.01 PM.png
    Screen Shot 2016-01-21 at 5.06.01 PM.png
    145.2 KB · Views: 147
  • Screen Shot 2016-01-21 at 5.07.28 PM.png
    Screen Shot 2016-01-21 at 5.07.28 PM.png
    156.6 KB · Views: 153
Status
Not open for further replies.
Back
Top