netkas.org forum
October 20, 2019, 07:53:38 AM *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News: Information for registering users http://forum.netkas.org/index.php/topic,2246.0.html
 
   Home   Help Search Login Register  
Pages: [1]
  Print  
Author Topic: 7970/R9 280X/D700 mystery with 10.9.2  (Read 12150 times)
khe91
Not Newbie
*
Offline Offline

Posts: 5


« on: February 14, 2014, 11:34:46 PM »

Hello Graphic Wizards,

I got a Asus MATRIX-HD7970-P-3GD5.
This card has 4 DP, 1 DVI-DL and 1 DVI port.

Code:
AS01U2.bin  :

6798HB.15.23.0.1.AS01.U2                                                    

Subsystem Vendor ID: 1043
       Subsystem ID: 44c
Object Header Structure Size: 453
Connector Object Table Offset: 52
Router Object Table Offset: 0
Encoder Object Table Offset: 145
Display Path Table Offset: 12
Connector Object Id [19] which is [DISPLAY_PORT]
encoder obj id [0x20] which is [INTERNAL_UNIPHY1 (osx txmit 0x11 [duallink 0x1] enc 0x2)] linkb: false
Connector Object Id [19] which is [DISPLAY_PORT]
encoder obj id [0x20] which is [INTERNAL_UNIPHY1 (osx txmit 0x21 [duallink 0x1] enc 0x3)] linkb: true
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 [1] which is [DVI_I]
encoder obj id [0x21] which is [INTERNAL_UNIPHY2 (osx txmit 0x22 [duallink 0x2] enc 0x5)] linkb: true
Connector Object Id [1] which is [DVI_I]
encoder obj id [0x15] which is [INTERNAL_KLDSCP_DAC1 (osx txmit 0x00 enc 0x10?)] linkb: false
Connector Object Id [4] which is [DVI_D]
encoder obj id [0x1e] which is [INTERNAL_UNIPHY (osx txmit 0x10 [duallink 0x0] enc 0x0)] linkb: false

In 10.9.1 it worked well with my 2 screens. A Dell 3011 connected via DP and Dell 3007 connected via DVI-DL, both 2560x1600.
No graphic inject or DSDT needed, OOB, LuxMark of 2298.

Code:
MacPro2:~ khe91$ ioreg | grep ATY
    | |   |           | +-o ATY,AMD,RadeonFramebuffer@0  <class AtiFbStub, id 0x100000337, registered, matched, active, busy 0 (3 ms), retain 8>
    | |   |           | +-o ATY,AMD,RadeonFramebuffer@1  <class AtiFbStub, id 0x100000338, registered, matched, active, busy 0 (0 ms), retain 8>
    | |   |           | +-o ATY,AMD,RadeonFramebuffer@2  <class AtiFbStub, id 0x100000339, registered, matched, active, busy 0 (0 ms), retain 8>
    | |   |           | +-o ATY,AMD,RadeonFramebuffer@3  <class AtiFbStub, id 0x10000033a, registered, matched, active, busy 0 (0 ms), retain 8>
    | |   |           | +-o ATY,AMD,RadeonFramebuffer@4  <class AtiFbStub, id 0x10000033b, registered, matched, active, busy 0 (0 ms), retain 8>


With all the 10.9.2 betas I can't get the same behavior.
A single screen via DVI-DL connected gives the same results as in 10.9.1, no injects needed, OOB, full 2560x1600, LuxMark of 2195.

Code:
MacPro2:~ khe91$ ioreg | grep ATY
    | |   |           | +-o ATY,AMD,RadeonFramebuffer@0  <class AtiFbStub, id 0x10000033c, registered, matched, active, busy 0 (3 ms), retain 8>
    | |   |           | +-o ATY,AMD,RadeonFramebuffer@1  <class AtiFbStub, id 0x10000033d, registered, matched, active, busy 0 (0 ms), retain 8>
    | |   |           | +-o ATY,AMD,RadeonFramebuffer@2  <class AtiFbStub, id 0x10000033e, registered, matched, active, busy 0 (0 ms), retain 8>
    | |   |           | +-o ATY,AMD,RadeonFramebuffer@3  <class AtiFbStub, id 0x10000033f, registered, matched, active, busy 0 (0 ms), retain 8>
    | |   |           | +-o ATY,AMD,RadeonFramebuffer@4  <class AtiFbStub, id 0x100000340, registered, matched, active, busy 0 (0 ms), retain 8>


But if I add a screen via DP or only connect one screen with DP then OSX reboots right away on graphic init.

So I started with Clover ATI Graphic Inject Yes.
Same reboots on graphic init.

After a while I connected a third screen to the DVI-SL port.
From then on 10.9.2. boot to the Workspace.

Clover defaults to the Futomaki framebuffer, with that fb DP is working, DVI-DL no picture, LuxMark 2191.

Then I tested all the framebuffers:

Code:
Chutoro, Ebi, Gari: DP not working, DVI-DL max resolution 1280x800.

IkuraS, KaniS, MaguroS: DP working, DVI-DL max resolution 1280x800, LuxMark 1355
Junsai: DP working, DVI-DL max resolution 1280x800, LuxMark 2183

DashimakiS,OPM: DP not working, DVI-DL not working, DVI ok

Hamachi, Aji: DP working, DVI-DL not working, DVI gives VGA signals, LuxMark 2201

Buri: no screen on any connector working


best result seams Junsai LuxMark ok, DP is working, but just 1280x800 on the DVI-DL port.

Code:
MacPro2:~ khe91$ ioreg | grep ATY
    | |   |           | +-o ATY,Junsai@0  <class AtiFbStub, id 0x100000304, registered, matched, active, busy 0 (11 ms), retain 8>
    | |   |           | +-o ATY,Junsai@1  <class AtiFbStub, id 0x100000305, registered, matched, active, busy 0 (0 ms), retain 8>
    | |   |           | +-o ATY,Junsai@2  <class AtiFbStub, id 0x100000306, registered, matched, active, busy 0 (0 ms), retain 8>
    | |   |           | +-o ATY,Junsai@3  <class AtiFbStub, id 0x100000307, registered, matched, active, busy 0 (0 ms), retain 8>
    | |   |           | +-o ATY,Junsai@4  <class AtiFbStub, id 0x100000308, registered, matched, active, busy 0 (0 ms), retain 8>

I tried iMac14,2 and MacPro6,1 smbios, PCIRoot=1 and PCIRoot=0, Clover Duallink 0 and 1.

What else could I try to get full 2560x1600 on the DVI-DL port like in 10.9.1. ?
Is there a DSDT or SSDT injection for the 7970 and 10.9.2. ?
ati-personality.pl or fbATI.php don't work anymore with 10.9.2. so I can't get the AMD7000Controller.kext framebuffers and ports.

Thanks,

khe91
« Last Edit: February 21, 2014, 11:52:19 AM by khe91 » Logged
netkas
Administrator
Hero Member
*****
Offline Offline

Posts: 835



« Reply #1 on: February 15, 2014, 08:06:20 PM »

That reboot means the kernel panic have happened.

You need to get content of that panic screen somehow, not sure how to do it with mavericks. Just my 2 cents.
Logged
omni
Full Member
***
Offline Offline

Posts: 132


WWW
« Reply #2 on: February 15, 2014, 08:32:07 PM »

Try setting debug=0x100 or debug=0x144 as a kernel parameter during boot, it should stop and wait for the remote debugger.
Logged
khe91
Not Newbie
*
Offline Offline

Posts: 5


« Reply #3 on: February 16, 2014, 01:00:02 PM »

I tried debug=0x100 and 0x144, it don't reboots right away but there is no kernel panic message on the screen.

Found something else:
If I use the HD4600 as first display then 7970 works also OOB in 10.9.2. without any injections from Clover.
If I connect a DP screen to the 7970 then the reboots are back.
So at the moment my 7970 is like the second D700 in MacPro6.1. First graphic card is HD4600 with 2 screens 2560x1600 via DP and the 7970 doing all the OpenCL computing.

I believe it's all about the display connector settings in the new AMD7000Controller.kext of 10.9.2.
Also tried to use 10.9.1. AMD7000Controller.kext with 10.9.2. but then OSX don't recognize the 7970 at all.
But I can't patch AMD7000Controller.kext of 10.9.2. because bcc24 ati-personality.pl script don't works yet with 10.9.2.
( http://www.insanelymac.com/forum/topic/249642-editing-custom-personalities-for-ati-radeon-hd45xxx/ )


Logged
khe91
Not Newbie
*
Offline Offline

Posts: 5


« Reply #4 on: February 21, 2014, 11:47:45 AM »

With 10.9.2. Apple changed the ConnectorInfos inside of ATI7000Controller.kext, so the patches from version <10.9.2. will not work anymore.
Comparing the output of ati-personality.pl of 10.9.1. and 10.9.2. (release 62) shows that Apple changed exactly the 2 unknown bytes, after the Feature bytes and before the Transmitter byte.
From original MacPro6,1 IOReg dumps its known that Apple using IkuraS, KaniS and MaguroS for their D300/D500/D700.
Maybe the first unknown byte is just a counter for ports, since it's 01 02 03 04 05 06 for the 6 ports in this 3 personalities.
I guess Apple don't care about personalities that they don't use, thats why this first unknown byte is 00 for other personalities with less then 6 ports.
The second unknown byte changed from 00 to 07 for IkuraS, KaniS and MaguroS in 10.9.2. so it must be important for MacPro6,1.
Apple also changed this second unknown byte from 00 to 01 for other personalities with 6 DP ports Junsai and OPM.
 
Somebody knows where to find the ConnectorInfos for the default personality AMD,RadeonFramebuffer ?
Because for me AMD,RadeonFramebuffer don't have any problems with ports in 10.9.1. It always detects the correct ports (any combinations of DVI,DVI-DL,DP, up to 5 displays) and gives the correct resolutions. It also gives the highest LuxMark for my card. So it would be interesting how that ConnectorInfo looks like.
Logged
blacksheep
Sr. Member
****
Offline Offline

Posts: 337


« Reply #5 on: February 22, 2014, 09:38:59 AM »

I guess Apple don't care about personalities that they don't use, thats why this first unknown byte is 00 for other personalities with less then 6 ports.
The second unknown byte changed from 00 to 07 for IkuraS, KaniS and MaguroS in 10.9.2. so it must be important for MacPro6,1.
Apple also changed this second unknown byte from 00 to 01 for other personalities with 6 DP ports Junsai and OPM.

Seems they care about "unused" personalities as well. They changed second unknown byte for DP in Aji, Chutoro, Dashimaki, Ebi, Gari, Futomaki and Hamachi.
Tested flashed 7770 with C62, and changed byte does not seem to have any impact on mDP - it works as in 10.8 (with Dashimaki, which also has this byte changed to 01 for DVI).
Tried with three screens connected: DVI, DP and DVI via mDP -> active DVI adapter.

Regarding default ATY framebuffer, I believe that it uses kind of "auto detection and adjust", i.e. reads and uses connector config from card's ROM. Correct me if I'm wrong, but that seems to be a logical explanation why all ports always work with it.
« Last Edit: February 22, 2014, 09:45:48 AM by blacksheep » Logged
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines Valid XHTML 1.0! Valid CSS!