• Become a Premium Member for $25/year with no ads to improve your community experience.

EliteMacx86

Administrator
Staff member
Joined
Jul 22, 2018
Messages
6,646
Motherboard
Supermicro X11SPA-T
CPU
Intel Xeon W-3275 28 Core
Graphics
2xAMD RX 580 8GB
OS X/macOS
13.x
Bootloader
  1. OpenCore (UEFI)
Mac
  1. Mac mini
  2. MacBook Pro
Mobile Phone
  1. Android
  2. iOS
How to Enable Intel HD Graphics (Haswell, Broadwell and Skylake) on macOS Ventura and Later
This guide covers fixing Intel Haswell, Broadwell and Skylake HD Graphics on Desktops and Laptops for macOS Ventura and Later. This guide supports both Clover and OpenCore Bootloader. By following this guide, you'll be able to achieve full QE/CI for your Haswell, Broadwell and Skylake systems.

Overview


macOS supports a wide range of Intel HD Graphics (also referred to as iGPU) but some of them might not work out of the box if you have not followed the Clover or OpenCore Installation Guide.

Before you start with this guide, please know something about the performance. Graphics enhance performance and helps to work smoothly. In macOS, full acceleration requires that both Quartz Extreme and Core Image (QE/CI) should work together.

Quartz Extreme and Core Image (QE/CI) should work together to enable full acceleration on macOS’s GUI. It utilizes the complete Graphics capabilities. In case you haven’t enabled QE/CI on your graphic card, you won’t be able to use your macOS smoothly and there would be lots of lags and artifacts, graphic-related issues, and poor refresh rate. Also, the dock would not be transparent. Therefore it is very important to ensure that your graphic is working with full QE/CI.

Unfortunately, with the announcement of macOS Ventura, Apple has officially dropped support up to Skylake, including IGPU support. If you check S/L/E, you'll notice that the support for IGPU is for KBL and later. This means Skylake CPUs will not have IGPU acceleration. However, there is still a workaround to get acceleration on macOS Ventura for Skylake users.

View attachment 4824

Requirements


Graphics
  • Intel Haswell Graphics (4200, 4400, 4600, 5000, 5100, 5200) Desktop/Mobile
  • Intel Broadwell Graphics (5300, 5500, 5600, 6000, 6100, 6200, 6300) Desktop/Mobile
  • Intel Skylake Graphics (HD 515, 520, 530 and 540) Desktop/Mobile
KextsOriginal Graphics kexts in S/L/E
macOS VersionmacOS Ventura and later
OpenCore VersionOC v0.8.2 and newer


STEP 1: BIOS Setting
The BIOS settings have been provided in a separate thread. For more information on BIOS settings, refer to the thread linked below.


STEP 2: Set Framebuffer
macOS/OS X supports a range of Intel HD/UHD Graphics devices, however not all the variants present in Hackintosh devices are supported out of the box. This is because Apple uses only a few selected Intel CPUs for its Mac lineup and therefore the framebuffer and other required properties exist within macOS/OS X drivers. However, when it comes to Non-Apple computers, this is not the case and therefore you need to set framebuffer with a valid device-id (sometimes spoofed) and ig-platform-id for the graphics to work.

The next step is to set the framebuffer depending on your CPU Code Name. To set the framebuffer, follow the steps below

1. Mount your ESP
2. Open your config.plist
3. Depending on your CPU model and the Graphics, select the framebuffer from the table below and depending on the bootloader you use, add the following properties to your config.plist under Devices>Properties (for Clover) and DeviceProperties (for OpenCore)

DevicesKeyValueTypeNotes
PciRoot(0x0)/Pci(0x2,0x0)AAPL,ig-platform-idDepends on your SystemDATA
  • Specifies ig-platform-id which enables IGPU Graphics acceleration and support.
device-idDepends on your SystemDATA
  • Sets Fake Device ID for Unsupported Device ID in macOS.
enable-hdmi2001000000DATA
  • Enables CoreDisplayFixup functionality via WhateverGreen.kext.
  • Enables HDMI 2.0 patches.
  • This prevents black screen for HDMI in UHD resolution with 60FPS or more.
  • Usually relevant for 4K/UHD/QHD panels. If your Laptop has a 4K/UHD/QHD panel, you'll need to use this boot arg.
  • If you get the "gIOScreenLockState3 error", you'll need to use this property.
framebuffer-fbmem00009000DATA
  • Specifies framebuffer memory size.
  • This is a memory that is reserved for the framebuffer.
  • Do not use framebuffer-fbmem with framebuffer-cursormem
00009000
  • Sets framebuffer memory size to 9MB
00000003
  • Sets framebuffer memory size to 48MB
framebuffer-cursormem00009000DATA
  • Haswell specific only.
  • Do not use framebuffer-fbmem with framebuffer-cursormem
framebuffer-patch-enable01000000DATA
  • Enables framebuffer patching.
framebuffer-stolenmem00003001DATA
  • Specifies stolenmem.
  • This is a memory which is reserved for the IGPU.
  • Prevents kernel panic due to less DVMT size set in BIOS/UEFI.
00003001
  • Sets framebuffer stolenmem size to 19MB
  • Usually relevant for Laptops where the DVMT-prealloc cannot be set due to hidden settings under BIOS/UEFI.
00002002
  • Sets framebuffer stolenmem size to 34MB
  • Usually relevant for 4K/UHD/QHD panel where the DVMT cannot be set due to hidden settings under BIOS/UEFI and variables cannot be modified using UEFI shell method.
  • However, few 4K/UHD/QHD Laptops such as Lenovo Yoga, may require BIOS unlocking.
hda-gfxonboard-1STRING
  • Sets hda-gfx to onboard-1 on IGPU.
  • This property provides HDMI/DP function and can also fix crash issue when Hot plugging.

4. Once you are done with adding the properties, save your config.plist

NOTES:
  • Use the latest OpenCore and kexts.
  • The config.plist must be according to the config.plist creation guide.
  • Connector patching is required for HDMI/DP/Type-C Display. See Intel Framebuffer Patching for more information.


Haswell [Intel HD Graphics 4200, 4400, 4600, 5000, 5100, 5200]


Native Supported Device IDs:
  • 0x0d26
  • 0x0a26
  • 0x0a2e
  • 0x0d22
  • 0x0412
Framebuffer Configuration:
  • AAPL,ig-platform-id:
    • Desktop:
      • 0300220D
    • Laptop:
      • 0000160A
      • 0500260A
      • 0600260A (Recommended)
    • Headless/Empty Framebuffer:
      • 04001204
  • device-id
    • 12040000 (Required for HD4200/HD4400/HD4600)

Broadwell [Intel HD Graphics 5300, 5500, 5600, 6000, 6100, 6200, 6300]


Native Supported Device IDs:
  • 0x0BD1
  • 0x0BD2
  • 0x0BD3
  • 0x1606
  • 0x160e
  • 0x1616
  • 0x161e
  • 0x1626
  • 0x1622
  • 0x1612
  • 0x162b
Framebuffer Configuration:
  • AAPL,ig-platform-id:
    • Desktop:
      • 07002216
    • Laptop:
      • 06002616
    • Headless/Empty Framebuffer:
  • device-id
    • 26160000 (Required for some HD5500/HD5600; enable as required)

Skylake [Intel HD Graphics 510, 515, 520, 530, 540, 550, 580]


Native Supported Device IDs:
  • 0x1916
  • 0x191E
  • 0x1926
  • 0x1927
  • 0x1912
  • 0x1932
  • 0x1902
  • 0x1917
  • 0x193B
  • 0x191B
Framebuffer Configuration:
  • AAPL,ig-platform-id:
    • Desktop:
      • 00001219
    • Laptop:
      • 00001B19 (Recommended)
      • 00001619
      • 00002619 (Required for HD550/P530)
    • Headless/Empty Framebuffer:
      • 01001219
  • device-id
    • 02190000 (Required for HD510)
    • 16190000 (Required for HD550/P530)

STEP 3: Add Kext
The next step is to add a different version of WhateverGreen.kext which allows spoofing SKL as KBL. This will allow booting into macOS without any need for additional boot args and extra configuration. In addition, it will fix video playback issues and the Sleep/Wake function (for Laptops only). To add the kext, follow the steps below.

1. Visit WhateverGreen for spoofing SKL to KBL
2. Download Artifacts from the Artifacts section.
View attachment 4825
3. Extract and copy it to your EFI/OC/Kexts. You'll also need to add the kext entries in the Kernel section of your config.plist.

STEP 4: Disable Discrete Graphics (DGPU)
If you're using a Laptop and if it has dGPU, you'll likely need to disable it. To disable the dGPU, refer to the guide linked below.

STEP 5: Configure SMBIOS
Depending on your Platform, you'll need to use a supported SMBIOS from the table below.

PlatformSMBIOSNotes
LaptopMacBookPro13,1
MacBookPro13,2
MacBookPro13,3
-no_compat_check boot arg required.
LaptopMacBookPro14,1 and LaterNo need to use -no_compat_check boot arg.
DesktopiMac17,1-no_compat_check boot arg required.
DesktopiMac18,1 and Later
Macmini8,1 and Later
No need to use -no_compat_check boot arg.

For more information on setting up SMBIOS, refer to the guide linked below.

STEP 5: Restart your System


After performing all the above steps, restart your system for the applied changes to take effect.
Now you should be able to get your Intel HD Graphics 5XX 1536 MB will full QE/CI. And your Dock would be also transparent.

Desktop

View attachment 4826

View attachment 4827

Laptop

screen-shot-2019-07-24-at-10-18-31-am-png.4406


screen-shot-2019-07-24-at-10-36-21-am-png.4401

Hackintool System Info

View attachment 4828


View attachment 4829

View attachment 4830


Problem Reporting


Details:
  1. macOS version
  2. Copy of IOReg
  3. Kextcache output
Screenshots:
  • DPCIManager/Status
  • About This Mac
  • System Information/Graphics/Displays
Files:
  • For Clover, compress EFI/Clover, and exclude the themes folder.
  • For OpenCore, compress EFI/OC.
Notes:
  • Do not include the complete EFI folder.
  • Put all files in a folder with your name, compress files as Zip and attach files using site attachments only.
  • Do not use any external links.

Credits :
PMHeart
dhinakg
 
Last edited:
I couldn't activate Intel HD Graphics 4400 on MacOS Ventura :(
 
I'm not getting the acceleration from my HD4600. Any idea what I'm doing wrong? Please find attached my anonomized EFI. Hopefull you can make the required changes?
 

Attachments

  • OptiMac OC085 Ventura Intel Fix NoSN.zip
    15.2 MB · Views: 71
I'm not getting the acceleration from my HD4600. Any idea what I'm doing wrong? Please find attached my anonomized EFI. Hopefull you can make the required changes?
Incomplete PR files attached.
Have you patched the system kexts using OCLP?
 
Incomplete PR files attached.
Have you patched the system kexts using OCLP?

PR files? What is that sir?

No, I haven't patched the system kexts using OCLP.
 
PR files? What is that sir?
PR Files are Problem Reporting files and it basically includes EFI, if you haven't installed the OS yet. And if the OS is installed, it includes EFI folder, Hackintool>PCIe Export, IOReg, Kextcache Output.
No, I haven't patched the system kexts using OCLP.
Patch the system kexts using OCLP.
 
Artifacts have expired. Anyone have them handy?
 
  • Like
Reactions: John nemo
where to find the artifacts file?
 

Forum statistics

Threads
1,480
Messages
14,025
Members
21,209
Latest member
zer0ck