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 Technology & more
      Can Someone make a guide to install macOS Mojave on the Surface Pro 1?
    • By kushwavez
      Hi!
       
      I have everything working on my Acer notebook, except FN + Brightness keys using VoodoPS2Controller.kext
       
      Now the brightness keys are "Pause+Break = Brightness Up" and "Fn+F12 = Brightness Down" working right now but they are not the actual keys. 
      The actual brightness keys are "Fn+RightArrow = Brightness Up" and "Fn+LeftArrow = Brightness Down" but they are not working.
      The problem is I don't know the codes.
      Installed ioio and enabled debugging to console:
      Pause/Break is generating: "ApplePS2Keyboard: sending key e045=71" which upper the brightness
      Fn+F12 is generating: "ApplePS2Keyboard: sending key 46=6b" which lower the brightness
      Fn+RightArrow/LeftArrow generates nothing.
      Keyboard attached to PS2K
      Then I used rehabman's guide to enable ACPIDebugging, Installed kext to L/E, Debug methods (Instrument EC Queries, Add DSDT Debug Methods) to DSDT, but there are no codes generated to the log.
       
      Attaching debug folder.
      Also I don't know if it will help, but on Linux I got a code from decreasing/rising brightness with Fn+Left/RightArrow keys:
      Fn+RightArrow: "0xe0 0x54 0xe0 0xd4"
      Fn+Left: "0xe0 0x4c 0xe0 0xcc"
       
      Also I love using EMlyDinEsH's SmartTouchpad Driver, with that all of my Fn keys are working except Brigtness keys ofc. If there are any fix I would like to use that with the smarttouchpad driver. 
      EMlyDinEsH's SmartTouchpad Driver: https://osxlatitude.com/forums/topic/1948-elan-focaltech-and-synaptics-smart-touchpad-driver-mac-os-x/
       
      Specs in my signature. 
      Please help me fix this very last issue on my acer.
       
      debug_4751.zip
    • By tluck
      Lenovo T460 macOS with Clover Guide
      Latest Release on GitHub (April 2019) Updated to Clover r4918 Updated Lilu kexts - ALC, WEG Merged Verleihnix' config.plist - especially to NOT inject GFX Updated BacklightInjector as option to WEG.
        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
       
    • 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!  
×