Contribute
Register

Guide How to Patch AMD Framebuffers for High Sierra using Clover

Status
Not open for further replies.
I'm very sorry, Im rather new to all this.
Attached is a ZIP which contains my clover folder, ROM file and info exported. I've edited Pablo's 1st patch he posted as that nearly worked for me, then I rebooted and rebuilt my cache and rebooted again. I'm still getting boot to black screen, however :(

Desired framebuffer: Baladi
 

Attachments

  • Framebuffer Help.zip
    1.8 MB · Views: 108
I'm very sorry, Im rather new to all this.
Attached is a ZIP which contains my clover folder, ROM file and info exported. I've edited Pablo's 1st patch he posted as that nearly worked for me, then I rebooted and rebuilt my cache and rebooted again. I'm still getting boot to black screen, however :(

Desired framebuffer: Baladi
What I see from your config.plist:
  • too many fixes in ACPI DSDT section, I don't think you need them all;
  • since you're not using nvidia card you dont't need nv_disable=1 checked in boot section
  • Try to disable SIP completely by putting 0x67 in CsrActiveConfig in RtVariables section
  • If you're using i5 2500k I think iMac12.2 smbios is more suitable for your configuration
  • Did you disable your IGPU in BIOS ?
  • Post your ioreg so I can see more detailed info about your GPU port assignments
  • Be prepared for lot of experimenting, trials & errors and failed boots :(
  • I may propose new patch with proper edit of hotplug ID's from your BIOS rom:
    00040000 04030000 00010100 00000000 12040201 00000000
    00080000 00020000 00010400 00000000 22050303 00000000
    04000000 14020000 00010300 00000000 11020104 00000000
    04000000 14020000 00010200 00000000 10000606 00000000
    00040000 04030000 00010500 00000000 10000507 00000000
    00040000 04030000 00010600 00000000 20010608 00000000
 
Last edited:
I'm very sorry, Im rather new to all this.
Attached is a ZIP which contains my clover folder, ROM file and info exported. I've edited Pablo's 1st patch he posted as that nearly worked for me, then I rebooted and rebuilt my cache and rebooted again. I'm still getting boot to black screen, however :(

Desired framebuffer: Baladi

It's ok to be new. We all were at some point. Now typical High Sierra > 10.13.2 framebuffer patching with clover involves these steps.
applying patch to clover find and replace KextToPatch
rebooting into single user mode with -s boot flag
running the following commands when you see root
Code:
mount -uw /
touch /System/Library/Extensions/
kextcache -Boot -U /
exit
Note: use exit command not reboot, may need to do it a couple times before getting caches rebuilt properly.


What I see from your config.plist:
  • too many fixes in ACPI DSDT section, I don't think you need them all;
  • since you're not using nvidia card you dont't need nv_disable=1 checked in boot section
  • Try to disable SIP completely by putting 0x67 in CsrActiveConfig in RtVariables section
  • If you're using i5 2500k I think iMac12.2 smbios is more suitable for your configuration
  • Did you disable your IGPU in BIOS ?
  • Post your ioreg so I can see more detailed info about your GPU port assignments
  • Be prepared for lot of experimenting, trials & errors and failed boots :(
  • I may propose new patch with proper edit of hotplug ID's from your BIOS rom:
    00040000 04030000 00010100 00000000 12040201 00000000
    00080000 00020000 00010400 00000000 22050303 00000000
    04000000 14020000 00010300 00000000 11020104 00000000
    04000000 14020000 00010200 00000000 10000606 00000000
    00040000 04030000 00010500 00000000 10000507 00000000
    00040000 04030000 00010600 00000000 20010608 00000000

Can't say I disagree with any of this
 
What I see from your config.plist:
  • too many fixes in ACPI DSDT section, I don't think you need them all;
  • since you're not using nvidia card you dont't need nv_disable=1 checked in boot section
  • Try to disable SIP completely by putting 0x67 in CsrActiveConfig in RtVariables section
  • If you're using i5 2500k I think iMac12.2 smbios is more suitable for your configuration
  • Did you disable your IGPU in BIOS ?
  • Post your ioreg so I can see more detailed info about your GPU port assignments
  • Be prepared for lot of experimenting, trials & errors and failed boots :(
  • I may propose new patch with proper edit of hotplug ID's from your BIOS rom:
    00040000 04030000 00010100 00000000 12040201 00000000
    00080000 00020000 00010400 00000000 22050303 00000000
    04000000 14020000 00010300 00000000 11020104 00000000
    04000000 14020000 00010200 00000000 10000606 00000000
    00040000 04030000 00010500 00000000 10000507 00000000
    00040000 04030000 00010600 00000000 20010608 00000000
- addressed
- addressed
- addressed
- i'll change that
- yes
- attached
- okay; i know this can be a lot of trial and error
- i'll try that
It's ok to be new. We all were at some point. Now typical High Sierra > 10.13.2 framebuffer patching with clover involves these steps.
applying patch to clover find and replace KextToPatch
rebooting into single user mode with -s boot flag
running the following commands when you see root
Code:
mount -uw /
touch /System/Library/Extensions/
kextcache -Boot -U /
exit
Note: use exit command not reboot, may need to do it a couple times before getting caches rebuilt properly.
Okay, will try that
 

Attachments

  • ioreg.ioreg
    7.2 MB · Views: 163
Hey guys,

I got a bad performance when I use a frame buffer, this is normal? I hope not. Probably I made something wrong with the patch.

Geekbench comput results:
With ATI Inject: 59474
Without: 103384

My graphic card have 4x DP and 2x DVI, this one: Asus 7970 Direct CU.

Here is the output of bios decode:

$ ./radeon_bios_decode < 1002_6798_04421043.rom
ATOM BIOS Rom:
SubsystemVendorID: 0x1043 SubsystemID: 0x0442
IOBaseAddress: 0x0000
Filename: AS08U2.bin
BIOS Bootup Message:
6798.15.12.0.4.AS08.U2

PCI ID: 1002:6798
Connector at index 0
Type [@offset 45292]: DisplayPort (10)
Encoder [@offset 45296]: INTERNAL_UNIPHY1 (0x20)
i2cid [@offset 45428]: 0x92, OSX senseid: 0x3
HotPlugID: 6
Connector at index 1
Type [@offset 45302]: DisplayPort (10)
Encoder [@offset 45306]: INTERNAL_UNIPHY1 (0x20)
i2cid [@offset 45455]: 0x93, OSX senseid: 0x4
HotPlugID: 1
Connector at index 2
Type [@offset 45312]: DisplayPort (10)
Encoder [@offset 45316]: INTERNAL_UNIPHY2 (0x21)
i2cid [@offset 45482]: 0x90, OSX senseid: 0x1
HotPlugID: 5
Connector at index 3
Type [@offset 45322]: DVI-I (2)
Encoder [@offset 45326]: INTERNAL_UNIPHY2 (0x21)
i2cid [@offset 45519]: 0x91, OSX senseid: 0x2
HotPlugID: 4
Connector at index 4
Type [@offset 45332]: DVI-I (2)
Encoder [@offset 45336]: INTERNAL_KLDSCP_DAC1 (0x15)
i2cid [@offset 45519]: 0x91, OSX senseid: 0x2
HotPlugID: 4
Connector at index 5
Type [@offset 45342]: DVI-D (3)
Encoder [@offset 45346]: INTERNAL_UNIPHY (0x1e)
i2cid [@offset 45546]: 0x94, OSX senseid: 0x5
HotPlugID: 3

$ ./redsock_bios_decoder < 1002_6798_04421043.rom
AS08U2.bin :

6798.15.12.0.4.AS08.U2

Subsystem Vendor ID: 1043
Subsystem ID: 442
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

Here is my attempt to path:
00040000 04030000 00010100 00000000 11020603 00000000 DP
00040000 04030000 00010200 00000000 21030104 00000000 DP
00040000 04030000 00010300 00000000 12040501 00000000 DP
00020000 04020000 00010400 00000000 22050402 00000000 DVI_I
00020000 04020000 00010500 00000000 00100402 00000000 DVI_I
04000000 14020000 00010600 00000000 10000305 00000000 DVI_D
 
I rebuilt the caches 3 or 4 times, but still unable to boot up with it (get to black screen). I used -v and -s to get to the root screen to input the text, and that seemed to work fine. :(

Thanks you two for your support so far :)

Your injectATI=true with FBName=Baladi isn't working suggest renaming PEGP to GFX0 in ACPI tables add this to your config.plist in ACPI patches section

Find:
50454750

Replace:
47465830
 
Hey guys,

I got a bad performance when I use a frame buffer, this is normal? I hope not. Probably I made something wrong with the patch.

Geekbench comput results:
With ATI Inject: 59474
Without: 103384

My graphic card have 4x DP and 2x DVI, this one: Asus 7970 Direct CU.

Here is the output of bios decode:

$ ./radeon_bios_decode < 1002_6798_04421043.rom
ATOM BIOS Rom:
SubsystemVendorID: 0x1043 SubsystemID: 0x0442
IOBaseAddress: 0x0000
Filename: AS08U2.bin
BIOS Bootup Message:
6798.15.12.0.4.AS08.U2

PCI ID: 1002:6798
Connector at index 0
Type [@offset 45292]: DisplayPort (10)
Encoder [@offset 45296]: INTERNAL_UNIPHY1 (0x20)
i2cid [@offset 45428]: 0x92, OSX senseid: 0x3
HotPlugID: 6
Connector at index 1
Type [@offset 45302]: DisplayPort (10)
Encoder [@offset 45306]: INTERNAL_UNIPHY1 (0x20)
i2cid [@offset 45455]: 0x93, OSX senseid: 0x4
HotPlugID: 1
Connector at index 2
Type [@offset 45312]: DisplayPort (10)
Encoder [@offset 45316]: INTERNAL_UNIPHY2 (0x21)
i2cid [@offset 45482]: 0x90, OSX senseid: 0x1
HotPlugID: 5
Connector at index 3
Type [@offset 45322]: DVI-I (2)
Encoder [@offset 45326]: INTERNAL_UNIPHY2 (0x21)
i2cid [@offset 45519]: 0x91, OSX senseid: 0x2
HotPlugID: 4
Connector at index 4
Type [@offset 45332]: DVI-I (2)
Encoder [@offset 45336]: INTERNAL_KLDSCP_DAC1 (0x15)
i2cid [@offset 45519]: 0x91, OSX senseid: 0x2
HotPlugID: 4
Connector at index 5
Type [@offset 45342]: DVI-D (3)
Encoder [@offset 45346]: INTERNAL_UNIPHY (0x1e)
i2cid [@offset 45546]: 0x94, OSX senseid: 0x5
HotPlugID: 3

$ ./redsock_bios_decoder < 1002_6798_04421043.rom
AS08U2.bin :

6798.15.12.0.4.AS08.U2

Subsystem Vendor ID: 1043
Subsystem ID: 442
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

Here is my attempt to path:
00040000 04030000 00010100 00000000 11020603 00000000 DP
00040000 04030000 00010200 00000000 21030104 00000000 DP
00040000 04030000 00010300 00000000 12040501 00000000 DP
00020000 04020000 00010400 00000000 22050402 00000000 DVI_I
00020000 04020000 00010500 00000000 00100402 00000000 DVI_I
04000000 14020000 00010600 00000000 10000305 00000000 DVI_D

Does your system work without injectATI=true and using the RadeonFramebuffer? If so why are you experimenting? Your patch looks ok from just a glance. What framebuffer are you trying to patch?
 
Status
Not open for further replies.
Back
Top