/IMAC-EFI-BOOT-SCREEN

How to create an EFI boot screen vBIOS for Apple Late 2009 to Mid 2011 iMac systems using AMD MXM graphics cards

GNU General Public License v3.0GPL-3.0

IMAC-EFI-BOOT-SCREEN

How to create an EFI boot screen vBIOS for Apple 2009 to Mid 2011 iMac systems using AMD MXM3 graphics cards

My goal is to provide a comprehensive guide how to construct EFI BIOS versions for some AMD MXM cards. As described in detail in this thread owners of modular Apple iMac models built in 2009-2011 with MXM slot graphcs card can replace the original ATI card either with an Nvidia Kepler or an AMD GCN 1.0 to 4.0 card. While there has been a lot of success offering an EFI boot screen with NVIDIA cards development stuck with the AMD cards at some point where an iMac firmware modification has been proposed. Although the firmware modification is quite simple the adoption rate is frankly speaking zero. IMHO this is still the best way to go. Nevertheless even this method will need a BIOS constructed in the same way as described here within the wiki.

Just to complete this introduction: Lately improvements have been made to add a NVIDIA Maxwell and Pascal card, but please note there are no macOS drivers available within any macOS versions starting with Mojave, and there is limited EFI boot screen support.

The wiki decribes tools, sources, methods, orignal limitations, solutions and state of the current development.

iMac models supported

This repository is limited to these eight iMac models published from 2009 to 2011:

  • iMac9,1 Early 2009 A1225 24 inch (LVDS) (see note 1)

  • iMac10,1 Late 2009 A1311 21.5 inch (LVDS) (see note 2)

  • iMac10,1 Late 2009 A1312 27 inch (eDP, see note 3 about EG2)

  • iMac11,1 Late 2009 A1312 27 inch (eDP)

  • iMac11,2 Mid 2010 A1311 21.5 inch (eDP)

  • iMac11,3 Mid 2010 A1312 27 inch (eDP)

  • iMac12,1 Mid 2011 A1311 21.5 inch (eDP)

  • iMac12,2 Mid 2011 A1312 27 inch (eDP)

Notes:

  1. Finally it was possible to include the iMac9,1 Mid 2009 A1225 24 inch to this list. The 2.93 GHz and 3.06 GHz versions were equipped with MXM3 slots and non metal graphics cards (GT120, GT130, AMD 4850). Best cards to run aree the AMD M4000 and AMD M5100, both W5170M and M6000. The power hungry Saturn cards M6100 and W6170M will over heat the system under load rapidly. This system needs a special EnableGop91 driver. All vBIOS files are marked aka named like this and include the LVDS string, too.

  2. GCN4 cards do not support LVDS, the necessary hardware logic to support LVDS on these cards is simply missing. vBIOS files contain the string LVDS, but not the EnableGop91 marker (see note 1)

  3. EG2 versions of vBIOS do not run on iMac10,1 A1312 systems, you get only a white screen in power on/boot. EG versions support all types of Macs listed.

  4. Althout one cannot modify the legacy part of the vBIOS it is possible to inject a modified legacy vBIOS (the first 64K of it) using an SSDT or OpenCore DeviceProperties (ATY,bin_image) to enable the backlight control on Big Sur and Monterey. This mod does not apply or work with Windows installations. Adding the EnableGop driver brought back EFI boot screen support. First replacement card which enables both external display connectors on iMac12,2.

AMD graphcis cards supported

Currently we have tested these cards and can confirm the method works with:

  • AMD FirePro M4000

  • AMD FirePro M5100

  • AMD FirePro M6000

  • AMD FirePro W5170M

  • AMD FirePro M6100

  • AMD FirePro W6150M

  • AMD FirePro W6170M

  • AMD FirePro W7170M

  • AMD FirePro S7100X

  • AMD Radeon Pro WX4130 mobile

  • AMD Radeon Pro WX4150 mobile

  • AMD Radeon Pro WX4170 mobile

  • AMD Radeon Pro WX3200 mobile

  • AMD Radeon Pro RX470 mobile

  • AMD Radeon Pro RX480 mobile

  • AMD Radeon Pro WX7100 mobile

  • AMD Radeon Pro RX5500XT mobile (see note 4 above)

Credits

Most knowledge has been gathered by me from contributions made by Nick [D]vB, nikey22, and internetzel who spent some nights to explain everything in detail to me and who has much more patience to dive deeply into this matter than I do. Hope he will join me to fill this repository with contents. Last but not least thanks to dfranetic, he finished what I could not have done. Great team!

Thanks to rthpjm for finding a W6150M and the necessary legacy vBIOS in some HP firmware update. Special thanks to edwardgeo for countless ideas and incredible knowledge about indepth AMD vBIOS modifications. All the best if these dark times!

m0bil has become the expert for all NVIDIA modifications and probably he should start a similar repository about it and more importantly to this project he is the undisputed master of all iMac firmware modifications.

Finally many thanks to Mike Beaton who developed an EFI driver named EnableGop usable for both MacPro and modular iMacs using either Nvidia or AMD graphics cards to enable the EFI boot picker.

Support

If you want to support the AMD (i)Mac vBIOS development donations are greatly appreciated.