Jump to content
Austere.J

OS X El Capitan 10.11.4: Skylake Intel HD Graphics General Discussion

67 posts in this topic

Recommended Posts

A new version of Skylake integrated graphics driver was included in the latest OS X El Capitan 10.11.4 update.

 

Some "restrictions" (checking pci ids of Broadwell's IGPUs) have been removed from the AppleIntelFramebufferController::start() method.

 

So basically your Skylake's IGPUs could be working now. :)

 

- Some Remarks

 

Should you have kernel panic like minStolenSize <= fStolenMemorySize, you could avoid it by:

 

Either (1) Applying the patch

Name: AppleIntelSKLGraphicsFramebuffer

Find 4139C476 

Replace 4139C477

(Note that you should NOT use this patch if your DVMT pre-allocated memory in your BIOS settings is already >= 64MB)

 

Or (2) Applying the patch (Thanks to Rehabman)

Name: AppleIntelSKLGraphicsFramebuffer

Find: 4139c4762a

Replace: 4139c4eb2a

or (3) you could modify the DVMT pre-allocated memory in your BIOS settings to 64MB or 96MB. (SUGGESTED)

 

(Note that this method is suggested especially when you have a laptop with high resolution screen)

Assertion failed: minStolenSize <= fStolenMemorySize

I will keep updating this post. Looking forward to some successful cases. :)

 

Cheers,

FireWolf

Share this post


Link to post
Share on other sites
Advertisement

That's just awesome if this works.

 

This could fix pretty much all remaining hard issues on the 150 & 170 boards.

 

When did they put in the new iGPU drivers? I kept monitoring the betas for this and didn't find anything.

 

Got a install for el cap planned this weekend on my Fatal1ty Z170

Share this post


Link to post
Share on other sites

That's just awesome if this works.

 

This could fix pretty much all remaining hard issues on the 150 & 170 boards.

 

When did they put in the new iGPU drivers? I kept monitoring the betas for this and didn't find anything.

 

Got a install for el cap planned this weekend on my Fatal1ty Z170

 

Apple only put the new IGPU drivers in the final release of 10.11.4. Nothing new in betas.

Share this post


Link to post
Share on other sites

Should you have kernel panic like minStolenSize <= fStolenMemorySize, you could apply this patch to avoid this assertion: Name: AppleIntelSKLGraphicsFramebuffer Find 4139C476 Replace 4139C477, or you could modify the DVMT pre-allocated memory in your BIOS settings to 64MB or 96MB.

I would suggest using an unconditional 'jmps' (jump short) instruction instead of reversing the logic of the assertion (jbe->ja reverses the logic, such that panic results when DVMT-prealloc is large enough).

 

Find: 4139c4762a

Replace: 4139c4eb2a

 

That way, if DVMT-prealloc is set as required, the patch does not *cause* a panic.

 

Note: The above find/replace also includes the opcodes for the full two instructions involved here (cmpl+jbe).

Share this post


Link to post
Share on other sites

I would suggest using an unconditional 'jmps' (jump short) instruction instead of reversing the logic of the assertion (jbe->ja reverses the logic, such that panic results when DVMT-prealloc is large enough).

 

Find: 4139c4762a

Replace: 4139c4eb2a

 

That way, if DVMT-prealloc is set as required, the patch does not *cause* a panic.

 

Note: The above find/replace also includes the opcodes for the full two instructions involved here (cmpl+jbe).

 

Agreed. That's more secure.

 

I choose to use the ja opcode since the direct jmp is a big instruction, and I am afraid of messing up the kernel panic part. :)

 

Anyway, thanks a lot. I will update the post.

Good news. My HD7000 seems to be working with the new driver. (I only tested the HDMI out yet)

Animations, rotation, and no more confusion around the mouse pointer.

 

Congrats!

 

I assume that you are talking about the Intel HD Graphics 540, the successor of the Intel HD Graphics 6000. :)

Share this post


Link to post
Share on other sites

I choose to use the ja opcode since the direct jmp is a big instruction, and I am afraid of messing up the kernel panic part. :)

There are two kinds of unconditional jmp instructions (long ones and short ones). 'eb' is jmps (jump short). It is the same length as the conditional jump that is being replaced.

Share this post


Link to post
Share on other sites

There are two kinds of unconditional jmp instructions (long ones and short ones). 'eb' is jmps (jump short). It is the same length as the conditional jump that is being replaced.

 

Got it. Really thanks for your sharing.

Share this post


Link to post
Share on other sites

Intel HD 530 (Intel HD Graphics SKL CRB 1536 MB) works good except dual monitors. If I connect 2 monitors (DVI and HDMI) only one of them gets signal and there are only artifacts on the screen.

22/03/16 11:08:06,000 kernel[0]: [IGPU] Failed to initialize graphics firmware.  Falling back to host-side scheduling
22/03/16 11:08:06,000 kernel[0]: [IGPU] Scheduler interface revision = 1: Default EL Scheduler
22/03/16 11:08:06,000 kernel[0]: [IGPU] *****************************************************************************
22/03/16 11:08:06,000 kernel[0]: [IGPU] Graphics accelerator is using scheduler interface revision 1: Default EL Scheduler
22/03/16 11:08:06,000 kernel[0]: [IGPU] Scheduler: Multiple channel indexes per command streamer
22/03/16 11:08:06,000 kernel[0]: [IGPU] Scheduler: Process CSB using HWS.
22/03/16 11:08:06,000 kernel[0]: [IGPU] Scheduler: PM notify enabled
22/03/16 11:08:06,000 kernel[0]: [IGPU] Graphics Address: PPGTT, Separate Address Space
22/03/16 11:08:06,000 kernel[0]: [IGPU] MultiForceWake Enabled: Using 3D Driver
22/03/16 11:08:06,000 kernel[0]: [IGPU] CoarsePowerGating Disabled
22/03/16 11:08:06,000 kernel[0]: [IGPU] Scheduler Throttle Cap = 100ms.
22/03/16 11:08:06,000 kernel[0]: [IGPU] startGraphicsEngine: hwCaps compromised fNumSubSlices: 3 fExecUnitCount: 0.

Share this post


Link to post
Share on other sites

I'm using ig-platform-id = 0x19160000
Your graphics is not loading. You'll need to modify the DVMT pre-allocated memory in your BIOS settings to 96MB.

 

You could try FB patch mentioned above by Rehabman, but even that still have some artifacts. 

 

Find: 4139c4762a

Replace: 4139c4eb2a

Share this post


Link to post
Share on other sites

Yeah, I have had the DVMT set to 64mb in the bios.  What's odd is that I can load the USB installer perfectly fine, but whilst using the same clover config, DSDT, etc, the OS partition keeps hanging when it loads the graphics kernel extensions.  I assume that the installer only loads the VESA drivers, which is why I am experiencing this..

Share this post


Link to post
Share on other sites

Whenever I set it past 64mb, there is an instant kernel panic. I've tried patching the fb and still I am ending up with the same exact error.

Share this post


Link to post
Share on other sites

Whenever I set it past 64mb, there is an instant kernel panic. I've tried patching the fb and still I am ending up with the same exact error.

 

Please post your config.plist

Share this post


Link to post
Share on other sites

That makes sense..  I will post it tomorrow.  I should probably mention the specs of the computer that I am using.  Specs: Asus K501UX, Core i7 6500u, GTX 950 discrete (Disabled via clover nv_disable=1) Intel HD 520 integrated (stuff in config: Inject intel=true, ig-platform-id = 0x19160000; I've tried with and without these settings to no avail btw)  8GB Ram, 1080p display.  Is there any chance that the nvidia optimus could be interfering with the integrated graphics.  I have tried disabling it through the dsdt, but not entirely sure if it is actually disabled entirely.  I was able to boot into the installer and everything without the graphics injection info, but with the same config the OS partition halts..

Share this post


Link to post
Share on other sites

That makes sense..  I will post it tomorrow.  I should probably mention the specs of the computer that I am using.  Specs: Asus K501UX, Core i7 6500u, GTX 950 discrete (Disabled via clover nv_disable=1) Intel HD 520 integrated (stuff in config: Inject intel=true, ig-platform-id = 0x19160000; I've tried with and without these settings to no avail btw)  8GB Ram, 1080p display.  Is there any chance that the nvidia optimus could be interfering with the integrated graphics.  I have tried disabling it through the dsdt, but not entirely sure if it is actually disabled entirely.  I was able to boot into the installer and everything without the graphics injection info, but with the same config the OS partition halts..

 

If your initial screenshot is still valid, you might want to check if you have FakeSMC.kext present on whatever you use to boot. Because according to the screenshot, it's not being loaded.

 

Once you fix that, you should be able to reach the desktop. However, if for some reason you get stuck at a black screen with a blinking cursor or the loading bar (which appears even when booting in verbose) you might have a WindowServer crash. To confirm this, at Clover boot, go to Graphics Menu and set InjectIntel = True and FakeID = 0x12345678, this way you'll disable kext loading for the iGPU. If you can reach the desktop, then WindowServer crash is confirmed.

 

For people with HD 530 Mobile and anyone else that encounters a black screen with blinking cursor, you need to use FakePCIID.kext and a custom injector (see below) to get around some checks in the SKLGLDriver.bundle. 

 

 

You need to have FakePCIID.kext AND the above injector!

 

@JakeLo and anyone else with working SKL graphics on their laptops:

 

Please install and run GfxBench Metal benchmark and see if you can run it: https://itunes.apple.com/us/app/gfxbench-metal/id1044629456?mt=12Go to select test and leave only one test check, you don't need to go through all of them if it works.

 

If it crashes on your machine, congratulations, METAL isn't working on your system, 10.12 is supposed to use Metal instead of OpenGL for animations (this remains to be seen though).

 

If it works, congratulations again, could you provide a IOReg/IOJones dump of your system? Open IORegExplorer / IOJones, run the bench again (say the first test) then save the ioreg dump and post it here or PM it to me.

 

Thank you.

Share this post


Link to post
Share on other sites

Alec stone

 

GTX 950 discrete (Disabled via clover nv_disable=1)

Is there any chance that the nvidia optimus could be interfering with the integrated graphics.

 

You could disable it in BIOS and try.

Share this post


Link to post
Share on other sites

For people with HD 530 Mobile and anyone else that encounters a black screen with blinking cursor, you need to use FakePCIID.kext and a custom injector (see below) to get around some checks in the SKLGLDriver.bundle. 

 

You need to have FakePCIID.kext AND the above injector!

I'm assuming my suggestion to use FakePCIID was helpful? If so, perhaps this should be integrated into FakePCIID_Intel_HD_Graphics.kext.

 

I guess we'll see as time goes on...

Share this post


Link to post
Share on other sites

I'm assuming my suggestion to use FakePCIID was helpful? If so, perhaps this should be integrated into FakePCIID_Intel_HD_Graphics.kext.

 

I guess we'll see as time goes on...

Pretty much, people have been reporting success in the HP Envy thread as well. 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By SepehrM
      I'm trying to install High Sierra 10.13.3 on an ASUS N552VW laptop, and I get stuck after this message:
      "could not recover SATA HDD after 5 attempts, terminating" 
      And some other warnings afterwards.
      Specs:
      CPU: Intel Skylake 6700HQ 2.6GHz
      RAM: 16GB DDR4
      2TB HDD + 128GB SSD
      GPU: Intel HD Graphics 530 + Nvidia GTX960m
      I'm installing using a 16GB USB3 flash drive on one of HDD volumes (UEFI Mode)
       
      I uploaded the verbose log and clover config.plist
      config-new.plist

    • By MaLd0n
      Now have a Olarila app, just download app and clover folder for your Chipset! https://olarila.com/forum/viewtopic.php?f=81&amp;t=6771   Install MacOS with Olarila Image, Step by Step, Install and Post Install
       
      https://olarila.com/forum/viewtopic.php?f=50&t=8685
          First... If you need DSDT edits for SkyLake, KabyLake or CoffeeLake... -Post your full Clover folder with original tables in Origin folder(Extract with F4 in Clover boot screen) -Post Ioreg, extract with Ioreg Explorer http://www.insanelymac.com/forum/index.php?app=core&module=attach&section=attach&attach_id=222606 -Run it, post files generated in your desktop http://www.insanelymac.com/forum/index.php?app=core&module=attach&section=attach&attach_id=222609  Installation   --Create a bootable copy of macOS Sierra Check out the link http://www.insanelymac.com/forum/files/file/559-flash-drive-maker/   --Create a bootable copy of macOS HighSierra Check out the link http://diskmakerx.com/   --Install Clover in USB stick https://sourceforge.net/projects/cloverefiboot/files/Installer/   --Replace with my Clover folder  CLOVER.zip   --Install Sierra/High Sierra and boot into system!   Post Installation   --Install Clover in HDD/SSD and replace with my folder CLOVER.zip   --Reboot and activate video!   -Nvidia WebDriver Sierra http://www.insanelymac.com/forum/topic/312525-nvidia-web-driver-updates-for-macos-sierra-update-07212017/ -Nvidia WebDriver High Sierra http://www.insanelymac.com/forum/topic/324195-nvidia-web-driver-updates-for-macos-high-sierra-update-10162017/ -Cuda http://www.insanelymac.com/forum/topic/302795-cuda-90214-is-out-update-10162017/   --DSDT My DSDT with Skylake patches DSDT.MaLd0n GA H110M-S2.zip Patches -FIX ERRORS AND WARNINGS -HPET -SATA -DMAC -SLPB -DARWIN -LPC -XHCI -PLUGIN TYPE -HDAS to HDEF -HDEF -RTC -IRQs -SBUS -BUS1 -MCHC -ALS0 -SHUTDOWN -LAN -USBX -PMCR -EC -PNLF -HDMI --FakeSMC https://bitbucket.org/RehabMan/os-x-fakesmc-kozlek --Audio https://github.com/vit9696/AppleALC --USB https://bitbucket.org/RehabMan/os-x-usb-inject-all/downloads --LAN http://www.insanelymac.com/forum/topic/287161-new-driver-for-realtek-rtl8111/   -Credits and thanks to the old and new people in the community who developed patches, kexts and bootloaders!   Slice, Kabyl, usr-sse2, jadran, Blackosx, dmazar, STLVNUB, pcj, apianti, JrCs, pene, FrodoKenny, skoczy, ycr.ru, Oscar09, xsmile, SoThOr, RehabMan, Download-Fritz, Zenit432, cecekpawon, Intel, Apple, Oracle, Chameleon Team, crazybirdy, Mieze, Mirone, Oldnapalm, netkas, Elconiglio, artut-pt, ErmaC, Pavo, Toleda, Master Chief and family, bcc9, The King, PMheart, Sherlocks, Micky1979, vit9696, vandroiy2013, Voodoo Team, Pike R. Alpha, lvs1974, Austere.J, CVad and many, many, many others!   We're all here to have fun and learn from each other!   ENJOY!  
    • By MaLd0n
      Now have a Olarila app, just download app and clover folder for your Chipset! https://olarila.com/forum/viewtopic.php?f=81&amp;t=6771   Install MacOS with Olarila Image, Step by Step, Install and Post Install
       
      https://olarila.com/forum/viewtopic.php?f=50&t=8685
          --Create a bootable copy of macOS Sierra Check out the link http://www.insanelymac.com/forum/files/file/559-flash-drive-maker/   --Create a bootable copy of macOS HighSierra Check out the link http://diskmakerx.com/   --Install Clover in USB stick https://sourceforge.net/projects/cloverefiboot/files/Installer/   -Replace Folder CLOVER Install.zip   -Install Sierra/High Sierra and boot into system!   -Install Clover and replace with my folder  CLOVER Post Install.zip   -Reboot and activate video!   Bingo!   Now you need a fine tune! I prefer DSDT way, apply all patches in one file, many people prefer many SSDTs or Clover patches!   If you need DSDT edits for Skylake... -Post your full Clover folder with original tables in Origin folder(Extract with F4 in Clover boot screen) -Post Ioreg, extract with Ioreg Explorer IORegistryExplorer.app.zip -Run it, post files generate in your desktop RunMe.app.zip   -DSDT bios F21 My DSDT with patches for skylake DSDT.GA Z170M-D3H F21.zip   -Patches -FIX ERRORS AND WARNINGS -HPET -SATA -DMAC -SLPB -DARWIN -LPC -XHCI -PLUGIN TYPE -HDAS to HDEF -HDEF -RTC -IRQs -SBUS -MIKEY -BLC0 -BUS1 -MCHC -ALS0 -SHUTDOWN -LAN -USBX -PMCR -EC -PNLF -HDMI






       
      -FakeSMC http://www.hwsensors.com/releases -Audio https://github.com/vit9696/AppleALC -USB https://bitbucket.org/RehabMan/os-x-usb-inject-all/downloads -LAN https://github.com/Mieze/IntelMausiEthernet   Credits and thanks to the old and new people in the community who developed patches, kexts and bootloaders!
    • By MaLd0n
      Now have a Olarila app, just download app and clover folder for your Chipset! https://olarila.com/forum/viewtopic.php?f=81&amp;t=6771   Install MacOS with Olarila Image, Step by Step, Install and Post Install
       
      https://olarila.com/forum/viewtopic.php?f=50&t=8685
        --Create a bootable copy of macOS Sierra Check out the link http://www.insanelymac.com/forum/files/file/559-flash-drive-maker/   --Create a bootable copy of macOS HighSierra Check out the link http://diskmakerx.com/   Installation   --Install Clover in USB stick https://sourceforge.net/projects/cloverefiboot/files/Installer/   --Replace with my Clover folder  CLOVER Install.zip   --Install Sierra/High Sierra and boot into system!   Post Installation   --Install Clover in HDD/SSD and replace with my folder CLOVER Post Install.zip   --Reboot   DSDT DSDT.MaLd0n.zip   Patches -FIX ERRORS AND WARNINGS -HPET -SATA -DMAC -SLPB -DARWIN -LPC -XHCI -PLUGIN TYPE -XXXX to HDEF -HDEF -RTC -IRQs -SBUS -BLC0 -BUS1 -MCHC -ALS0 -SHUTDOWN -LAN -USBX -PMCR -EC ----- -Disable GPU new patch and PNLF SSDT - Credits RehabMan


       
      SSDT    Generate your SSDT for PM, use ssdtPRGen by Piker-Alpha https://github.com/Piker-Alpha ssdtPRGen.command.zip   or just use "plugin-type"=0x01 in DSDT, SSDT or Clover config.plist   for check Power, Frequency, Temperature and Utilization, use it Install Intel Power Gadget.pkg.zip  
      -Audio
      https://github.com/vit9696/AppleALC
       
      -FakeSMC
      https://bitbucket.org/RehabMan/os-x-fakesmc-kozlek/downloads/   -Atheros Ethernet https://github.com/Mieze/AtherosE2200Ethernet   -IntelGraphicsFixup https://sourceforge.net/projects/intelgraphicsfixup/   -IntelGraphicsDVMTFixup https://github.com/BarbaraPalvin/IntelGraphicsDVMTFixup   -USBInjectAll https://bitbucket.org/RehabMan/os-x-usb-inject-all/downloads/   -Credits and thanks to the old and new people in the community who developed patches, kexts and bootloaders!   Slice, Kabyl, usr-sse2, jadran, Blackosx, dmazar, STLVNUB, pcj, apianti, JrCs, pene, FrodoKenny, skoczy, ycr.ru, Oscar09, xsmile, SoThOr, RehabMan, Download-Fritz, Zenit432, cecekpawon, Intel, Apple, Oracle, Chameleon Team, crazybirdy, Mieze, Mirone, Oldnapalm, netkas, Elconiglio, artut-pt, ErmaC, Pavo, Toleda, Master Chief and family, bcc9, The King, PMheart, Sherlocks, Micky1979, vit9696, vandroiy2013, Voodoo Team, Pike R. Alpha, lvs1974, Austere.J, CVad and many, many, many others!   Special Thanks to Pablo Galán   We're all here to have fun and learn from each other!   ENJOY!
    • By tluck
      Lenovo T460 macOS with Clover Guide
      Latest Release on GitHub Updated to Clover r4861 Updated Kexts Shift to use WhatEvergreen.kext SSDT updates for T460 Added Frank's T470p DSDT files Added T470 DSDT Remove kextunload/kextload in /etc/rc.sleep and /etc/rc.wake to avoid KP on sleep
        Various Tweaks over Last months The zip file is a complete Clover ESP (/EFI) bundle and kext pack for the Lenovo T460. The current file bundle is tested on Sierra. 
      Note: I never got the GFX fully working on El Capitan. 
      Full Clover file set - config.plist etc. Includes all custom kexts Includes custom DSDT/SSDT scripts and patches Utility scripts The zip bundles are posted to GitHub: https://github.com/tluck/Lenovo-T460-Clover/releases
      Caveat: The T460 systems used here was configured with: i5-6300U, Intel HD Graphics 520, 1920x1080 touch screen. If you have a different system model, then extract the ACPI files and use the included scripts to create a set of files consistent with your system type and BIOS version. See below for details.
      Credits: RehabMan, Shmilee, vusun123, TimeWalker, Mieze from which, much of their work and help is/was was used to get the T460 to this point.
      Devices and aspects working:
      Ethernet -  Intel I219LM is enabled via IntelMausiEthernext.kext WiFi/BT - substitute the Intel WiFi/BT with a compatible Broadcom or Atheros chip Audio - ALC293 codec implemented via AppleALC.kext (old AppleHDA_ALC293 and CodecCommander kexts are not needed) PS2 - ClickPad + TrackPoint + all 3 buttons - using a modified VoodooPS2Controller to support new layouts - and added some custom Fn key maps based on 440/450 dsdt USB - implemented via custom SSDT + USBInjectAll kext. All USB3/USB2 ports are intel-based and work -  3 external USB and internal Camera, BT, etc  Sleep/Wake - the sleepwatcher package and custom sleep/wake scripts are used to help with sleep/wake for BT and PS2 devices. Note: have not tried to implement the SD card reader - no driver found.
      ACPI Files
      New Installation - Steps and Details
      Part 1 - OS Installation
      Part 2- Post OS Installation and Setup
      Notes on Custom Kexts
       
×