Jump to content

XFX R9 270X UEFI - Clover No Boot


Zero21XX
 Share

18 posts in this topic

Recommended Posts

Okay, I've tried everything with this card. I've read every guide on here, and probably everything else I've been able to find online. Done everything from injecting DSDT, to Framebuffer port mapping. Even tried loading other bioses with Clover /rom. I've been working on this for days, and I can't come up with anything. Clover loads up fine, no kernel panics, everything seems to go smoothly, and then it just hangs, and becomes unresponsive. The only way I can get the system to boot is with safe mode.

I've attached a Vbios dump, and GPUZ screen shot. So if someone can point me in the right direction it would be greatly appreciated. Before anyone asks, this system works fine with a 7770.

This is on 10.10.5, but this card hasn't worked on any version I've tested. It's also a vanilla clover install that works fine with the 7770 installed.

 

Edit:

 

Card model is R9-270X-CDFC

 

VBios decoded

ATOM BIOS Rom: 
	SubsystemVendorID: 0x1682 SubsystemID: 0x9275
	IOBaseAddress: 0x0000
	Filename: 270X2GSS.W81
	BIOS Bootup Message: 
C63101 CURACAO XT GDDR5 64Mx32 2GB 150e/150m                                

PCI ID: 1002:6810
Connector at index 0
	Type [@offset 42722]: DisplayPort (10)
	Encoder [@offset 42726]: INTERNAL_UNIPHY2 (0x21)
	i2cid [@offset 42850]: 0x90, OSX senseid: 0x1
Connector at index 1
	Type [@offset 42732]: DisplayPort (10)
	Encoder [@offset 42736]: INTERNAL_UNIPHY2 (0x21)
	i2cid [@offset 42877]: 0x91, OSX senseid: 0x2
Connector at index 2
	Type [@offset 42742]: HDMI-A (11)
	Encoder [@offset 42746]: INTERNAL_UNIPHY1 (0x20)
	i2cid [@offset 42904]: 0x92, OSX senseid: 0x3
Connector at index 3
	Type [@offset 42752]: DVI-I (2)
	Encoder [@offset 42756]: INTERNAL_UNIPHY (0x1e)
	i2cid [@offset 42941]: 0x95, OSX senseid: 0x6
Connector at index 4
	Type [@offset 42762]: DVI-I (2)
	Encoder [@offset 42766]: INTERNAL_KLDSCP_DAC1 (0x15)
	i2cid [@offset 42941]: 0x95, OSX senseid: 0x6
Connector at index 5
	Type [@offset 42772]: DVI-D (3)
	Encoder [@offset 42776]: INTERNAL_UNIPHY1 (0x20)
	i2cid [@offset 42968]: 0x94, OSX senseid: 0x5


—————————————————————————

270X2GSS.W81:

C63101 CURACAO XT GDDR5 64Mx32 2GB 150e/150m                                

Subsystem Vendor ID: 1682
       Subsystem ID: 9275
Object Header Structure Size: 419
Connector Object Table Offset: 52
Router Object Table Offset: 0
Encoder Object Table Offset: 12a
Display Path Table Offset: 12
Connector Object Id [19] which is [DISPLAY_PORT]
	encoder obj id [0x21] which is [INTERNAL_UNIPHY2 (osx txmit 0x12 [duallink 0x2] enc 0x4)] linkb: false
Connector Object Id [19] which is [DISPLAY_PORT]
	encoder obj id [0x21] which is [INTERNAL_UNIPHY2 (osx txmit 0x22 [duallink 0x2] enc 0x5)] linkb: true
Connector Object Id [12] which is [HDMI_TYPE_A]
	encoder obj id [0x20] which is [INTERNAL_UNIPHY1 (osx txmit 0x11 [duallink 0x1] enc 0x2)] linkb: false
Connector Object Id [2] which is [DVI_I]
	encoder obj id [0x1e] which is [INTERNAL_UNIPHY (osx txmit 0x10 [duallink 0x0] enc 0x0)] linkb: false
Connector Object Id [2] which is [DVI_I]
	encoder obj id [0x15] which is [INTERNAL_KLDSCP_DAC1 (osx txmit 0x00 enc 0x10?)] linkb: false
Connector Object Id [3] which is [DVI_D]
	encoder obj id [0x20] which is [INTERNAL_UNIPHY1 (osx txmit 0x21 [duallink 0x1] enc 0x3)] linkb: true

post-387101-0-15617200-1442277314_thumb.gif

Pitcairn.zip

config.zip

Link to comment
Share on other sites

Your mistake is you confuse "real" and "fake".

FakeID must be different from RealID=0x68101002

Choose, for example FakeID=0x68181002

Are you serious?! Oh wow I'm an idiot... I'll test this out when I get home, thank you for the info.

 

Edit: Well that worked. 68181002 didn't work, but 69111002 did. Now to figure out how to get full acceleration.

post-387101-0-80930300-1442345344_thumb.png

config.plist.zip

Link to comment
Share on other sites

6911:1002 isn't a real GPU, that's why you don't have acceleration. 270X's device ID (6810:1002) is already in AMD7000Controller.kext in 10.11, so you shouldn't need FakeID.

I know, but it doesn't boot. It just refuses to boot unless I use safe mode or that fake ID. I've tried every other combination. The closes I've gotten to boot 0x68101002 was to use a bios in the /rom folder from another card. It just black screens.

Link to comment
Share on other sites

Set Inject ATI to NO

insert into Graphics FBName and set to Futomaki

Same results. Tried that with loading & patching bios both enabled, and disabled. Halts at "GPU Hardware VM is enabled" doesn't do anything after that.

Link to comment
Share on other sites

Same results. Tried that with loading & patching bios both enabled, and disabled. Halts at "GPU Hardware VM is enabled" doesn't do anything after that.

sounds like you might be using a distro or some really badly patched kext

Link to comment
Share on other sites

Sorry forgot to add you need dsdt edit as well, working here....

I think I tried that a few weeks back. Maybe I did it wrong, oh well here's a clover extracted DSDT. If it's not to much trouble can you tell me what it is I need to patch please.

 

 

I actually wrote that response to be kind. I've already done this, and I'm 100% sure I've done it correctly. Every suggestion given to me so far I've done before I even asked for assistance. Asking for help is a last resort for me.

DSDT.aml.zip

Edited by Zero21XX
Link to comment
Share on other sites

  • 3 weeks later...

I found out that my XFX card just isn't compatible with OSX with out modifying the bios. I've done this and bricked the card a few times. Not sure why, but this card doesn't seem to like being cross-flashed. I also found out that this is one of the few 270X cards with Samsung vRAM, with a very new (2015) UEFI bios. The card is back to stock, and is running normally again. I decided to quit on this build for now. I'll pick up a GTX 970 in the near future to get everything up and running again.

 

Anyways, for those that tried to help, thanks.

Link to comment
Share on other sites

  • 1 month later...
  • 3 weeks later...

Hello Zero21XX.... were you able to figure out a potential BIOS that may work with this card? I am stuck on black screens and in a similar issue, and while my framebuffer is correct, I am still getting black screens. Thanks!

 

Okay, so let me try to understand your issue. You are booting normally with no panics, and ultimately you reach a black screen?

If this is the case the card is compatible and just needs frame buffer modifications.

 

I gave up on my 270 and picked up a GTX 970, so if you happen to have the same model I do (R9-270X-CDFC) I would be little help. I've read in a few places that newer Xfx cards need cross flashing / modified vbios, but on my card both resulted with failed boots, or just bricked the card.

Link to comment
Share on other sites

Okay, so let me try to understand your issue. You are booting normally with no panics, and ultimately you reach a black screen?

If this is the case the card is compatible and just needs frame buffer modifications.

 

I gave up on my 270 and picked up a GTX 970, so if you happen to have the same model I do (R9-270X-CDFC) I would be little help. I've read in a few places that newer Xfx cards need cross flashing / modified vbios, but on my card both resulted with failed boots, or just bricked the card.

 

Hello Zero21XX... I hadn't looked at the issue since I last posted, but I booted up my OS X partition today and I have some more info on it:

 

First of all, I'm pretty sure that I have a similar model to the one you have - I no longer have the packaging for my card and the label on the card itself is very difficult to read. The model number you posted is familiar though so I am pretty sure that it is at least similar enough that this is something you may be able to help with.

 

Nevertheless, to explain my situation more, I am running the Clover bootloader, but I am not using it to kext patch. I am doing it the traditional way where it actually modifies the system kext (AMD7000Controller.kext). With that in mind, I am modifying the Ebi profile in the kext itself, and with partially successful results. Here is the current hex edit I have - in no way do I actually think that it is proper to the format, but I am at least able to get in with one screen and I have been experimenting with values to see what works and such:

 

0000000: 0004 0000 0403 0000 0001 0100 1204 0101  ................

0000010: 0400 0000 1402 0001 0001 0200 1000 0406  ................
0000020: 0004 0000 0001 0000 0009 0301 2205 0202  ............!...
0000030: 0004 0000 0001 0000 0009 0401 1102 0303  ............"...
0000040: 0400 0000 1402 0001 0001 0500 2103 0605  ................
 
With the following code, DVI1 should match up with line 0000010:, while DVI2 should match up with DVI 0000040:. Now, the issue, however, is that with the values I am pulling from the BIOS, they are not working (or I'm just an idiot, which is why I'm going to post what I have.)
 
I've attached a ZIP file which has my current situation with the above hex modification, as well as my BIOS extracted from the card and an IOReg status of both monitors 1 and 2. Also, I wrote down some things that I did in a linear order so that you can see what happens when I do what - for example, having all three monitors connected results in a black screen on DVI1 and DVI2, but nothing on my DPtoVGA adapter. Unplugging DVI2 results in a working computer with only DVI1 functional (DPtoVGA blank, no signal, etc). More is in the attached photo of my scanned notes.
 
Even though my card is similar (or possibly the same), I was still able to at least get black screens, so I am thinking that there is a way to do this without a BIOS mod. While I am not familiar with the whole process of hex editing personalities and the fact this card is relatively difficult to work with, any help is appreciated. Thanks so much!

 

EDIT: Here's the attachment - I don't like the forum's way of doing it: 

https://drive.google.com/file/d/0B9BsZuyetpw7Sk40TGE2MmhhR0E/view?usp=sharing

Link to comment
Share on other sites

 Share

×
×
  • Create New...