A lot of this came from following posts from
@shuhung . A lot of credit goes to him.
Prior config on 10.13.3:
iMac18,3
RX560 with display port on 4k screen, Second monitor with DVI
HD630 intel (not connected but enabled in BIOS)
Updated clover (r4411).
Custom SSDT-AMD.aml to reinit the RX560 as well as select the Acre FrameBuffer. This was then combined with a connector patch in the config.plist
In this manner, I did NOT use whatevergreen or RadeonDeInit in config file.
Current Config on 10.13.4:
1) Removed: SSDT-AMD.aml from CLOVER->ACPI->patched
2) Removed: X4250.kext, AMD9xxxControllerPatcher.kext from CLOVER->Kexts->Other
3) Added: Acre.kext and RX560.kext to CLOVER->Kexts->Other
4) Change config.plist:
a) Set Inject ATI to false
b) Disable / remove the connector patch for RX560
See attached list for all kexts I'm using.
Rationale:
With this update Apple did major work with graphics and previous hacks and workarounds are not needed. Previously I used the SSDT-AMD.aml to reinit the RX560 as well as select the Acre FrameBuffer. This was then combined with a connector patch in the config.plist. The X4250 kext patched theAMDRadeonX4250.kext to enable HEVC decoding in the RX560 and the AMD9xxxControllerPatcher.kext patched some items such as CFG_FB_LIMIT.
With 10.13.4 the X4250Controller was removed. So the approach now is to use the generic framebuffer the OS constructs and tweak it to give it the properties from the Acre buffer.
The RX560.kext injects properties to 9500C + X4000 and should work with RX460 as well.
Acre.kext: inject Acre FB properties to common ATY framebuffer in 9500 FB controller.