So, the correct frame buffer for RX 560 is Acre? In that case, Inject ATI sets it corectly and with the appropiate number of ports.
Should we submit a bug report for WhateverGreen?
First of all there's no need to choose a frame buffer if the default (AMDRadeonFrameBuffer) works. However, not all Rx560's have the same port configurations (most do). So if you have 3 ports with e.g. DP, HDMI & DVI as Port 0,1,& 2 respectively and then order in which ports are configured in the Acre frambeuffer also matter. That is, you may have to patch the connectors if yours are not in that order. Without any frame buffer injection, you can check your IOREG when you see ATY,AMDRadeonFrameBuffer@0 identifier, check the connector-type. It will be either 0x400 (DP), 0x800 (HDMI) or 0x4 (DVI). Same for ATY,AMDRadeonFrameBuffer@1 and ATY,AMDRadeonFrameBuffer@2.
There's no bug in Whatevergreen. It does not set the frame buffer. In fact, it deliberately avoids setting it and warns user not do it because Apple drivers does try to guess the ports from the VBIOS. In it's FAQ, he states:
"When should I use a named framebuffer?
Named framebuffers (Baladi, Futomaki, Lotus, etc.), enabled by "Clover GPU injection" or any other methods should never ever be used. This way of GPU injection is a common mistake, preventing automatic configuration of various important GPU parameters. This will inavoidably lead to borked GPU functioning in quite a number of cases."
So if you use Whatevergreen, then do not use ATI Inject with FBName=Acre.
Unfortunately, not all manufactures configure their ports to the way BIOS says they are configured and that's sometimes where problems happen.
There's absolutely nothing wrong with AMDRadeonFrameBuffer. You will get the same performance.
E.G. I have a Sapphire Nitro+ RX580 8GB and without any RadeonDeInit, ATI Inject, SSDT or whatevergreen, Apple kexts sets the ports correctly in AMDRadeonFramebuffer (almost). The port types & order are correct but there's an extra 6th port listed in the IOREG that is physically not visible on the card. I can use all 5 ports.