Jump to content
Vlada.

[HOW TO] Modification of AMD FB + Clover injection

392 posts in this topic

Recommended Posts

So as you can tell I have been doing alot of research and trying different things and I still can not get my R9 290x 8Gb DP and HDMI to work while using the Baladi framebuffer, below is what I have so far any suggestions?

 

282X08E0.OU4:

 

C67101 Hawaii XT A0 GDDR5 8GB 128Mx32 300e/150m                             

 

Subsystem Vendor ID: 174b

       Subsystem ID: e282

Object Header Structure Size: 271

Connector Object Table Offset: 3e

Router Object Table Offset: 0

Encoder Object Table Offset: ce

Display Path Table Offset: 12

 

Connector Object Id [19] which is [DISPLAY_PORT] (10)

encoder obj id [0x21] 0x90 which is [iNTERNAL_UNIPHY2 (osx txmit 0x12 [duallink 0x2] enc 0x4)] linkb: false senseid: 0x1

 

Connector Object Id [12] 0x92 which is [HDMI_TYPE_A] (11)

encoder obj id [0x21] 0x93 which is [iNTERNAL_UNIPHY2 (osx txmit 0x22 [duallink 0x2] enc 0x5)] linkb: true senseid: 0x3

 

Connector Object Id [4] which is [DVI_D] (3)

encoder obj id [0x20] 0x95 which is [iNTERNAL_UNIPHY1 (osx txmit 0x11 [duallink 0x1] enc 0x2)] linkb: false senseid: 0x4

 

Connector Object Id [4] which is [DVI_D] (3)

encoder obj id [0x1e] which is [iNTERNAL_UNIPHY (osx txmit 0x10 [duallink 0x0] enc 0x0)] linkb: false senseid: 0x6

 

PCI ID: 1002:67b0

Connector at index 0

Type [@offset 42502]: DisplayPort (10)

Encoder [@offset 42506]: INTERNAL_UNIPHY2 (0x21)

i2cid [@offset 42594]: 0x90, OSX senseid: 0x1

Connector at index 1

Type [@offset 42512]: HDMI-A (11)

Encoder [@offset 42516]: INTERNAL_UNIPHY2 (0x21)

i2cid [@offset 42621]: 0x92, OSX senseid: 0x3

Connector at index 2

Type [@offset 42522]: DVI-D (3)

Encoder [@offset 42526]: INTERNAL_UNIPHY1 (0x20)

i2cid [@offset 42648]: 0x93, OSX senseid: 0x4

Connector at index 3

Type [@offset 42532]: DVI-D (3)

Encoder [@offset 42536]: INTERNAL_UNIPHY (0x1e)

i2cid [@offset 42675]: 0x95, OSX senseid: 0x6

 

ConnectorType:

Connector Type DVIDL 0 × 00000004 = 04 00 00 00 Note: Dual Link DVI

Connector Type DP = 0 × 00000400 00 04 00 00

Connector Type HDMI 0 × 00000800 = 00 08 00 00

Connector Type DVISL 0 × 00000200 = 00 02 00 00 Note: Single Link DVI

ATY, ControlFlags:

Connector Type DP 04 03 00 00

Connector Type HDMI 04 02 00 00

Connector Type DVIDL 14 02 00 00

Connector Type_DVISL 04 02 00 00

Features:

1st Pair:

0 × 0200: DVI 0x00 = 00

0 × 0400: Display Port 0 × 00 = 00

0 × 0800: HDMI 0 × 00 = 00

Second Pair:

Use Internal * 0 × 01 = 01

Use RGB YUV On 0 × 04 = 04

Use Backlight * 0 × 08 = 08

Backlight Inverted 0 × 10 = 10

Use Clamshell 0 × 20 = 20

Third Pair:

01 = first active connector

02 = second active connector

03 = third active connector

etc. ...

 

 

Kext /System/Library/Extensions/AMD8000Controller.kext/Contents/MacOS/AMD8000Controller

Personality: Exmoor

ConnectorInfo count in decimal: 4

Disk offset in decimal 1685792

02  00  00  00  00  01  00  00  00  01  01  03  22  05  02  02

02  00  00  00  00  01  00  00  00  01  02  03  12  04  01  01

00  04  00  00  04  03  00  00  00  01  03  07  11  02  03  03

00  04  00  00  04  03  00  00  00  01  04  07  21  03  04  04

 

Personality: Baladi

ConnectorInfo count in decimal: 6

Disk offset in decimal 1686112

00  04  00  00  04  03  00  00  00  01  03  00  12  04  03  03

00  04  00  00  04  03  00  00  00  01  01  00  11  02  01  01

00  04  00  00  04  03  00  00  00  01  02  00  21  03  02  02

00  04  00  00  04  03  00  00  00  01  04  00  22  05  04  04

00  04  00  00  04  03  00  00  00  01  05  00  10  00  05  05

00  04  00  00  04  03  00  00  00  01  06  00  20  01  06  06

 

01 [DISPLAY_PORT] 

redsock_bios_decoder :

enc obj 0x21 transmitter 0x12 dual link 0x2 enc 0x4

radeon_bios_decode:

Connector at index 0

Type [@offset 43522]: DisplayPort (10)

Encoder [@offset 43526]: INTERNAL_UNIPHY2 (0x21) 

i2cid [@offset 43632]: 0x90, OSX senseid: 0x1

 

12 04 01 01

 

02 [HDMI_TYPE_A]

redsock_bios_decoder:

encoder obj 0x21 txmit 0x22 duallink 0x2 enc 0x5

radeon_bios_decoder:

Connector at index 1

Type [@offset 42512]: HDMI-A (11)

Encoder [@offset 42516]: INTERNAL_UNIPHY2 (0x21)

i2cid [@offset 42621]: 0x92, OSX senseid: 0x3

 

22 05 02 03

 

03 [DVI_D]

redsock_bios_decoder:

encoder obj id 0x20 txmit 0x11 duallink 0x1 enc 0x2

radeon_bios_decoder:

Connector at index 2

Type [@offset 42522]: DVI-D (3)

Encoder [@offset 42526]: INTERNAL_UNIPHY1 (0x20)

i2cid [@offset 42648]: 0x93, OSX senseid: 0x4

 

11  02  03  04

 

04 [DVI_D]

redsock_bios_decoder:

encoder obj id 0x1e txmit 0x10 duallink 0x0 enc 0x0

radeon_bios_decoder:

Connector at index 3

Type [@offset 42532]: DVI-D (3)

Encoder [@offset 42536]: INTERNAL_UNIPHY (0x1e)

i2cid [@offset 42675]: 0x95, OSX senseid: 0x6

 

10  00  04  06

 

Original Output:

00  04  00  00  04  03  00  00  00  01  03  00  12  04  03  03

00  04  00  00  04  03  00  00  00  01  01  00  11  02  01  01

00  04  00  00  04  03  00  00  00  01  02  00  21  03  02  02

00  04  00  00  04  03  00  00  00  01  04  00  22  05  04  04

00  04  00  00  04  03  00  00  00  01  05  00  10  00  05  05

00  04  00  00  04  03  00  00  00  01  06  00  20  01  06  06

 

Edited Output:

00  04  00  00  04  03  00  00  00  01  00  00  12  04  01  01 <—Displayport

00  08  00  00  04  02  00  00  00  01  00  00  22  05  02  03 <—HDMI

04  00  00  00  14  02  00  00  00  01  00  00  11  02  03  04 <—DVI-D

04  00  00  00  14  02  00  00  00  01  00  00  10  00  04  06 <—DVI2

Share this post


Link to post
Share on other sites
Advertisement

There is only 2 framebuffers in the 10.10.3 AMD8000Controller.kext Exmour and Baladi, the info.plist has the device id already in it, so can't use any other framebuffers besides the one in AMD8000Controller.kext

Share this post


Link to post
Share on other sites

Hi Vlada, can u check my edited kext :( i cannot boot into yosemite with HDMI. Thanks so much :( My VGA's Asus R9 270 (ID: 0x6811)

 

FB Futomaki

Original

00040000040300000001010112040401

00040000040300000001020122050502

04000000140200000001030000000606

00080000040200000001040011020103

My Patch (I dont know right or wrong??)

00040000040300000001000012040101

00020000040200000001000010000306

04000000140200000001000011020505

00080000040200000001000022050402

 

Redsock

Subsystem Vendor ID: 1043

       Subsystem ID: 48d

Object Header Structure Size: 355

Connector Object Table Offset: 48

Router Object Table Offset: 0

Encoder Object Table Offset: fd

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 [12] which is [HDMI_TYPE_A]

         encoder obj id [0x21] which is [iNTERNAL_UNIPHY2 (osx txmit 0x22 [duallink 0x2] enc 0x5)] linkb: true

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 [4] which is [DVI_D]

         encoder obj id [0x20] which is [iNTERNAL_UNIPHY1 (osx txmit 0x11 [duallink 0x1] enc 0x2)] linkb: false

Radeon

ATOM BIOS Rom:

         SubsystemVendorID: 0x1043 SubsystemID: 0x048d

         IOBaseAddress: 0x0000

         Filename: as03oc.bin

         BIOS Bootup Message:

6811HB.15.39.0.1.AS03                                                      

PCI ID: 1002:6811

Connector at index 0

         Type [@offset 43540]: DisplayPort (10)

         Encoder [@offset 43544]: INTERNAL_UNIPHY2 (0x21)

         i2cid [@offset 43650]: 0x90, OSX senseid: 0x1

Connector at index 1

         Type [@offset 43550]: HDMI-A (11)

         Encoder [@offset 43554]: INTERNAL_UNIPHY2 (0x21)

         i2cid [@offset 43677]: 0x91, OSX senseid: 0x2

Connector at index 2

         Type [@offset 43560]: DVI-I (2)

         Encoder [@offset 43564]: INTERNAL_UNIPHY (0x1e)

         i2cid [@offset 43714]: 0x95, OSX senseid: 0x6

Connector at index 3

         Type [@offset 43570]: DVI-I (2)

         Encoder [@offset 43574]: INTERNAL_KLDSCP_DAC1 (0x15)

         i2cid [@offset 43714]: 0x95, OSX senseid: 0x6

Connector at index 4

         Type [@offset 43580]: DVI-D (3)

         Encoder [@offset 43584]: INTERNAL_UNIPHY1 (0x20)

         i2cid [@offset 43741]: 0x94, OSX senseid: 0x5

Share this post


Link to post
Share on other sites

Great and very comprehensive tutorial !!

 

Many thanks, Vlada.

 

 

Here is for an old but not expansive Sapphire HD6450 1Gb (10.10.2):

 

01 HDMI-A

redsock_bios_decoder :

enc obj 0x20 transmitter 0x21 dual link 0x1 enc 0x3

 

radeon_bios_decode:

Connector at index 0

Type [@offset 44526]: HDMI-A (11)

Encoder [@offset 44530]: INTERNAL_UNIPHY1 (0x20)

i2cid [@offset 44600]: 0x91, OSX senseid: 0x2

 

Code construction: 21 03 01 02

 

 

02 DVI-D

redsock_bios_decoder :

enc obj 0x1e transmitter 0x10 dual link 0x0 enc 0x0

 

radeon_bios_decode:

Connector at index 1

Type [@offset 44536]: DVI-D (3)

Encoder [@offset 44540]: INTERNAL_UNIPHY (0x1e)

i2cid [@offset 44627]: 0x93, OSX senseid: 0x4

 

Code construction: 10 00 02 04

 

 

03 VGA

redsock_bios_decoder :

enc obj 0x15 transmitter 0x00  enc 0x10?

 

radeon_bios_decode:

Connector at index 2

Type [@offset 44546]: VGA (1)

Encoder [@offset 44550]: INTERNAL_KLDSCP_DAC1 (0x15)

i2cid [@offset 44654]: 0x90, OSX senseid: 0x1

 

Code construction: 00 10 03 01

 

 

Duckweed original (HDMI OK - no DVI)

0000000    00  04  00  00  04  03  00  00  00  01  00  00  12  04  04  01 /DP

0000010    00  04  00  00  04  03  00  00  00  01  00  00  22  05  05  02 /DP

0000020    00  08  00  00  04  02  00  00  00  01  00  00  11  02  03  04 /HDMI

0000030    00  02  00  00  14  02  00  00  00  01  00  00  00  00  06  05 /DVI SL

Duckweed modded (DVI OK - no HDMI)

0000000    04  00  00  00  14  02  00  00  00  01  00  00  10  00  02  04 /DVI DL

0000010    00  04  00  00  04  03  00  00  00  01  00  00  22  05  05  02

0000020    00  08  00  00  04  02  00  00  00  01  00  00  21  03  01  02 /HDMI

0000030    00  02  00  00  14  02  00  00  00  01  00  00  00  00  06  05

Duckweed modded and swap line 2-3 (DVI & HDMI OK)

0000000    04  00  00  00  14  02  00  00  00  01  00  00  10  00  02  04 /DVI DL

0000010    00  08  00  00  04  02  00  00  00  01  00  00  21  03  01  02 /HDMI

0000020    00  04  00  00  04  03  00  00  00  01  00  00  22  05  05  02

0000030    00  02  00  00  14  02  00  00  00  01  00  00  00  00  06  05

Share this post


Link to post
Share on other sites

Great and very comprehensive tutorial !!

 

Many thanks, Vlada.

 

 

Here is for an old but not expansive Sapphire HD6450 1Gb (10.10.2):

 

01 HDMI-A

redsock_bios_decoder :

enc obj 0x20 transmitter 0x21 dual link 0x1 enc 0x3

 

radeon_bios_decode:

Connector at index 0

Type [@offset 44526]: HDMI-A (11)

Encoder [@offset 44530]: INTERNAL_UNIPHY1 (0x20)

i2cid [@offset 44600]: 0x91, OSX senseid: 0x2

 

Code construction: 21 03 01 02

 

 

02 DVI-D

redsock_bios_decoder :

enc obj 0x1e transmitter 0x10 dual link 0x0 enc 0x0

 

radeon_bios_decode:

Connector at index 1

Type [@offset 44536]: DVI-D (3)

Encoder [@offset 44540]: INTERNAL_UNIPHY (0x1e)

i2cid [@offset 44627]: 0x93, OSX senseid: 0x4

 

Code construction: 10 00 02 04

 

 

03 VGA

redsock_bios_decoder :

enc obj 0x15 transmitter 0x00  enc 0x10?

 

radeon_bios_decode:

Connector at index 2

Type [@offset 44546]: VGA (1)

Encoder [@offset 44550]: INTERNAL_KLDSCP_DAC1 (0x15)

i2cid [@offset 44654]: 0x90, OSX senseid: 0x1

 

Code construction: 00 10 03 01

 

 

Duckweed original (HDMI OK - no DVI)

0000000    00  04  00  00  04  03  00  00  00  01  00  00  12  04  04  01 /DP

0000010    00  04  00  00  04  03  00  00  00  01  00  00  22  05  05  02 /DP

0000020    00  08  00  00  04  02  00  00  00  01  00  00  11  02  03  04 /HDMI

0000030    00  02  00  00  14  02  00  00  00  01  00  00  00  00  06  05 /DVI SL

Duckweed modded (DVI OK - no HDMI)

0000000    04  00  00  00  14  02  00  00  00  01  00  00  10  00  02  04 /DVI DL

0000010    00  04  00  00  04  03  00  00  00  01  00  00  22  05  05  02

0000020    00  08  00  00  04  02  00  00  00  01  00  00  21  03  01  02 /HDMI

0000030    00  02  00  00  14  02  00  00  00  01  00  00  00  00  06  05

Duckweed modded and swap line 2-3 (DVI & HDMI OK)

0000000    04  00  00  00  14  02  00  00  00  01  00  00  10  00  02  04 /DVI DL

0000010    00  08  00  00  04  02  00  00  00  01  00  00  21  03  01  02 /HDMI

0000020    00  04  00  00  04  03  00  00  00  01  00  00  22  05  05  02

0000030    00  02  00  00  14  02  00  00  00  01  00  00  00  00  06  05

You should try the below because replacing the areas the sense id matches makes more sense:

 

00  04  00  00  04  03  00  00  00  01  00  00  12  04  04  01 /DP

00  08  00  00  04  02  00  00  00  01  00  00  21  03  01  02 /HDMI

04  00  00  00  14  02  00  00  00  01  00  00  10  00  02  04 /DVI DL

00  02  00  00  14  02  00  00  00  01  00  00  00  00  06  05 /DVI SL

Share this post


Link to post
Share on other sites

Small correction for HDMI.

 

According to the reference material that I was using for this guide, original control flag for HDMI should be 0x0200 or inverted and translated in to FB code it should be 0002.

 

I didn't notice that till now, but It seems that I was forgot to switch 0402 in to 0002 for HDMI control flag in this example. Sorry guys...

Share this post


Link to post
Share on other sites
Hi Vlada.
 
The attachments from the first post are not available to download. Could you reattach them? 
 
All i got when trying to get them is: 
 

Oops! Something went wrong!
 
[#10173]
We could not find the attachment you were attempting to view.

 

 

Edit:

 

I found your post here:

https://www.hackintosh.rs/t/modifikovanje-amd-drajvera-clover-injector/301

and used downloads from that location.

Share this post


Link to post
Share on other sites

Valda, mind taking a look at my post and tell me why my DP isn't working, I have HDMI and both DVIs working but can not get DP working at all

Share this post


Link to post
Share on other sites

Well, everything seems fine in your case, hmm... 
 
It might be important how did you make connectors code order or did you or not inserted specific values in the code which defines activation order (check red marked digits)

 
00 04 00 00 04 03 00 00 00 01 04 01 12 04 01 01 - DP
00 02 00 00 04 02 00 00 00 01 01 01 10 00 03 06 - DVI-I
04 00 00 00 14 02 00 00 00 01 02 00 11 02 05 05 - DVI-D
00 08 00 00 04 02 00 00 00 01 03 00 22 05 02 03 - HDMI


If you switch these values to zero, each connector will be activated automatically, but I think that this also might cause conflicts in certain situations.

 

But that's not all... You should know that some parts in code have alternatives.

 
Per example, for second set of 8 digits (ControlFlags) you can use next values:
 
0×0002 : LVDS   ControlFlag : 0×0040 and 0×0100
0×0004 : DVI    ControlFlag : 0×0016, 0×0014, and 0×214
0×0010 : VGA    ControlFlag : 0×0010 
0×0080 : S-Video ControlFlag : 0×0002
0×0200 : DVI    ControlFlag : 0×0014, 0×0214, and 0×0204
0×0400 : DisplayPort  ControlFlag : 0×0100, 0×0104, 0×0304, 0×0604, and 0×0400 
0×0800 : HDMI  ControlFlag : 0×0200
0×1000 : DVI  ControlFlag : 0×0016
 
The code from here is written inverted in FB code. Per example for DP I was using 0×0304 and in FB code should be 0403. That one should be ok, but just in case you can check others too...
 
And here is reference material for transmitter code:
 
UNIPHY    0×00 = 00
UNIPHY1   0×01 = 01
UNIPHY2   0×02 = 02
DUALLINK  0×00 = 00  = LINKA + LINKB
LINKA     0×10 = 10
LINKB     0×20 = 20
UNIPHYA   0×10 = 10  = UNIPHY:LINKA
UNIPHYB   0×20 = 20  = UNIPHY:LINKB
UNIPHYAB  0×00 = 00  = UNIPHY:DUALLINK
UNIPHYC   0×11 = 11  = UNIPHY1:LINKA
UNIPHYD   0×21 = 21  = UNIPHY1:LINKB
UNIPHYCD  0×01 = 01  = UNIPHY1:DUALLINK
UNIPHYE   0×12 = 12  = UNIPHY2:LINKA
UNIPHYF   0×22 = 22  = UNIPHY2:LINKB
UNIPHYEF  0×02 = 02  = UNIPHY2:DUALLINK
DACA      0×00 = 00
DACB      0×10 = 10
 

You can also try to find additional explanation from rampagedev

 

Hopefully, you will find solution. Good luck!  :)

 

Share this post


Link to post
Share on other sites

I had a perfect 10.10.2 yosemite setup but after this "stupid" 10.10.3 my system dosent work over Display Port (black screen) but system loads. I have AMD r270x. I'm using HDMI now and it work's. I need DP because my DELL u3415w doesnt support 60Hz over HDMI at 3440x1440 :( On 10.10.2 it was working just fine over DVI, HDMI, DP all ports. 

 

So I think they have changed something in ATIConnectorsData. What are the new values? Can i use clover to patch ATIConnectorsData back to ones that work for me in 10.10.2 (default ones were - 00040000040300000001010112040401000400000403000000010201220505020400000014020000000103000000060600080000040200000001040011020103 ... correct??) 

 

So I need to :

<key>ATIConnectorsData</key>
<string>"new values from 10.10.3" - can you tell me please what these are??</string>
<key>ATIConnectorsPatch</key>
<string>00040000040300000001010112040401000400000403000000010201220505020400000014020000000103000000060600080000040200000001040011020103 (orginal values from 10.10.2 becouse DP worked on them no problem with my card)</string>
 
I'm thinking right?? Or better is it possible to patch kext files 10.10.3 to values that worked for me in 10.10.2 ? (but i don't know how to do this:))
 

Share this post


Link to post
Share on other sites

Thx I'll try them all, I didn't think to try the alternatives

 

Here is a IOREG with both DVIs working

https://www.dropbox.com/s/6a0kwzd6o9o2qqo/Henry%E2%80%99s%20iMac.ioreg?dl=0

 

@Pavo

 

I think that you have problem with order.

 

In your case

 

FB Baladi@0 - port-number 0x1

FB Baladi@1 - port-number 0x0

FB Baladi@2 - port-number 0x3

FB Baladi@3 - port-number 0x5

FB Baladi@4 - port-number 0x2

 

In my case

 

FB Futomaki@0 - port-number 0x0

FB Futomaki@1 - port-number 0x1

FB Futomaki@2 - port-number 0x2

FB Futomaki@3 - port-number 0x3

 

You should try to match that...

 

-------------------------------------------------------------------

 

@gonzolak

 

You can translate FB code in to binary patch and basically apply it via terminal.

 

Here is example how:

 

You will need to separate two digits by two and to add in front of them \x. Then just like in Clover you'll need to add original code and modified in the same line...

 

Here is example:

 

Blue / (Find hex)

Red / (Replace hex)

 

binpatch for EAH-6850
 
sudo perl -pi -e 's|\x00\x04\x00\x00\x04\x03\x00\x00\x00\x01\x00\x00\x12\x04\x04\x01\x00\x04\x00\x00\x04\x03\x00\x00\x00\x01\x00\x00\x22\x05\x05\x02\x00\x08\x00\x00\x04\x02\x00\x00\x00\x01\x00\x00\x11\x02\x03\x04\x00\x02\x00\x00\x14\x02\x00\x00\x00\x01\x00\x00\x00\x00\x06\x05|\x00\x04\x00\x00\x04\x03\x00\x00\x00\x01\x00\x00\x12\x04\x04\x01\x00\x08\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x22\x05\x06\x04\x00\x02\x00\x00\x04\x00\x00\x00\x00\x01\x00\x00\x11\x02\x01\x06\x04\x00\x00\x00\x14\x02\x00\x00\x00\x01\x00\x00\x10\x00\x03\x05|g' /System/Library/Extensions/AMD6000Controller.kext/Contents/MacOS/AMD6000Controller
 
 I love hacking, yup!  :yes:

Share this post


Link to post
Share on other sites

 

@Pavo

 

I think that you have problem with order.

 

In your case

 

FB Baladi@0 - port-number 0x1

FB Baladi@1 - port-number 0x0

FB Baladi@2 - port-number 0x3

FB Baladi@3 - port-number 0x5

FB Baladi@4 - port-number 0x2

 

In my case

 

FB Futomaki@0 - port-number 0x0

FB Futomaki@1 - port-number 0x1

FB Futomaki@2 - port-number 0x2

FB Futomaki@3 - port-number 0x3

 

You should try to match that..

I can not figure out how to match that, can you give me and example from this:

 

00080000000200000001020022050203 <—HDMI

00040000040300000001010012040101 <—DisplayPort

00040000040300000001060021030602

04000000140200000001030011020304 <—DVI_D

00040000040300000001050010000505

00020000040200000001040010000406 <—DVI_D

Share this post


Link to post
Share on other sites

You need to rearrange lines in the code for each connector, so that you get for FB@0, port-number 0x0 and IOFBDependentIndex 0x0, for FB@1 it should be 0x1, etc.…

 
Check the example picture
 
post-458468-0-90671800-1428949890_thumb.png
 
I must add that I’m not sure will this help you at the end, but that is something that I was notice that is mismatched in your case…
 
[EDIT]
 
I think it should be something like this:
 
Current:
 
00080000 00020000 00010200 22050203 <—HDMI
00040000 04030000 00010100 12040101 <—DisplayPort
00040000 04030000 00010600 21030602 <—DisplayPort
04000000 14020000 00010300 11020304 <—DVI_D
00040000 04030000 00010500 10000505 <—DisplayPort
00020000 04020000 00010400 10000406 <—DVI_SL
 
Rearranged:
 
00080000 00020000 00010000 22050203 <—HDMI
00040000 04030000 00010000 12040101 <—DisplayPort
00040000 04030000 00010000 10000505 <—DisplayPort
00040000 04030000 00010000 21030602 <—DisplayPort
04000000 14020000 00010000 11020304 <—DVI_D
00020000 04020000 00010000 10000406 <—DVI_SL
 
Or maybe inverted because in my case the proper order is next one:
 
00020000 04020000 00010000 10000306 <—DVI_SL
04000000 14020000 00010000 11020505 <—DVI_D
00080000 00020000 00010000 22050203 <—HDMI
00040000 04030000 00010000 12040101 <—DisplayPort

Share this post


Link to post
Share on other sites

Changing the blue you have highlighted gives nothing but black screens on all ports

Share this post


Link to post
Share on other sites
Hm... I was afraid of that. 

 

Well that was attempt for simplification of this procedure but since it doesn’t work in your case you will have a bit more work to do. Those highlighted numbers are managing order of activation so you should focus on them. They can also affect port-order, or at least that was in my case, so my suggestion would be that you arrange lines in a bit more logical manner, let say: DVI-SL, DVI-D, HDMI, and than DP,s… and then try to match them by using those highlighted numbers (01, 02, 03 etc) 

 

Sure that will take you some time but I don’t see any other option. You can also check during your testing what’s going on with order from IORegistryExplorer. That will probably give you some idea where is the problem and which way you need to go…

Share this post


Link to post
Share on other sites

My patch, vga MSI HD7750 1GB

 

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

00  08  00  00  04  03  00  00  00  01  02  01  22  05  03  05

00  04  00  00  04  02  00  00  00  01  03  00  12  04  01  02

00  04  00  00  04  02  00  00  00  01  04  00  12  04  04  02

 

ATOM BIOS Rom: 

SubsystemVendorID: 0x1462 SubsystemID: 0x2792

IOBaseAddress: 0x0000

Filename: v279-25s.sb 

BIOS Bootup Message: 

113-MSITV279MS.1K0 MSI C445 VERDE PRO 1G GDDR5 64MX32                         

PCI ID: 1002:683f

Connector at index 0

Type [@offset 43654]: DisplayPort (10)

Encoder [@offset 43658]: INTERNAL_UNIPHY2 (0x21)

i2cid [@offset 43746]: 0x91, OSX senseid: 0x2

Connector at index 1

Type [@offset 43664]: HDMI-A (11)

Encoder [@offset 43668]: INTERNAL_UNIPHY2 (0x21)

i2cid [@offset 43773]: 0x94, OSX senseid: 0x5

Connector at index 2

Type [@offset 43674]: DVI-I (2)

Encoder [@offset 43678]: INTERNAL_UNIPHY (0x1e)

i2cid [@offset 43810]: 0x93, OSX senseid: 0x4

Connector at index 3

Type [@offset 43684]: DVI-I (2)

 

Encoder [@offset 43688]: INTERNAL_KL

 
113-MSITV279MS.1K0 MSI C445 VERDE PRO 1G GDDR5 64MX32                         

Subsystem Vendor ID: 1462

       Subsystem ID: 2792

Object Header Structure Size: 296

Connector Object Table Offset: 3e

Router Object Table Offset: 0

Encoder Object Table Offset: d0

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 [12] which is [HDMI_TYPE_A]

encoder obj id [0x21] which is [iNTERNAL_UNIPHY2 (osx txmit 0x22 [duallink 0x2] enc 0x5)] linkb: true

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

 
Boot with ATI Injector = No boot ok but Graphic is HD 7xxx, boot with ATI Injector = Yes boot ok Graphic is HD 7750 but restart monitor no signal.Please help me ! I use displayport cable.Thanks

Share this post


Link to post
Share on other sites

I am a newbie in hackintosh, my graphic card is Asus HD7870-DC2-2GD

 

I followed this guide to modify AMD FB and works great!!

 

my result is as follow for the reference of any one use this card.

 

01 [Display_Port]

encoder obj id [0x21] which is [iNTERNAL_UNIPHY2 (osx txmit 0x12 [duallink 0x2] enc 0x4)] linkb: false

Connector at index 0
    Type [@offset 45610]: DisplayPort (10)
    Encoder [@offset 45614]: INTERNAL_UNIPHY2 (0x21)
    i2cid [@offset 45720]: 0x90, OSX senseid: 0x1

12 04 01 01

02 [Display_Port]

encoder obj id [0x21] which is [iNTERNAL_UNIPHY2 (osx txmit 0x22 [duallink 0x2] enc 0x5)] linkb: true

Connector at index 1
    Type [@offset 45620]: DisplayPort (10)
    Encoder [@offset 45624]: INTERNAL_UNIPHY2 (0x21)
    i2cid [@offset 45747]: 0x91, OSX senseid: 0x2

22 05 02 02

03 [HDMI-A]

encoder obj id [0x20] which is [iNTERNAL_UNIPHY1 (osx txmit 0x11 [duallink 0x1] enc 0x2)] linkb: false

Connector at index 2
    Type [@offset 45630]: HDMI-A (11)
    Encoder [@offset 45634]: INTERNAL_UNIPHY1 (0x20)
    i2cid [@offset 45774]: 0x92, OSX senseid: 0x3

11 02 03 03

04 [DVI-I]

encoder obj id [0x1e] which is [iNTERNAL_UNIPHY (osx txmit 0x10 [duallink 0x0] enc 0x0)] linkb: false

Connector at index 3
    Type [@offset 45640]: DVI-I (2)
    Encoder [@offset 45644]: INTERNAL_UNIPHY (0x1e)
    i2cid [@offset 45811]: 0x95, OSX senseid: 0x6

10 00 04 06


05 [DVI-I]

encoder obj id [0x15] which is [iNTERNAL_KLDSCP_DAC1 (osx txmit 0x00 enc 0x10?)] linkb: false

Connector at index 4
    Type [@offset 45650]: DVI-I (2)
    Encoder [@offset 45654]: INTERNAL_KLDSCP_DAC1 (0x15)
    i2cid [@offset 45811]: 0x95, OSX senseid: 0x6

00 10 05 06

-----------------------------------------------------------------------

Personality: Futomaki 10.9.2
ConnectorInfo count in decimal: 4
Disk offset in decimal 811280

00 04 00 00 04 03 00 00 00 01 01 01 12 04 04 01  DP
             
00 04 00 00 04 03 00 00 00 01 02 01 22 05 05 02  DP

04 00 00 00 14 02 00 00 00 01 03 00 00 00 06 06  DVI

00 08 00 00 04 02 00 00 00 01 04 00 11 02 01 03  HDMI

------------------------------------------------------------------------

00 04 00 00 04 03 00 00 00 01 03 00 12 04 01 01  DP
                            
00 04 00 00 04 03 00 00 00 01 04 00 22 05 02 02  DP
                            
04 00 00 00 14 02 00 00 00 01 01 00 10 00 04 06  DVI
                            
00 08 00 00 00 02 00 00 00 01 02 00 11 02 03 03  HDMI
                            
-------------------------------------------------------------------------

 

I use DVI as the main output to my monitor, so I made the order as DVI 1st and HDMI 2nd, rests are disport ports, you may change them to whatever you want.

 

clover bootloader

 

ATI inject / load VBios / FBName Futomaki

 

Kext patch:

 

AMDAMD7000Controller

 

Original :

00040000040300000001010112040401
00040000040300000001020122050502
04000000140200000001030000000606
00080000040200000001040011020103


Patched :

00040000040300000001030012040101
00040000040300000001040022050202
04000000140200000001010010000406
00080000000200000001020011020303

 

My graphic card was displayed AMD 7xxx series, now display correctly to AMD 7870 series...

 

Vlada, thanks for this very useful guide!!

 

 

Share this post


Link to post
Share on other sites

Hey Vlada, 

 

because of the forum crash I can't download any of your files. Could you please upload them somewhere else?

I just upgraded from a Radeon HD 5770 that worked out of the box, unfortunately my new card does not :(

 

Nevermind. I got the files when I googled the filenames and found them on another site where you posted them as well.

Thank you for this well written How To.

Share this post


Link to post
Share on other sites

Hi, 

 

are there already news about the R9 290x?

I would be great to hear that this card is running now with more than only on display attached to it. 

 

Happy greetings,

 

Werner

Share this post


Link to post
Share on other sites

Is this process still relevant for an r9 290 (non-x)?  I got the card working with a single (DVI) Monitor connected, using only FakeID of the 290x (0x67B11002) in clover. only issues are: 

 

Flashing screen on boot - have to unplug and re-plug monitor on startup - very annoying with the way my desk is set up.

Can't have a 2nd screen plugged in. Again very inconvenient as I like to leave my TV plugged in (HDMI) for gaming in windows. 

 

I'm hoping getting my connectors patch data can resolve this issue?

Share this post


Link to post
Share on other sites

Hi, 

 

are there already news about the R9 290x?

I would be great to hear that this card is running now with more than only on display attached to it. 

 

Happy greetings,

 

Werner

I am using 290X with 3 monitors using both DVIs and HDMI

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By twikoffin
      Hello. My hardware is:
      AMD Athlon X2 7750 dual-core
      Gigabyte NVIDIA 8400GS 512MB ( [VGA] ,HDMI,DVI)
      Motherboard Gigabyte based on NFORCE without AHCI support (only IDE)
      I have successfully installed Mac OS Yosemite, Mavericks and El Capitan with AppleNFORCEATA.kext
      But I can't use it with Mac OS 10.8, don't know why, it just gives error and my internal HDD's are not appearing in Disk Utility.

       
         
    • By kamyar1979
      I have bought a 2nd hand AMD Radeon 7750 to fix my Mojave installation problems. Although the Vendor/Device Id is in AMD7000Controller.Kext, I get a black screen and with some changes a yellow screen. I can not find any useful information to fix that. All information are for High Sierra and older macOS versions. Is there any fix to resolve that? What if I buy an RX 650 for example?
    • By macinsane
      This is bothering me for a long time now: Why does Apple deliberately disables the the RX4xx, RX5xx capabilities to hardware encode HEVC and is using Intel Quicksync instead? Is it to make the iMacPro look better than it is? I stumbled over a thread at tony-mac where people are going a totally different road for Radeon graphics. Instead of hassling around with getting Quicksync to work, they proposed to activate the AMD hardware renderer for Polaris GPU's. I tried it out and it works...somewhat
       
      I used a dummy kext from that tomato thread and edited it, so that it enables the AMDU7V4 IOGVACodec like on Vega cards, switched to iMacPro1,1 SMBIOS from iMac18,3, disabled the IGPU and the results were astonishing:
      My 3:34min 4k50p film was rendered by FCP with HEVC in 2:34 minutes. Nearly half the time than with Quicksync! With the iMac18 SMBIOS and the "help" of Intel Quicksync it took FCP 4:41 minutes to get it done!
       
      The problem is: As soon as the "wrong" IOGVACodec is enabled H.264 encoding leads to Mojave crashing at once (be it FCP, QuickTime or Videoproc). Watching H264 material is fine, though. 
       
      If anyone has any idea how to handle this, I would be very grateful. I would even accept Mojave using software encoding for H264 if I could keep this amazing speeds on HEVC!
       
      BTW: Without IGPU on iMacPro1,1 SMBIOS no problem with DRM or iTunes, no need for Whatevergreen or Shiki. That is a bonus
      Ellesmere.kext.zip
    • By Ardit
      Possiedo questo Acer è vorrei sapere se secondo voi è possibile installare Mac OS high sierra partizionando un hdd e mantere anche Windows. Premetto che ne capisco poco. 
      Processore A9 9420 Scheda video condivisa Radeon R5. Se volete altri dettagli chiedetemi perché non so cosa altro aggiungere. 
    • By macinsane
      Mojave (and maybe High Sierra 10.13.6) on Asrock H370M-ITX/ac and getting RX560 or RX580 to work with Intel graphics for full hardware acceleration
       
      Components used:
       
      Core i7 8700, UHD 630
      Gigabyte Radeon RX560
      Wifi/BT BCM943602BAED (DW1830) M.2
      Sapphire Nitro RX 580
      Samsung PM961 NVMe SSD
       
      *This guide requires you to know the basics, meaning how to create a macOS install drive, installing and using Clover. There are great beginners guides out there! As always you need at least FakeSMC to boot, every other kext I’ve used is mentioned in the guide. For Mojave beta you need to be enlisted with your Apple-ID in Apple’s beta programme. What is described here may work for High Sierra 10.13.6, but I doubt it to be reliable. Even in early beta status (PB3) Mojave runs much more stable and smoother than High Sierra ever did for me.* 
       
      *UPDATE Mojave final*
      For the final release of Mojave you can use my attached Clover folder as a reference. If you don't have a Radeon RX 580 installed or you prefer WhatEverGreen just use the DSDT_no_graphics.aml and rename it to DSDT.aml. You need to have updated to BIOS V3.00 to use it.  
       
      *UPDATE*
      I've updated to BIOS Revision 3.00 which seems to work fine in contrast to 1.50. Already compiled a new DSDT and uploaded it alongside a new config.plist. You can use both if you like. If you don't use a RX 580 you need to edit the PEG0-PEGP section in the DSDT to adjust it to your graphics hardware. With this DSDT and config in place you'll only need FakeSMC, IntelMausiEthernet, USBinjectall plus XHCI-300-Injector, Lilu plus AppleALC for Sound. You can add Shiki for iTunes DRM playback if you like, I've uploaded the latest version as well. Avoid Whatevergreen at this time.
       
      UEFI-BIOS settings:
       
      The board comes with BIOS version 1.20, there is an update 1.50 on the Asrock website. Usually it is good to stay updated but in this case I’ll recommend to stay on 1.20, because the 1.50 version seems to be unstable and I had restarts upon wake and things like that I couldn’t get fixed even with dsdt patches. So I just downgraded to 1.20 which runs fine.
      Settings needed: Just the usual. Disable fast boot and security boot (everything Windows-related), disable vt-d and enable XHCI hand-off. Activate multi monitor support and set VRAM to 64MB to activate the Intel IGPU. From what I’ve read most people recommend 128MB but I find the 64MB setting to be more reliable, getting artifacts with settings below or above 64MB. 128MB may be needed for 4k support, though. *Update* BIOS V 3.00 with Mojave final release works fine with 128MB. As for nVidia users: You may have to disable the Intel graphics. I’m using an AMD card and that is the brand to go these days since Apple decided to work with AMD
       
      Clover and power management:
       
      I recommend upgrading to 4586. It seems that Aptiomemoryfix is now working with H370 chipsets. I stayed on OsxAptiomemoryfix2 together with Emuvariable and it works. Feel free to experiment. *Update* Now using OsxAptioV3.  
      For power management with your CoffeeLake cpu you can just tick plugin type within Clover or compile a ssdt with Pikeralphas script. Mojave reports my cpu correctly as Core i7 since PB3, before that it is just “Unknown” but that is just cosmetic. 
       
      Graphics:
       
      *UPDATE*
      Whatevergreen 1.2.3 now supports Displayport on Nitro RX580. Still recommend DSDT or SSDT port activation instead as it runs more reliable and faster than WhatEverGreen.
       
      *UPDATE*
      I updated to PB4/DP5 and switched to a Sapphire Nitro RX 580. You don't need to spoof Kabylake anymore, SMBIOS 18,x now works and can use my attached DSDT_RX580 for your convenience! You'll need it for displayport to work as primary display or else you get black screen on boot and can use only HDMI. Problems are the same as written below in the graphics section. If you need iTunes you absolutely need to keep a copy of the latest Shiki that is available, because it is discontinued. The newest WhatEverGreen-Fix (1.2.0/1.2.1) does not work! If you want to use Final Cut and don't need iTunes just stay away from Shiki or Whatevergreen. 
       
       
      This is the worst part. Getting the Radeon to run correctly alongside the Intel graphics took me weeks to figure out. 
       
      While RX570 and 580 run out of the box in most cases, the RX560 models often do not or at least not correctly. Apple even banned them from eGPU use. For my approach you cannot use “Whatevergreen.kext”, it simply didn’t work for me the way I needed it. Instead I added some fixes to my DSDT to set the correct number of ports used (DP, HDMI, DVI) and tell macOS to use the correct frambuffer. For those who are not into dsdt editing I added my DSDT, look at the “PEGP” section how it is done. This works for the RX560 using the “Acre” framebuffer, you can replace it with “Radeon”, that works too. Other cards need a different framebuffer and a different number of ports. You can do it!   BTW: Do not buy this Gigabytecard!!! It has some weird VBIOS on it, which caused me nightmares before I got the card to work! Buy a Sapphire card instead, they are used by Apple too.   
       
      To get full hardware acceleration for encoding videos you have to have the Intel graphics enabled alongside your AMD card. Problem is, you cannot have it running simply as a second graphics card but you’ll need to “hide” it, means telling macOS that it doesn’t have any display connectors. Otherwise you’ll have screen artifacts or in the worst case just constant crashes. This can be done by adding a certain ig-platform-id in Clover. If you use 59120003 the Intel graphics will not show up in system profiler but it is there. You can check it with iStats or HWMonitor or look if the Kaby Lake graphics kexts are loaded.  This ID makes the CoffeeLake UHD 630 to be recognized as a Kaby Lake gpu that has no display ports, is just used as a helper card.
       
      You’ll need it as a helper card for video encoding. That is what Intel graphics are used for in Macs, to support video encoding on the hardware side. You can check if hardware encoding is supposedly enabled by using MacX Video Converter Pro and VDADecoderChecker. If both say “yes” and “fully supported” this is a good start. But despite the widespread belief this doesn’t mean everything is set correctly! You now have to find out, how to get both cards working together. This is the moment where you have to choose between work and fun: Are you using FinalCut Pro for video editing or are you planning to use iTunes for entertainment? Up until this day (Mojave PB3 PB4/DP5, High Sierra 10.13.6) you cannot have both working correctly! I’ll show you how it is done both ways. 
       
      The best settings for Final Cut:
       
      Use the DSDT I’ve added with the respective AMD settings for the RX560 or modify them for your graphics card.
       
      Use SMBIOS for iMac17,1 (14,2 does work but picture over DP port is ugly, iMac 18,1/2/3 do not work *Since Mojave PB4 they do work at least for RX580*) in Clover.
       
      Have AppleIntelKBLGraphicsFramebufferInjector_3e9x.kextin your Clover/kexts/Other folder.
       
      Until Mojave PB2 (may work on High Sierra 10.13.6):
       
      Fake-ID 3E928086 plus ig-platform-id 59120003
       
      These are the correct setting when installing Mojave (usually you will start with PB1 as the full installer).
       
      For Mojave PB3 and higher:
       
      Fake-ID 59128086 plus ig-platform-id 59120003
       
      After upgrading to PB3 you will get a black screen with 3E92 fake id because PB3 introduces Coffee Lake kexts and macOS will use these kexts instead but that doesn’t work with our ig-platform-id. So you can download the update to PB3 but before installing it you’ll need to change the fake-id to a usual Kaby Lake id. While this didn’t work in High Sierra and the first two Mojave betas (meaning you didn’t get full hardware encoding) it is now magically working with PB3. It is safe to remove AppleIntelKBLGraphicsFramebufferInjector_3e9x.kext after upgrading to PB3.
       
      For Mojave PB4 and higher (including final release):
      Only add ig-platform-id 3E920003 and inject Intel = Yes in Clover, no need for spoofing a fake id anymore. Now iMac18,3 works best with AMD. Intel only users should use iMac18,1 instead.
       
      The best setting for iTunes and why it is the worst for Final Cut:
      Just do the same thing as for FinalCut, put Shiki.kext into your Clover/kexts/other folder and add -shikigva boot argument. You can use -shikigva=1 or 2 or 12 it will work either way. Now you can watch movies with iTunes, yay! But it has some sideeffects. You cannot use this setting when seriously editing with Final Cut.
       
      While this works by tricking macOS to use the IntelGraphics to play protected video content, it doesn’t seem to be the way real Macs are doing this. As soon as you open FinalCut you will notice (check this with iStats or HWMonitor) that the Intel graphics is not or only barely utilized under certain circumstances depending on your material. Instead cpu usage skyrockets, indicating that slow software rendering is used instead of hardware encoding through Intel graphics. To make it worse the Radeon still “thinks” there is an Intel graphics helping so it does not run at highest potential. 
       
      Wifi and Bluetooth
       
      *UPDATE*
      With Mojave PB4/DP5 Bluetooth stopped working with Rehabman's kext, my MagicMouse simply isn't connecting anymore. I decided to finally remove the card because handoff isn't working anyway these days with M.2 or NGFF bluetooth on High Sierra or Mojave (tried several ones "the internet" claims they would work oob but they do not ;)). That is what I wanted Bluetooth for. If you need Wifi I recommend you go with a cheap Wifi-only card, you don't need to pay 30 or 40 $ for dual cards that won't work the way they were intended to work. If you are on a micro ATX board and can have a graphics card plus PCIe Wifi/BT-card that actually connects to a physical USB port on you're board then you may be lucky enough to have handoff working as expected. I'm having a wifi repeater laying around with an ethernet port in case I may need wifi someday on my hack. 
       
      I swapped the Intel Wifi card that was coming with the mainboard plugged into the onboard M.2 port with a compatible Dell card. The DW1830 or BCM943602BAED. The wifi part runs half way out of the box, but if you want the card to appear as Apple AirportExtreme and set the country code according to your country you need to put FakePCIID_Broadcom_WiFi.kext into Clover/kexts/other and add some Clover kext-to-patches by PMHeart. 
       
      Name: com.apple.driver.AirPort.BrcmNIC
      Find: 75166644 3BA3581A 0000750C 4183FE04 7406
      Replace: 66906644 3BA3581A 00006690 4183FE04 6690
      Comment: AirPortBrcmNIC - PCIe in 10.13.x
       
      Name: com.apple.driver.AirPort.BrcmNIC
      Find: 4183FCFF 7435488D 55D0
      Replace: 66C70644 45EB348D 55D0    (*this is for DE country code, change for your need)
      Comment: BCM4352-Country Code 
       
      Bluetooth will work thanks to Rehabman’s kexts. You’ll need BrcmPatchRAM2.kext and BrcmFirmwareData.kext OR BrcmFirmwareRepo.kext. The Data.kext can be injected through Clover, just throw it into the kexts/other folder, the Repo.kext has to be installed in /Library/Extensions on your mac drive, it won’t work with Clover. I had issues with the Data.kext, Bluetooth was gone on every second or third reboot. The Repo.kext is more reliable, haven’t had any issues yet. I really don’t like the kexts to be installed in my system but I guess I have to live with it for the time being.
       
      Oh, handoff and continuity don’t work, doesn’t matter that system profiler shows them as enabled. At least it works in one way: the mac can handoff Safari pages to my iPhone, but not the other way around. Documents opened on my phone show up in the dock, but they are not loaded. 
      This issue is around since at least High Sierra and from what I’ve read Rehabman is not going to fix this, because he founds this features not worth it. I have to disagree, these are very convenient and valuable features if you work with desktop, laptop and tablet in different situations, I miss this capability very much!    
       
      Audio
       
      Audio works with Lilu.kext plus AppleALC.kext and you need to inject Layout ID=1 in Clover if you don't use a patched DSDT. For Mojave use the boot setting -lilubetaall to force the kexts to load. If you like to have DP or HDMI audio add a HDAU device to your dsdt (see mine for reference). There's an audio patch already added in my DSDT, so you don't need to use the Clover patch.
       
      Credits:
      Credits go to this great community! I hope I mentioned everyone in this guide whose insights made this hack possible. If I have forgotten someone please let me know!
       
       
       
       
      CLOVER_Mojave_Final.zip
×