Jump to content
dpstrange

[BUGS] NVIDIA GeForce GTX 1060 6GB - High Sierra - Multi-Monitor Display

16 posts in this topic

Recommended Posts

Greetings! I've been wrestling with this build for about a week now and have it near golden, but I am struggling with the Nvidia graphics card; I purchased the GeForce Gtx 1060 6GB SSC because is was recommended as the go-to card by the TonyMacx86 community on all of their Customac builds, but there doesn't seem to be much support for the card itself. I understand that Nvidia web drivers are relatively new and come with their own issues but I am reaching out to see if anyone has managed to squash these bugs.

 

THE BUILD

  • Asus ROG STRIX Z370-E
  • Intel Core i7-8700k
  • EVGA Nvidia GeForce GTX 1060 6GB SSC
  • (3) Elite Display E221 (3 Display Port)

 

THE SETUP

The setup is based on Glasgood's build with the following alterations:

 

ISSUES

  1. [FIXED] System wont boot into GUI while multiple monitors are connected
  2. [FIXED] Glitching and Artifacts during system utilization, randomly
    • SOLUTION
      • See Issue 1
  3. [bUG] Glitching and Artifacts when waking from sleep while one monitor is in use.
    • WORKAROUNDS
      • Turn the monitor OFF and then back ON again
      • Log out and back in again (use the keyboard shortcut "Shift + Opt + Cmd + Q")
  4. [bUG] Black screens when waking from sleep while multiple monitors are in use; no recovery.
    • NO SOLUTION
  5. [FIXED] Stuck at BIOS loading screen when booting up while multiple monitors are in use; no recovery.
    • SOLUTION
      • [bIOS] PRIMARY DISPLAY = PCIE
  6. [bUG] RehabMan's FakeSMC_GPUSensors.kext is not reporting correctly (static/maxed values)
    • NO SOLUTION

 

ATTEMPTS MADE, NO SOLUTION

  • Custom DSDT
  • Disable Hibernate
    • sudo pmset -a hibernatemode 0
      sudo rm /private/var/vm/sleepimage
      sudo touch /private/var/vm/sleepimage
      sudo chflags uchg /private/var/vm/sleepimage
      
  • Updated to the latest version of macOS
    • 10.13.2 (17C205)
  • Updated to the latest kexts
    • NvidiaGraphicsFixUp.kext v1.2.1
    • Lilu.kext v1.2.1
  • Updated to the latest version of Nvidia Web Driver & Cuda Driver
    • 104 (17C205)

config.plist.zip

Share this post


Link to post
Share on other sites
Advertisement

extract ur original DSDT with F4 key in clover boot screen and post here, files generated in Clover/Acpi/Origin, dont use DSDT from other machine, only same model ;)

Share this post


Link to post
Share on other sites

extract ur original DSDT with F4 key in clover boot screen and post here, files generated in Clover/Acpi/Origin, dont use DSDT from other machine, only same model ;)

 

Thanks friend! :)

DSDT.aml.zip

Share this post


Link to post
Share on other sites

attachicon.gifDSDT.aml.zip

 

idk if solve nvidia problem, i think no, just for u use dsdt from ur mobo ;)

 

DSDT Works great, still no solution to the Nvidia issues. I will look around other communities to see if anyone else has made any headway but it looks to be unanimous that the Nvidia Web Drivers being in Beta still have some faults. Thank you for your support!

Share this post


Link to post
Share on other sites

I have a GTX 1080 Ti and have the same problem with dual monitor + sleep. Did you manage to fix this?

 

I solved the other problems you mentioned by adding NvidiaGraphicsFixUp and keeping CSM disabled, FYI

Share this post


Link to post
Share on other sites

I have a GTX 1080 Ti and have the same problem with dual monitor + sleep. Did you manage to fix this?

 

I solved the other problems you mentioned by adding NvidiaGraphicsFixUp and keeping CSM disabled, FYI

This is still an issue, I am betting it’s an bug in the official Nvidia Web Driver.

 

I am still unable to boot with multi-monitors while CSM is disabled though so it may be my 1060 6GB SSC + Z370-E seeing as I am also unable to get into BIOS while I have more than one monitor connected.

 

I just updated my bios to the latest version and will be running some test in the next few days to see what has changed.

 

 

Sent from my iPhone using Tapatalk

Share this post


Link to post
Share on other sites

I have a GTX 1080 Ti and have the same problem with dual monitor + sleep. Did you manage to fix this?

 

I solved the other problems you mentioned by adding NvidiaGraphicsFixUp and keeping CSM disabled, FYI

 

This is still an issue, I am betting it’s an bug in the official Nvidia Web Driver.

 

I am still unable to boot with multi-monitors while CSM is disabled though so it may be my 1060 6GB SSC + Z370-E seeing as I am also unable to get into BIOS while I have more than one monitor connected.

 

I just updated my bios to the latest version and will be running some test in the next few days to see what has changed.

 

 

Sent from my iPhone using Tapatalk

 

Updated my BIOS to v0606, Nvidia Web Driver to 137.10.10.10.103/104 and I was able to successfully disable CSM. Primary Display = PCIE is still required to get my bios to get past post when multiple monitors are set up. I am going to test out the latest Nvidia Web Graphics kexts to see if any sleep issues have been fixed.

Share this post


Link to post
Share on other sites

related, I'm wondering what how the UI performance of your 1080 is? I've replaced my Z87 with Z370, modified config.plist accordingly but still I have the same problems, very stuttery performance in the UI, as reported in the other communities also.

It's very visible with something like this: http://madebyevan.com/webgl-water/- pauses every second or two for 500ms or so. 

Share this post


Link to post
Share on other sites

related, I'm wondering what how the UI performance of your 1080 is? I've replaced my Z87 with Z370, modified config.plist accordingly but still I have the same problems, very stuttery performance in the UI, as reported in the other communities also.

It's very visible with something like this: http://madebyevan.com/webgl-water/- pauses every second or two for 500ms or so. 

 

Hmmm, I see the same issue with my 1060 along with the provided animation but the UI is hardly effected on my end, sometimes once or twice I got glitches or artifacts randomly like with the Ginnie effect in the dock.

Share this post


Link to post
Share on other sites

 

 

[bUG] FakeSMC_GPUSensors.kext is not reporting correctly (static/maxed values)
  • NO SOLUTION

My version HWSensors3 has support for Nvidia 1060 card while "FakeSMC_GPUSensors.kext" no.

The link is in my signature.

Share this post


Link to post
Share on other sites

My version HWSensors3 has support for Nvidia 1060 card while "FakeSMC_GPUSensors.kext" no.

The link is in my signature.

e242f15c5f73d8e628f49fd942de2c18.jpg

 

Yikes!

 

Updates:

  • Perhaps a conflict with the FakeSMC.kext thats on my EFI? Managed to remove the kext's installed by your installer to get back in and will systematically include them with the rest of my kexts on the EFI drive to see if the problem still occurs.
  • It is definitely "GeforceSensor.kext
    • post-1601531-0-47118800-1516262051_thumb.png

Share this post


Link to post
Share on other sites

Hey dpgowan! I have almost the same build as you. 

 

Did you try to do the ssdt usb .aml file?

If yes can you share the file here?

And if not maybe we can try to do this together?

 

Here's my build:

 

CPU - Intel Core i7-8700K 3.7GHz 6-Core Processor

CPU Cooler - be quiet! - Dark Rock Pro 3

Motherboard - Asus ROG STRIX Z370-E GAMING

Memory - Corsair Vengeance LED 32GB (2 x 16GB) DDR4-3000

Corsair - Vengeance LED 32GB (2 x 16GB) DDR4-3000

Storage - Samsung 960 EVO 500GB M.2-2280 Solid State Drive

Video Card - Asus GeForce GTX 1080 Ti 11GB STRIX GAMING

Case - Thermaltake Core X71 Tempered Glass Edition ATX Full Tower Case

Power Supply - EVGA SuperNOVA P2 850W 80+ Platinum

 

Everything work fine except for the sleep wake. I can't do anything and my screen is noisy. So i have to reboot every time. I've try to change the darkwake settings without success.

Thank you. 

Share this post


Link to post
Share on other sites

Hey dpgowan! I have almost the same build as you. 

 

Did you try to do the ssdt usb .aml file?

If yes can you share the file here?

And if not maybe we can try to do this together?

 

Here's my build:

 

CPU - Intel Core i7-8700K 3.7GHz 6-Core Processor

CPU Cooler - be quiet! - Dark Rock Pro 3

Motherboard - Asus ROG STRIX Z370-E GAMING

Memory - Corsair Vengeance LED 32GB (2 x 16GB) DDR4-3000

Corsair - Vengeance LED 32GB (2 x 16GB) DDR4-3000

Storage - Samsung 960 EVO 500GB M.2-2280 Solid State Drive

Video Card - Asus GeForce GTX 1080 Ti 11GB STRIX GAMING

Case - Thermaltake Core X71 Tempered Glass Edition ATX Full Tower Case

Power Supply - EVGA SuperNOVA P2 850W 80+ Platinum

 

Everything work fine except for the sleep wake. I can't do anything and my screen is noisy. So i have to reboot every time. I've try to change the darkwake settings without success.

Thank you. 

 

I swapped for an AMD GPU due to some other Nvidia related errors (FXF RX 580) but it has its own sleep problems with an issue in the AMD9500Controller.kext that I am still working on.

 

No need for a SSDT-USB.aml any longer as USBInjectAll.kext can be configured via Clover to not inject ports with an argument on boot.

 

  1. [Clover Configuratior] Boot / Custom Flags
    1. Copy and Paste the following into "Custom Flags"
      1. uia_exclude=HS01;HS02;HS11;SS01;SS02;SS03;SS04;SS07;SS08;SS09;SS10
  2. [Clover Configuratior] Kernel and Kext Patches / KextsToPatch
    1. Set "AppleUSBXHCIPCI - Change 15 Port Limit" to "Disable"

The ports "HS01;HS02;HS11;SS01;SS02;SS03;SS04;SS07;SS08;SS09;SS10" are what did not populate in IORegistry when I tested every port on the MB which incidentally enough ended up under the 15 port threshold for macOS. However I need someone to test the USB-C port in the back to see if it still works and report back with the port number to adjust. See if that works for you.

 

Edit: On another note I manage to get sleep wake to somewhat work for a couple hours on the GTX 1060 using DarkWake=2 but if it slept more than two hours I was back to square one.

Share this post


Link to post
Share on other sites

I swapped for an AMD GPU due to some other Nvidia related errors (FXF RX 580) but it has its own sleep problems with an issue in the AMD9500Controller.kext that I am still working on.

 

No need for a SSDT-USB.aml any longer as USBInjectAll.kext can be configured via Clover to not inject ports with an argument on boot.

 

  1. [Clover Configuratior] Boot / Custom Flags
    1. Copy and Paste the following into "Custom Flags"
      1. uia_exclude=HS01;HS02;HS11;SS01;SS02;SS03;SS04;SS07;SS08;SS09;SS10
  2. [Clover Configuratior] Kernel and Kext Patches / KextsToPatch
    1. Set "AppleUSBXHCIPCI - Change 15 Port Limit" to "Disable"

The ports "HS01;HS02;HS11;SS01;SS02;SS03;SS04;SS07;SS08;SS09;SS10" are what did not populate in IORegistry when I tested every port on the MB which incidentally enough ended up under the 15 port threshold for macOS. However I need someone to test the USB-C port in the back to see if it still works and report back with the port number to adjust. See if that works for you.

 

Edit: On another note I manage to get sleep wake to somewhat work for a couple hours on the GTX 1060 using DarkWake=2 but if it slept more than two hours I was back to square one.

A big thanks for that I will keep you posted if I could make all work.

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 verdazil
      Notebook: Acer A315-53-34MP, High Sierra 10.13.6 && Mojave 10.14.6 installation
       
      Hardware
      CPU: Intel® Core™ i3-8130U, 3400 MHz
      Memory: Kingston, DDR4, 2x4Gb, 2400 MHz
      Video: Intel UHD620 (integrated)
      Display: CMN N156HGA-EAB [15.6" LCD] (embedded)
      External monitor: LG TV 42LF650V
      SSD: Leven JAJS300M240C, 240 Gb (replacement)
      Chipset: Intel Sunrise Point-LP
      Sound: Intel Kaby Lake HDMI + Realtek ALC255
      LAN: Realtek RTL8168/8111 PCI-E Gigabit Ethernet Adapter
      Wi-Fi + Bluetooth: Broadcom BCM94352Z (replacement)
      Touchpad: ELAN0504 
      Cardreader: Realtek PCIE RTS5289
      VGA WebCam
      Mac model: MacBookPro14,2
      MacOS versions tested: High Sierra 10.13.6 (17G8030) && Mojave 10.14.6 (18G95) && Catalina 10.15 (19A558d)
       
      Here is what I used to install and configure the system:
      - Video settings: https://www.insanelymac.com/forum/topic/334899-intel-framebuffer-patching-using-whatevergreen/
      - Wi-Fi settings: https://github.com/acidanthera/AirportBrcmFixup
      - Bluetooth settings: https://github.com/RehabMan/OS-X-BrcmPatchRAM/blob/master/README.md
      - Touchpad settings: https://voodooi2c.github.io
      - Cardreader settings: https://www.insanelymac.com/forum/topic/321080-sineteks-driver-for-realtek-rtsx-sdhc-card-readers/
      - Clover, version v2.5k r5033: https://github.com/Dids/clover-builder/releases/tag/v2.5k_r5033
      - The results of the work of many developers in this and other forums.
       
      What works?
      - Video: Full HD x 60Hz accelerated video on embedded and external (HDMI) monitors
      - Sound: embedded and external (audio jack + HDMI audio)
      - Microphone
      - Touchpad (gestures)
      - Cardreader
      - Wi-Fi
      - USB2 && USB3 ports
      - LAN
      - Bluetooth
      - VGA WebCam
      - Sleep mode
      - Display brightness and volume control using function keys
      - Battery Indication
      - Automatically dimming the screen when the laptop is running on battery power
      - Sound notification when external power is connected
       
      What does not work?
      -
       
      How to use
      1. Update BIOS to version 2.02. Secure boot must be disabled, Touchpad settings - Advanced
      2. To make a bootable flash drive, you can use my EFI directory (link at the end of the message) Tested for High Sierra 10.13.6 (17G8030) && Mojave 10.14.6 (18G95) && Catalina 10.15 (19A558d) installation.
      Note: you must insert your own SeralNumber && MLB && ROM in the config.plist file.
      3. After installation, just copy EFI directory from flash drive to the system drive.
      4. Install kexts BrcmFirmwareRepo.kext && BrcmPatchRAM2.kext to the /Library/Extensions and update system caches.
       
      Link: https://drive.google.com/open?id=11vTmPKjQUSEs2ddUzgwXG9A59EcDMrCs
    • By brerackl
      Good evening,
       
      I used to mess around with iATKOS back in 2011, I since have been out of the loop and have gone through several different PC's.
      Now I have built a new PC and would like to install High Sierra to my external SSD.
      I have gotten as far as installing clover and the .raw image to my USB stick but I am getting stuck on the +++++++++++ then reboot problem.
      I realize a LOT has changed and I am having a bit of trouble figuring it out. 
       
      My PC's specs are as follows:
       
      CPU:
                  Intel Core i7 7820X
       
      RAM:
                  32GB Ballistix RGB Tactical Tracer (by Micron)
       
      Motherboard:
                  EVGA X299 FTW K
       
      Graphics:
                  NVIDIA RTX 2070 (EVGA)
       
      Storage:
                  4TB Western Digital HDD
                  1TB Samsung SSD 970 EVO 1TB
                  480GB Micron SSD
       
      If someone can help point me in the right direction that would be amazing, I have tried using some of the efi files for different x299 setups and such but no luck same results, played with different boot flags and options but everything is so much different I don't really know what does what. 
      I would very greatly appreciate if anyone can point me to some reading or a specific set of files to get me past this error as I haven't the slightest why it is even doing this. Mind you the last time I played around with this was back in 2011 with iATKOS and CD's, I have no CD drive in this build and need to do this via USB and as I understand this is 100% possible I just need the right boot setup and settings.
       
      Thank you in advance,
      Brett
    • By fusion71au
      Clover r5051 ISO compiled with GCC and minimal config.plist compatible for use in VMWare Workstation.
       
      Tested with unlocked Workstation 15 running OSX 10.9 -->10.15 guest in Windows X64 host.
       
      Installation
      1. Download and unzip "EFI_Clover_r5051 for VMware.zip". Mount Clover-v2.5k-5051-X64.iso by double clicking on it.
      2. Mount your VM's EFI System Partition eg in terminal
      sudo diskutil mount disk0s1   3. Copy EFI folder from step 1 into the EFI partition
      4. Shutdown the VM, add bios.bootDelay = "3000" to your VM's vmx file
      5. Reboot your VM, press <F2> to access the VMware Boot Manager and add CLOVERX64.efi to the boot menu.
       
      Substitute your own unique and valid MLB and ROM variables in the /EFI/CLOVER/config.plist (Rt Variables section) to activate iMessage/Facetime on your VM.
    • By headkaze
      Framebuffer patching in Mojave
      Binary patching framebuffers using KextsToPatch in Clover is no longer a viable method in Mojave for Skylake and above. Now you need to use Lilu + WhateverGreen.
       
      Not just for Mojave
      This method of framebuffer patching is not only required for Mojave we recommend it for all previous and future releases of macOS.
       
      Coffee Lake Users
      Please note that the new WhateverGreen will not work with fake Kaby Lake platform-id's. You will need to have either macOS 10.14 Beta 4 (18A336e) or macOS High Sierra 10.13.6 (17G2112). The latter is a special build only available to MacBookPro15,1 or MacBookPro15,2 board id's. You can create a macOS High Sierra 10.13.6 (17G2112) installer by running installinstallmacos.py. (Update: vit9696 added back ability to fake Kaby Lake platform-id's)
       
      Lilu + WhateverGreen
      WhateverGreen is going to replace all the other video patching plugins for Lilu (it currently has merged WhateverGreen, IntelGraphicsFixup, NvidiaGraphicsFixup, Shiki and CoreDisplayFixup). Others will likely follow (such as AppleALC, HibernationFixup and IntelGraphicsDVMTFixup). This is aiming to be the all-in-one solution for video.
       
      Preliminary
      1. Remove:
      - FakePCIID_Intel_HD_Graphics
      - IntelGraphicsFixup
      - NvidiaGraphicsFixup
      - CoreDisplayFixup
      - Shiki
      2. Turn off all graphics injections in Clover:
      - config.plist/Graphics/Inject/ATI=NO
      - config.plist/Graphics/Inject/Intel=NO
      - config.plist/Graphics/Inject/NVidia=NO
      - config.plist/Graphics/ig-platform-id=
      - config.plist/Devices/FakeID/IntelGFX=

      3. Disable DSDT Clover fixes:
      - AddHDMI
      - FixDisplay
      - FixIntelGfx
      - AddIMEI
      4. Disable UseIntelHDMI
      5. Remove boot argument: -disablegfxfirmware
      6. Remove any IGPU and HDMI entries from:
      - config.plist/Devices/Arbitrary
      - config.plist/Devices/Properties
      - config.plist/Devices/AddProperties
      7. Remove any IGPU and HDMI related SSDT and DSDT from:
      - CLOVER/ACPI/patched
      8. Renaming GFX0 -> IGPU
      - WhateverGreen will do this automatically (see caveat below)
      - Be aware that WhateverGreen does not rename all instances of GFX0 -> IGPU but should be okay in most cases
      - You may need to include Clover GFX0 -> IGPU rename for other kexts or ACPI patching that require it
       
      Compile Lilu + WhateverGreen
      Download WhateverGreen. Make sure you place the debug version of Lilu into the root of WhateverGreen before you compile. Install Lilu and WhateverGreen kext's into the usual place. Compile WhateverGreen as debug if you want to view debug output.
       
      Having trouble compiling?
      If you're having trouble compiling you can download the official release binaries or download my (unsupported) build_lilu.sh shell script and run it in a folder to download and build Lilu + WhateverGreen using Xcode automatically. I recommend you try the debug versions first (place them into Clover's EFI/Clover/kexts/Other folder).
       
      Get the device path of your IGPU:
      Download and use the gfxutil tool like so:
      $ ./gfxutil IGPU = PciRoot(0x0)/Pci(0x2,0x0) ig-platform-id
      For the AAPL,ig-platform-id (AAPL,snb-platform-id for Sandy Bridge) entry Clover requires this value to be in Data format so you need to reverse the bytes. So if you want your platform-id to be 0x3EA50009 first reverse the bytes (0900A53E) then use Xcode's plist editor to add the values to Clover's config.plist.

       
      What ig-platform-id should I use for my system?
      You should choose one that is the closest match to your system. I recommend you do some research on this before choosing one. See post #2 for available options. More info can be found here.
       
      You can determine the generation of your CPU by the first digit after the hyphen.
      Examples:
      - Intel(R) Core(TM) i5-2760QM (Gen 2)
      - Intel(R) Core(TM) i7-5257U CPU @ 2.70GHz (Gen 5)
      - Intel(R) Core(TM) m3-6Y30 (Gen 6)
      - Intel(R) Core(TM) i5-8350U (Gen 8)
       
      Spoofing Intel CPU Gen
      If you need to spoof a different Intel CPU generation you can use the lilucpu=N boot flag. The N refers to the following Intel generations:
      4    SandyBridge 5    IvyBridge 6    Haswell 7    Broadwell 8    Skylake 9    KabyLake 10   CoffeeLake To spoof a CPU you will need to set a valid device-id in your GPU entry in Devices/Properties for the appropriate Intel generation.
       
      Eg. Spoofing Skylake (lilucpu=8 boot flag with device-id=0x16190000), Kaby Lake (lilucpu=9 boot flag with device-id=0x12590000).
       
      Here are some recommended frames:
       
      Gen 2: Sandy Bridge (Intel HD Graphics 2000/3000)
      - S/L/E/AppleIntelSNBGraphicsFB.kext
      - Support started with OS X 10.7.x and ended with macOS 10.13.6
      - Metal support is not available
      - device-id: 0x0102 0x0106 0x010A 0x0112 0x0116 0x0122 0x0126
      - AAPL,snb-platform-id (desktop): 0x00030010 (default)
      - AAPL,snb-platform-id (laptop): 0x00010000 (default)
       
      Gen 3: Ivy Bridge (Intel HD Graphics 2500/4000)
      - S/L/E/AppleIntelFramebufferCapri.kext
      - Support started with OS X 10.8.x
      - device-id: 0x0152 0x0156 0x0162 0x0166
      - AAPL,ig-platform-id (desktop): 0x0166000A (default), 0x01620005
      - AAPL,ig-platform-id (laptop): 0x01660003 (default), 0x01660009, 0x01660004
       
      Gen 4: Haswell (Intel HD Graphics 4200-5200)
      - S/L/E/AppleIntelFramebufferAzul.kext
      - Support started with OS X 10.9.x
      - device-id: 0x0D26 0x0A26 0x0A2E 0x0D22 0x0412
      - AAPL,ig-platform-id (desktop): 0x0D220003 (default)
      - AAPL,ig-platform-id (laptop): 0x0A160000 (default), 0x0A260005 (recommended)
       
      Gen 5: Broadwell (Intel HD Graphics 5300-6300)
      - S/L/E/AppleIntelBDWGraphicsFramebuffer.kext
      - Support started with OS X 10.10.2
      - device-id: 0x0BD1 0x0BD2 0x0BD3 0x1606 0x160E 0x1616 0x161E 0x1626 0x1622 0x1612 0x162B
      - AAPL,ig-platform-id (desktop): 0x16220007 (default)
      - AAPL,ig-platform-id (laptop): 0x16260006 (default)
       
      Gen 6: Skylake (Intel HD Graphics 510-580)
      - S/L/E/AppleIntelSKLGraphicsFramebuffer.kext
      - Support started with OS X 10.11.4
      - device-id: 0x1916 0x191E 0x1926 0x1927 0x1912 0x1932 0x1902 0x1917 0x193B 0x191B
      - AAPL,ig-platform-id (desktop): 0x19120000 (default)
      - AAPL,ig-platform-id (laptop): 0x19160000 (default)
       
      Gen 7: Kaby Lake (Intel HD Graphics 610-650)
      - S/L/E/AppleIntelKBLGraphicsFramebuffer.kext
      - Support started with macOS 10.12.6
      - device-id: 0x5912 0x5916 0x591B 0x591C 0x591E 0x5926 0x5927 0x5923 0x87C0
      - AAPL,ig-platform-id (desktop): 0x59160000 (default)
      - AAPL,ig-platform-id (laptop): 0x591B0000 (default)
       
      Gen 8: Coffee Lake (Intel UHD Graphics 630)
      - S/L/E/AppleIntelCFLGraphicsFramebuffer.kext
      - Support started with macOS 10.13.6 (17G2112) / 10.14 beta 4 (18A336e)
      - device-id: 0x3E9B 0x3EA5 0x3EA6 0x3E92 0x3E91 0x3E98
      - AAPL,ig-platform-id (desktop): 0x3EA50000 (default), 0x3E9B0007 (recommended)
      - AAPL,ig-platform-id (laptop): 0x3EA50009 (default)
       
      Framebuffer Patching
      WhateverGreen does most of the work automatically for you and in most cases you do not need any extra Framebuffer Patching. At the minimum though you should choose an ig-platform-id suitable for your system and place it in config.plist/Devices/Properties like this:

      Here are some reasons why you might need extra Framebuffer Patching:
      - Setting DVMT for those who can't set it above 32 MB in BIOS (framebuffer-stolenmem / framebuffer-fbmem)
      - Setting higher VRAM for 4K users who experience graphical glitches (framebuffer-unifiedmem)
      - Disabling eGPU (disable-external-gpu)
      - Enable pixel clock patch for 4K support (enable-hdmi20)
      - Disabling connectors to enable sleep (framebuffer-pipecount / framebuffer-portcount / framebuffer-conX-type=-1)
      - Removing CNConnectorAlwaysConnected flag for eDP laptop screens on < 10.13.6 (framebuffer-con0-flags=0x00000090)
      - Changing connector types to match your systems ports (framebuffer-conX-type)
       
      Framebuffer Patching Types
      We have three different types of patches:
       
      1. Arbitrary (Recommended)
      framebuffer-patch-enable (required to enable below) framebuffer-framebufferid (optional; defaults to current platform-id) (all below are optional) framebuffer-mobile framebuffer-pipecount framebuffer-portcount framebuffer-memorycount framebuffer-stolenmem framebuffer-fbmem framebuffer-unifiedmem framebuffer-cursormem (Haswell only) framebuffer-camellia framebuffer-flags framebuffer-conX-enable (required to enable below) framebuffer-conX-index framebuffer-conX-busid framebuffer-conX-pipe framebuffer-conX-type framebuffer-conX-flags 2. All Data
      framebuffer-conX-enable (required to enable below) framebuffer-conX-alldata 3. Find / Replace
      framebuffer-patchX-enable (required to enable below) framebuffer-patchX-framebufferid (optional; defaults to current platform-id) framebuffer-patchX-find framebuffer-patchX-replace framebuffer-patchX-count (optional; defaults to 1) You should place your patches in config.plist/Devices/Properties in Clover config.plist.
       
      Here are some example patches:
      - 32MB BIOS, 19MB stolen (framebuffer) 9MB fbmem (cursor) 2048MB unifiedmem (vram)

       
      - Pipe / Port Count 3 to 2
      - Connector 1 DP to HDMI
      - Connector 2 Disable

       
      Here is an example of the All Data method:

       
      Here is an example of the Find / Replace method:

       
      Framebuffer Dumps
      There are two ways to dump your framebuffer data (both require WhateverGreen + Lilu debug versions):
       
      1. Using -igfxdump boot flag to dump IGPU framebuffer kext to /AppleIntelFramebuffer_X_Y (root of your boot drive)
       
      There are several ways of reading this dump:
      - Using 010 Editor along with the IntelFramebuffer.bt template
      - Using Hackintool File->Open menu
       
      2. Using -igfxfbdump boot flag to dump native and patched framebuffer table to ioreg at IOService:/IOResources/WhateverGreen
       
      There are several ways of reading this dump:
      - Using dump_platformlist.sh shell script
      - Using Hackintool File->Import->IOReg Dump menu
       
      3. Using Hackintool Framebuffer->macOS 10.14 menu
       
      Adjusting the brightness on a laptop
      1. Method 1
      Enable Clover DSDT fix AddPNLF. Enable SetIntelBacklight and SetIntelMaxBacklight. A specific value is not necessary - it will be automatically injected according to the processor installed.
      2. Method 2
      Use this ACPI table: SSDT-PNLF.dsl SSDT-PNLF.aml
      Do not use both methods at the same time!
       
      Digital Audio (HDMI / DVI / DP)
      To enable digital audio it is necessary to set the necessary properties and, usually, patch the connectors.
      To enable audio in general and HDMI in particular use WEG along with AppleALC.kext.
      On 10.10.5 and above, WEG automatically changes the connector-type of DP (00040000) to HDMI (00080000) if no custom patches are used.
      The actual connection may be of any type (HDMI / DVI / DP), but for the digital audio to function the connector-type must explicitly be HDMI.
       
      VGA support
      In most cases with Intel Skylake and newer it works by default.
      For Ivy Bridge and possibly other generations there are the options to patch your connectors with the following:
      06020000 02000000 30000000 // Option 1
      06020000 01000000 30000000 // Option 2
      On OS X 10.8.2 and newer it is impossible to have VGA on Ivy Bridge systems.
      Hot-plugging VGA usually does not work.
      In case this doesn't help - there are no other known solutions at this time.
       
      EDID
      EDID is usually correctly identified, so no actions are required. In rare cases, EDID needs to be injected manually.
      An EDID dump can be obtained, for example, with Linux. The correct EDID must be put into *AAPL00,override-no-connect* property for IGPU, where the second 0 stands for the display number.
      In some cases the EDID dump may be incompatible with macOS and leads to distortions. For some EDID in such cases you can use this script, which corrects a provided EDID and saves it to your desktop.
       
      HDMI in UHD resolution with 60 fps
      Add the enable-hdmi20 property to IGPU, otherwise you will get a black screen. Or instead of this property use the boot-arg -cdfon
       
      Disablng a discrete graphics card
      Add the disable-external-gpu property to IGPU. Or instead of this property, use the boot-arg -wegnoegpu
       
      Fix the invalid maximum link rate issue on some laptops (Dell XPS 15 9570, etc.)
      Add the enable-dpcd-max-link-rate-fix property to IGPU, otherwise a kernel panic would happen due to a division-by-zero. Or instead of this property, use the boot-arg -igfxmlr.
      You could also manually specify a maximum link rate value via the dpcd-max-link-rate for the builtin display.
      Typically use 0x14 for 4K display and 0x0A for 1080p display. All possible values are 0x06 (RBR), 0x0A (HBR), 0x14 (HBR2) and 0x1E (HBR3). If an invalid value is specified, the default value 0x14 will be used instead. If this property is not specified, same as above.  
      Fix the infinite loop on establishing Intel HDMI connections with a higher pixel clock rate on Skylake, Kaby Lake and Coffee Lake platforms
      Add the enable-hdmi-dividers-fix property to IGPU or use the -igfxhdmidivs boot argument instead to fix the infinite loop when the graphics driver tries to establish a HDMI connection with a higher pixel clock rate, for example connecting to a 2K/4K display with HDMI 1.4, otherwise the system just hangs (and your builtin laptop display remains black) when you plug in the HDMI cable.  
      1. General Notes
      For those who want to have "limited" 2K/4K experience (i.e. 2K@59Hz or 4K@30Hz) with their HDMI 1.4 port, you might find this fix helpful. For those who have a laptop or PC with HDMI 2.0 routed to IGPU and have HDMI output issues, please note that this fix is now succeeded by the LSPCON driver solution, and it is still recommended to enable the LSPCON driver support to have full HDMI 2.0 experience.  
      (You might still need this fix temporarily to figure out the connector index of your HDMI port. See the LSPCON section below.)
      LSPCON driver support to enable DisplayPort to HDMI 2.0 output on IGPU
      1. Brief Introduction
      Recent laptops (Kaby Lake/Coffee Lake-based) are typically equipped with a HDMI 2.0 port. This port could be either routed to IGPU or DGPU, and you can have a confirmation on Windows 10. Intel (U)HD Graphics, however, does not provide native HDMI 2.0 output, so in order to solve this issue OEMs add an additional hardware named LSPCON on the motherboard to convert DisplayPort into HDMI 2.0.
      LSPCON works in either Level Shifter (LS) or Protocol Converter (PCON) mode. When the adapter works in LS mode, it is capable of producing HDMI 1.4 signals from DisplayPort, while in PCON mode, it could provide HDMI 2.0 output. Some onboard LSPCON adapters (e.g. the one on Dell XPS 15 9570) have been configured in the firmware to work in LS mode by default, resulting a black screen on handling HDMI 2.0 connections.
      Starting from version 1.3.0, WhateverGreen now provides driver support for the onboard LSPCON by automatically configuring the adapter to run in PCON mode on new HDMI connections, and hence solves the black screen issue on some platforms.
       
      2. Before you start
      LSPCON driver is only applicable for laptops and PCs with HDMI 2.0 routed to IGPU. LSPCON driver is necessary for all newer platforms unless the new IGPU starts to provide native HDMI 2.0 output. Supported Intel Platform: Skylake, Kaby Lake, Coffee Lake and later.
      Skylake Case: Intel NUC Skull Canyon; Iris Pro 580 + HDMI 2.0 with Parade PS175 LSPCON.
      Coffee Lake Case: Some laptops, e.g. Dell XPS 15 9570, are equipped with HDMI 2.0 and Parade PS175 LSPCON. If you have confirmed that your HDMI 2.0 is routed to IGPU and is working properly right now, you don't need to enable this driver, because your onboard LSPCON might already be configured in the firmware to work in PCON mode.
      3. Instructions
      Dump your kernel log and you should also be able to see something simillar to lines below.
       
      // When you insert the HDMI 2.0 cable igfx @ (DBG) SC:     GetDPCDInfo() DInfo: [FB0] called with controller at 0xffffff81a8680000 and framebuffer at 0xffffff81a868c000. igfx @ (DBG) SC:     GetDPCDInfo() DInfo: [FB0] No LSPCON chip associated with this framebuffer. igfx @ (DBG) SC:     GetDPCDInfo() DInfo: [FB0] Will call the original method. igfx @ (DBG) SC:     GetDPCDInfo() DInfo: [FB0] Returns 0x0. igfx @ (DBG) SC:     GetDPCDInfo() DInfo: [FB2] called with controller at 0xffffff81a8680000 and framebuffer at 0xffffff81a869a000. igfx @ (DBG) SC:   LSPCON::probe() DInfo: [FB2] Found the LSPCON adapter: Parade PS1750. igfx @ (DBG) SC:   LSPCON::probe() DInfo: [FB2] The current adapter mode is Level Shifter (DP++ to HDMI 1.4). igfx @ (DBG) SC:     GetDPCDInfo() DInfo: [FB2] LSPCON driver has detected the onboard chip successfully. igfx @ (DBG) SC:     GetDPCDInfo() DInfo: [FB2] LSPCON driver has been initialized successfully. igfx @ (DBG) SC: LSPCON::getMode() DInfo: [FB2] The current mode value is 0x00. igfx @ (DBG) SC: LSPCON::getMode() DInfo: [FB2] The current mode value is 0x00. igfx @ (DBG) SC: LSPCON::getMode() DInfo: [FB2] The current mode value is 0x00. igfx @ (DBG) SC: LSPCON::getMode() DInfo: [FB2] The current mode value is 0x01. igfx @ (DBG) SC: LSPCON::setMode() DInfo: [FB2] The new mode is now effective. igfx @ (DBG) SC:     GetDPCDInfo() DInfo: [FB2] The adapter is running in preferred mode [Protocol Converter (DP++ to HDMI 2.0)]. igfx @ (DBG) SC:     GetDPCDInfo() DInfo: [FB2] Will call the original method. igfx @ (DBG) SC:     GetDPCDInfo() DInfo: [FB2] Returns 0x0. // When you remove the HDMI 2.0 cable igfx @ (DBG) SC:     GetDPCDInfo() DInfo: [FB0] called with controller at 0xffffff81a8680000 and framebuffer at 0xffffff81a868c000. igfx @ (DBG) SC:     GetDPCDInfo() DInfo: [FB0] No LSPCON chip associated with this framebuffer. igfx @ (DBG) SC:     GetDPCDInfo() DInfo: [FB0] Will call the original method. igfx @ (DBG) SC:     GetDPCDInfo() DInfo: [FB0] Returns 0x0. igfx @ (DBG) SC:     GetDPCDInfo() DInfo: [FB2] called with controller at 0xffffff81a8680000 and framebuffer at 0xffffff81a869a000. igfx @ (DBG) SC:     GetDPCDInfo() DInfo: [FB2] LSPCON driver (at 0xffffff802ba3afe0) has already been initialized for this framebuffer. igfx @ (DBG) SC: LSPCON::setModeIfNecessary() DInfo: [FB2] The adapter is already running in Protocol Converter (DP++ to HDMI 2.0) mode. No need to update. igfx @ (DBG) SC: LSPCON::wakeUpNativeAUX() DInfo: [FB2] The native AUX channel is up. DPCD Rev = 0x12. igfx @ (DBG) SC:     GetDPCDInfo() DInfo: [FB2] Will call the original method. igfx @ (DBG) SC:     GetDPCDInfo() DInfo: [FB2] Returns 0x0. Additionally, you can find these properties injected by the driver under the corresponding framebuffer.
      (Only available in DEBUG version)
       
      fw-framebuffer-has-lspcon indicates whether the onboard LSPCON adapter exists or not.
      fw-framebuffer-preferred-lspcon-mode indicates the preferred adapter mode. 1 is PCON, and 0 is LS.
       
      Debug Output
      To get debug output from Lilu use the -liludbgall liludump=60 boot flags. You will need to compile Lilu and WhateverGreen as debug for both of these flags to work. Log files should be located at /var/log/Lilu_*.
       
      To view debug paste the following into Terminal (weglog.txt will output to your home directory):
      log show --predicate 'process == "kernel" AND (eventMessage CONTAINS "WhateverGreen" OR eventMessage CONTAINS "Lilu")' --style syslog --source --last boot >weglog.txt Getting Help

      To help the users of this forum diagnose issues with your configuration please generate a Lilu debug log and then run gen_debug.sh to generate a folder of debug files you can attach to a forum post requesting help.

      Credits
      - vit9696 and lvs1974 for WhateverGreen (Full Credits) and Lilu (Full Credits)
      - Andrey1970 for his guide on applelife.ru
      - RehabMan for all data patching method, ioreg framebuffer dump and other contributions
       


×