Jump to content
Whit3Spirit

Disabling NVIDIA Optimus card on all laptops

345 posts in this topic

Recommended Posts

We do the same thing on the ProBook. You use an External declaration to gain access to the methods in SSDT from DSDT. These are the DSDT patches we use:

into definitionblock code_regex . insert
begin
External(\_SB_.PCI0.PEGP.DGFX._OFF, MethodObj)\n
External(\_SB_.PCI0.PEGP.DGFX._ON, MethodObj)\n
end;

into method label _PTS code_regex ([\s\S]*) replace_matched
begin
If (CondRefOf(\\_SB_.PCI0.PEGP.DGFX._ON)) { \\_SB_.PCI0.PEGP.DGFX._ON() }\n
%1
end;

into method label _WAK code_regex (Return\s+\(.*) replace_matched
begin
If (CondRefOf(\\_SB_.PCI0.PEGP.DGFX._OFF)) { \\_SB_.PCI0.PEGP.DGFX._OFF() }\n
%1
end;
The paths to _ON/_OFF may be different in your SSDT, so be sure to tweak the patch as necessary.

 

 

Rehab?

 

Just a question, Why do you turn the card on, on PTS?

Share this post


Link to post
Share on other sites
Advertisement

Rehab?

 

Just a question, Why do you turn the card on, on PTS?

We found that leaving the card in _OFF mode across sleep caused problems with restart and wake. So, in _PTS we restore via _ON, and _WAK turns it back off again.

Share this post


Link to post
Share on other sites

These patches could be useful for me if i could disable the HD4600 instead of the Nvidia card as it is used to control display on external screen through HDMI, good job though :)

Share this post


Link to post
Share on other sites

I use already the latest Clover...how can I use it on the fly?

 

Go make this SSDT with clover in patched DSDT folder, normaly it's good for you. Remember to disable the DropOEM tables.

 

 

I'm not even touching the DSDT but only adding _DSM methods and other things that I need in a SSDT which is injected by Clover (DSDT free Clover config). The _PTS and _WAK methods do not exist in the SSDT where I have turned off the card. Can I reference to the _PTS and _ WAK in the SSDT? How? And will that overwrite the methods with the ones defined in DSDT? Thanks again.

 

My SSDT is similar to this one as decribed by Stevo here

DefinitionBlock ("SSDT-1.aml", "SSDT", 2, "APPLE ", "Optimus", 0x00001000)
{
    External (\_SB_.PCI0.PEG0, DeviceObj)
    External (\_SB_.PCI0.PEG0.PEGP._PS3, MethodObj)
    External (\_SB_.PCI0.PEG0.PEGP._DSM, MethodObj)
    Scope (\_SB.PCI0.PEG0)
    {
        Method (_INI, 0, NotSerialized)
        {
            \_SB.PCI0.PEG0.PEGP._DSM (Buffer (0x10)
                {
                    /* 0000 */   0xF8, 0xD8, 0x86, 0xA4, 0xDA, 0x0B, 0x1B, 0x47,
                    /* 0008 */   0xA7, 0x2B, 0x60, 0x42, 0xA6, 0xB5, 0xBE, 0xE0
                }, 0x0100, 0x1A, Buffer (0x04)
                {
                     0x01, 0x00, 0x00, 0x03
                })
            If (One)
            {
                \_SB.PCI0.PEG0.PEGP._PS3 ()
            }
        }
    }
}

Share this post


Link to post
Share on other sites

RehabMan - I already have a patched DSDT that works :)

 

I'm just trying this new method of not using a patched DSDT and using Clover to do patching on the fly. I guess I will patch in the _PTS and _WAK sections of the DSDT using Clover.

One thing you could do is rename (with Clover search/replace patching) _PTS and _WAK (to something like ZPTS/ZWAK... make sure they are not used). Then from SSDT, you can define new _PTS and _WAK, that call back into DSDTs now renamed ZPTS/ZWAK and do the extra stuff you want them to do...

Go make this SSDT with clover in patched DSDT folder, normaly it's good for you. Remember to disable the DropOEM tables.

I don't think you understand completely what webcivilian is trying to do...

Share this post


Link to post
Share on other sites

Go make this SSDT with clover in patched DSDT folder, normaly it's good for you. Remember to disable the DropOEM tables.

Always enable DropOEM when you use patched SSDT, or it will cause conflict between ssdt tables.

Share this post


Link to post
Share on other sites

One thing you could do is rename (with Clover search/replace patching) _PTS and _WAK (to something like ZPTS/ZWAK... make sure they are not used). Then from SSDT, you can define new _PTS and _WAK, that call back into DSDTs now renamed ZPTS/ZWAK and do the extra stuff you want them to do...

 

Good idea. Let me try it :)

Share this post


Link to post
Share on other sites

Restart still broken even after call the ON method on _PTS.

If you want another set of eyes, post ioreg (use IORegistryExplorer 2.1).

Share this post


Link to post
Share on other sites

OK here are the files. I have also included my modified SSDT and Clover patched DSDT. Also a patched DSDT which works.

 

Thanks again for your help.

I wasn't expecting ZPTS/ZWAK to be completely empty, but ok...

 

Looks like you just copied _WAK/_PTS to ssdt-2 and then patched (to call PINI/OPOF/etc).

 

Seems like it should work. And if I extract all your DSDT/SSDTs from ioreg and use "iasl -da *" I get successful disassembly. In addition, PNLF is loaded and attached to ACPIBacklight, so we know that ssdt-2 is loading ok.

 

Your next step would be to do some traces... Have you used ACPIDebug yet? https://github.com/RehabMan/OS-X-ACPI-Debug. It is very useful...

Share this post


Link to post
Share on other sites

I haven't used ACPIDebug yet. Let me try it and see if I find something. 

 

But can you check my working DSDT against the SSDTs. The ON and OFF methods are a little different and I'm just calling the PS3 methods from IGPU _DSM and there are no issues with restart.

Share this post


Link to post
Share on other sites

I haven't used ACPIDebug yet. Let me try it and see if I find something. 

 

But can you check my working DSDT against the SSDTs. The ON and OFF methods are a little different and I'm just calling the PS3 methods from IGPU _DSM and there are no issues with restart.

I didn't look at your "working DSDT." I assumed you were doing the *same* thing with your SSDT solution. Is that not the case? If so, why?

Share this post


Link to post
Share on other sites

There are some differences. Doix actually created the Optimus off DSDT patch for XPS laptops. I need some help understanding the difference.

I would try my way... then see if you can adapt to your desire for SSDT-based solution:

- patch SSDT to call _OFF from _INI

- patch _PTS to call _ON

- patch _WAK to call _OFF

 

I don't really think the "lets copy a bunch of code from SSDT into DSDT" technique is a good one.

Share this post


Link to post
Share on other sites

I don't understand all your work but :

 

- Why make a SSDT solution for disabled Optimus if the DSDT must be changed ?

- What is the technic for change the DSDT code on the fly in clover ? (for change WAK to ZWAK) Because if you make a SSDT solution, this is for those can't change their DSDT...

 

Can you post just a link for me so I can learn to change DSDT on the fly with clover ?

 

Thanks dudes

Share this post


Link to post
Share on other sites

@ Whit3Spirit - The DSDT doen't need to be changed because we can disable nvidia optimus from SSDT. My problem is that my computer won't restart but shutdown when I turn off Optimus so I was trying some suggestions given by Rehabman to turn on the card.

 

The technique is called Clover DSDT patching. You can read it here: http://clover-wiki.zetam.org/Configuration/ACPI#DSDT

Share this post


Link to post
Share on other sites

@ Whit3Spirit - The DSDT doen't need to be changed because we can disable nvidia optimus from SSDT. My problem is that my computer won't restart but shutdown when I turn off Optimus so I was trying some suggestions given by Rehabman to turn on the card.

 

The technique is called Clover DSDT patching. You can read it here: http://clover-wiki.zetam.org/Configuration/ACPI#DSDT

You can't, the _OFF method is called inevitably in _WAK and in _INI method and you can't call their method in a DSDT. Or i don't understand... ? :(

 

And thanks for Patches in Clovers, instructive !

Share this post


Link to post
Share on other sites

You can't, the _OFF method is called inevitably in _WAK and in _INI method and you can't call their method in a DSDT. Or i don't understand... ? :(

 

And thanks for Patches in Clovers, instructive !

I don't think you understand. You can call whatever method you want, no matter where it exists... just use External to reach it.

Share this post


Link to post
Share on other sites

I don't think you understand. You can call whatever method you want, no matter where it exists... just use External to reach it.

You can add PINI method in _WAK from SSDT then ?

 

Because you have to call the OFF method in the WAK method, not with and if you call WAK from SSDT with an External link, you can't modify it... No ?

 

Sorry if i have a very bad english :P i just learn with all your know :lol:

Share this post


Link to post
Share on other sites

You can add PINI method in _WAK from SSDT then ?

You use External to access a method defined elsewhere.

 

Because you have to call the OFF method in the WAK method, not with and if you call WAK from SSDT with an External link, you can't modify it... No ?

Not sure what you're asking.

Share this post


Link to post
Share on other sites

With clover patch :

 

Change :

Method (_WAK

base64 : TWV0aG9kIChfV0FL

 

To :

Method (PINI, 0, NotSerialized)
    {
        \_SB.PCI0.PEG0.PEGP._DSM (Buffer (0x10)
            {
                /* 0000 */   0xF8, 0xD8, 0x86, 0xA4, 0xDA, 0x0B, 0x1B, 0x47,
                /* 0008 */   0xA7, 0x2B, 0x60, 0x42, 0xA6, 0xB5, 0xBE, 0xE0
            }, 0x0100, 0x1A, Buffer (0x04)
            {
                 0x01, 0x00, 0x00, 0x03
            })
        If (One)
        {
            \_SB.PCI0.PEG0.PEGP._PS3 ()
        }
​    }
Method (_WAK

base64 : TWV0aG9kIChQSU5JLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgIHsNCiAgICAgICAgXF9TQi5QQ0kwLlBFRzAuUEVHUC5fRFNNIChCdWZmZXIgKDB4MTApDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgLyogMDAwMCAqLyAgIDB4RjgsIDB4RDgsIDB4ODYsIDB4QTQsIDB4REEsIDB4MEIsIDB4MUIsIDB4NDcsDQogICAgICAgICAgICAgICAgLyogMDAwOCAqLyAgIDB4QTcsIDB4MkIsIDB4NjAsIDB4NDIsIDB4QTYsIDB4QjUsIDB4QkUsIDB4RTANCiAgICAgICAgICAgIH0sIDB4MDEwMCwgMHgxQSwgQnVmZmVyICgweDA0KQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAweDAxLCAweDAwLCAweDAwLCAweDAzDQogICAgICAgICAgICB9KQ0KICAgICAgICBJZiAoT25lKQ0KICAgICAgICB7DQogICAgICAgICAgICBcX1NCLlBDSTAuUEVHMC5QRUdQLl9QUzMgKCkNCiAgICAgICAgfQ0K4oCLICAgIH0NCk1ldGhvZCAoX1dBSw==

 

Change :

Method (_WAK, 1, Serialized)
     {

Base64 : TWV0aG9kIChfV0FLLCAxLCBTZXJpYWxpemVkKQ0KICAgICB7

 

To :

Method (_WAK, 1, Serialized)
     {
         PINI ()

Base64 : TWV0aG9kIChfV0FLLCAxLCBTZXJpYWxpemVkKQ0KICAgICB7DQogICAgICAgICBQSU5JICgp

 

 

Change :

Method (_INI, 0, NotSerialized)
        {
            Store (0x07D0, OSYS)      

Base64 : TWV0aG9kIChfSU5JLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICB7DQogICAgICAgICAgICBTdG9yZSAoMHgwN0QwLCBPU1lTKQ==

 

To :

Method (_INI, 0, NotSerialized)
        {
            Store (0x07D0, OSYS)
            PINI()

Base64 : TWV0aG9kIChfSU5JLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICB7DQogICAgICAgICAgICBTdG9yZSAoMHgwN0QwLCBPU1lTKQ0KICAgICAgICAgICAgUElOSSgp

 

 

 

 

 

Like that in config.plist :

<key>Patches</key>
            <array>
                <dict>
                    <key>Find</key>
                    <data>TWV0aG9kIChfV0FL</data>
                    <key>Replace</key>
                    <data>TWV0aG9kIChQSU5JLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgIHsNCiAgICAgICAgXF9TQi5QQ0kwLlBFRzAuUEVHUC5fRFNNIChCdWZmZXIgKDB4MTApDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgLyogMDAwMCAqLyAgIDB4RjgsIDB4RDgsIDB4ODYsIDB4QTQsIDB4REEsIDB4MEIsIDB4MUIsIDB4NDcsDQogICAgICAgICAgICAgICAgLyogMDAwOCAqLyAgIDB4QTcsIDB4MkIsIDB4NjAsIDB4NDIsIDB4QTYsIDB4QjUsIDB4QkUsIDB4RTANCiAgICAgICAgICAgIH0sIDB4MDEwMCwgMHgxQSwgQnVmZmVyICgweDA0KQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAweDAxLCAweDAwLCAweDAwLCAweDAzDQogICAgICAgICAgICB9KQ0KICAgICAgICBJZiAoT25lKQ0KICAgICAgICB7DQogICAgICAgICAgICBcX1NCLlBDSTAuUEVHMC5QRUdQLl9QUzMgKCkNCiAgICAgICAgfQ0K4oCLICAgIH0NCk1ldGhvZCAoX1dBSw==</data>
                </dict>
                <dict>
                    <key>Find</key>
                    <data>TWV0aG9kIChfV0FLLCAxLCBTZXJpYWxpemVkKQ0KICAgICB7</data>
                    <key>Replace</key>
                    <data>TWV0aG9kIChfV0FLLCAxLCBTZXJpYWxpemVkKQ0KICAgICB7DQogICAgICAgICBQSU5JICgp</data>
                </dict>
                <dict>
                    <key>Find</key>
                    <data>TWV0aG9kIChfSU5JLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICB7DQogICAgICAgICAgICBTdG9yZSAoMHgwN0QwLCBPU1lTKQ==</data>
                    <key>Replace</key>
                    <data>TWV0aG9kIChfSU5JLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICB7DQogICAgICAgICAgICBTdG9yZSAoMHgwN0QwLCBPU1lTKQ0KICAgICAgICAgICAgUElOSSgp</data>
                </dict>
            </array>

that's good ?

Share this post


Link to post
Share on other sites

Or you can just add an SSDT file and do the following without Clover patching the DSDT:

DefinitionBlock ("SSDT-1.aml", "SSDT", 2, "DELL ", "Optimus", 0x00001000)
{
    External (\_SB_.PCI0.PEG0.PEGP._PS3, MethodObj)    
    External (\_SB_.PCI0.PEG0.PEGP._DSM, MethodObj)    
    Method (\_SB._INI, 0, NotSerialized)
    {
        \_SB.PCI0.PEG0.PEGP._DSM (Buffer (0x10)
            {
                /* 0000 */   0xF8, 0xD8, 0x86, 0xA4, 0xDA, 0x0B, 0x1B, 0x47,
                /* 0008 */   0xA7, 0x2B, 0x60, 0x42, 0xA6, 0xB5, 0xBE, 0xE0
            }, 0x0100, 0x1A, Buffer (0x04)
            {
                 0x01, 0x00, 0x00, 0x03
            })
        If (One)
        {
            \_SB.PCI0.PEG0.PEGP._PS3 ()
        }
    }
}

Share this post


Link to post
Share on other sites

Or you can just add an SSDT file and do the following without Clover patching the DSDT:

DefinitionBlock ("SSDT-1.aml", "SSDT", 2, "DELL ", "Optimus", 0x00001000)
{
    External (\_SB_.PCI0.PEG0.PEGP._PS3, MethodObj)    
    External (\_SB_.PCI0.PEG0.PEGP._DSM, MethodObj)    
    Method (\_SB._INI, 0, NotSerialized)
    {
        \_SB.PCI0.PEG0.PEGP._DSM (Buffer (0x10)
            {
                /* 0000 */   0xF8, 0xD8, 0x86, 0xA4, 0xDA, 0x0B, 0x1B, 0x47,
                /* 0008 */   0xA7, 0x2B, 0x60, 0x42, 0xA6, 0xB5, 0xBE, 0xE0
            }, 0x0100, 0x1A, Buffer (0x04)
            {
                 0x01, 0x00, 0x00, 0x03
            })
        If (One)
        {
            \_SB.PCI0.PEG0.PEGP._PS3 ()
        }
    }
}

 

This only works if there is no _SB._INI already defined in DSDT.

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 JhonneR
      Good morning, everyone, I'm sorry if I was wrong in choosing the topic but I need help.
      I have found it extremely difficult to mount a Hackintosh in my acer.
      Setup;
      I5 2430m 2.4 6GB RAM
      Mobo P5we0 - Intel intel Graphics 3000
      At the moment I have not found out what my audio codecs are.
      but I'll leave the link on the motherboard.
      however, my real problem is several.
      I have already used the itakos image, I have already used several images that could be installed normally and that after installing the image I do not have internet via cable or wireless.
      And another, I already looked in other forums and I know that I will be called a donkey in the logical question but I have not been able to install the [url=&quot;http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/&quot;]#####[/url] or clover to start from the Hard Disk, so I do not know what to do.At the moment I still do not know if there has already been someone who has already installed the High Sierra or just the Sierra in this notebook model and obtained permanent success.
      If anyone can help me, I'll be grateful.
      Installations without success, but with the system already installed in ACER;
      SIERRA
      HIGH SIERRA
      MOJAVE
      All with the same symptom. Starting only by the bootable USB stick and without internet connection via cable and wireless.
      Appreciate ! Acer 5750 Official Page
    • By al3asdfmovie
      Buongiorno a tutti,
      E la prima volta che scrivo su questo forum, spero di non sbagliare nulla!
      Scrivo qua sperando che qualcuno di voi possa darmi una grossa mano, perchè ho letto di tutto, visto qualsiasi video possibile, ma non riesco proprio ad uscirne fuori.
      Ci avevo già provato 3 anni fa, ma ero riuscito solo su un notebook Sony, sul fisso non ero riuscito a fare nulla. Dicevano che c'erano problemi con i driver della serie Skylake, così ho voluto riprovare ora a distanza di anni.
      Premetto che non sono un informatico, non ho conoscenze particolari. Sono semplicemente un ragazzo che si informa, legge tutorial ed esegue, quindi chissà che la soluzione non sia in realtà una banale sciocchezza.
       
      Dunque, il problema consiste nel fatto che, in circa 8 ore di prove, non sia ancora riuscito ad andare oltre il caricamento del logo, dopo aver selezionato la chiavetta da clover.
      Sto cercando di installare High Sierra, ho provato con una chiavetta con un programma che non ho capito bene perchè, ma non posso scriverlo qui, e una con Clover Configurator (che tra l'altro, nella schermata boot mi da un'interfaccia diversa da quella che ho visto nel tutorial, o anche solo 3 anni prima), ma il problema è sempre lo stesso: dopo circa metà caricamento, o mi esce il simbolo di divieto, o si riavvia il computer, riportandomi nel boot di clover.
      Ho provato un po' di flags, come -v, -x, -s, -f, nv_disable=1 (tra l'altro, per evitare problemi al principio, ho impostato la scheda video di intel come primaria), cpus=1, dart=0, Slide=0, insomma, qualsiasi cosa leggessi in giro che avesse portato esiti positivi, la provavo
      Ho provato su porte sub 3.0, 2.0 e le 2.0 dietro al pc.
      Penso sia irrilevante, ma nel caso, sto usando una chiavetta da 32 gb.

      Nella firma dovrebbero esserci tutte le specifiche del mio PC, non so se debba postare altro. Nel caso scusatemi, ditemi pure cosa manca che la aggiorno.
      Spero davvero che qualcuno di voi possa aiutarmi. Ho un MacBook Air (High Sierra l'ho scaricato da qui) e ho scoperto quanto sia più affidabile usare Final Cut rispetto a quel bug chiamato Premiére Pro che ho usato per anni, e vorrei poterlo usare anche sul fisso, senza dover acquistare un iMac. Ho letto in giro che con Mojave non è supportata l'accelerazione grafica, per questo vorrei installare High Sierra.

      Grazie mille a chiunque vorrà aiutarmi!
    • By bounty96
      Hello there,
       
      I can't get my soundcard to work on OS X Mojave. Everything else is working. Graphiccard work, LAN work, front camera work, ...
       
      I am on a Laptop:
      Wortmann Terra Mobile 1529H, Clevo W550SU1, 15,6" WXGA (1366x768)
      Intel Haswell HM86 Chipset, Intel Core i5-4210M, Intel HD Graphics 4600
      8GB Samsung DDR3L 1600MHz Ram, Samsung 850 EVO SSD mSATA
      Toshiba SATA HDD, DVD Drive SATA
      Realtek RTL8111 PCI-E LAN Card, Realtek ALC269 Sound Card
      Intel Dual Band Wireless-AC3160 WLAN + BT (removed becouse I don't need it)
      OS X Mojave + Clover (4868) UEFI Boot
       
      Everything else which I can say about my soundcard is:
      Intel Haswell HDA Controller [8086][0C0C]
      Intel Lynx Point HDA Controller [8086][8C20] (probably HDMI sound?)
       
      Codec: Realtek ALC269VB
      Vendor Id: 0x10ec0269
      Subsystem Id: 0x15585455
      Revesion Id: 0x100100
       
      Codec: Intel Haswell HDMI
      Vendor Id: 0x80862807
      Subsystem Id: 0x80860101
      Revesion Id: 0x100000
       
      I have tried several things: Used patched AppleHDA.kext (one time a downloaded, another time I have patched that myself with Apple HDA Patcher 1.9),
      AppleHDA Enabler.kext,
       
      Lilu.kext + AppleALC.kext (but there I don't know how to use them, I have tried to inject with Clover but it doesn't work).
       
      So have anybody an idea to solve that problem (or had solved it already by himself)?
      With Lili.kext and AppleALC.kext do I have to just inject a layout-id or is there more to pay attention?
      In the github page about AppleALC.kext my codec is listet, but with many many layout-id's. I have tried like 30 or so but no solution.
       
      I dont have a audio output device at all in systempreferences. And in systemreport/extensions I see that AppleHDA are not loaded.
      I don't know what to do and hope that anybody could help me.
    • By arsradu
      Hi guys,
       
      So, this little tutorial is meant to help people fix a new issue with Mojave: opening jpg files (looks like it happens with larger files, not so much with smaller ones) using Quick Look (on spacebar key pressed) or Preview app, using the dedicated GPUs.
      The issue is that, when trying to open jpg files (for some reason, it doesn't occur with pngs), the pop-up window would remain in an endless loop. And from that point forward, any other app trying to open the same file will either become unresponsive (in the case of the Preview app) or just stay in endless loop (in case of Quick Look)
       
      As a workaround, in case the tutorial below doesn't work for you, you can use Grab (built-in app in MacOS) to open said files.
       
      This issue DOES NOT occur using the iGPU. So...if you're comfortable using the iGPU, just switch to that and you should be good to go. You don't need this tutorial.
       
      This tutorial is based on @Cyberdevs' research and testing on this topic (especially useful if you're using an RX series AMD video card), and my own very limited time testing this on my rig. I just thought it would be useful to create a new thread for it so that people can discuss this particular issue here.

       
      With that being said, I'll just move on to the actual tutorial.
       
      New (probably better) method.
       
      Switch your SMBIOS in Clover config in regards to the dedicated GPU you're using, instead of the CPU. Take a look here and choose the corresponding SMBIOS closest to your hardware.
      Yeah, that's it.
       
      In case you lose CPU PM with this method, there are multiple ways to fix that, and they do not make the object of this thread.  It worked perfectly fine for me though and I didn't need to change anything else.
       
      Alternatively, you can also try one of the MacPro SMBIOSes, such as MacPro5,1 or MacPro6,1. It was tested multiple times and it showed good results. 
      Keep in mind that choosing these will most likely not display you an iGPU in System Report, since those machines generally (probably all of them) use Xeon CPUs with no iGPUs either.
       
      A simple Lilu plugin
       
      Thanks to vulgo for the plugin and @Matgen84 for sharing and testing it, we now have yet another possible solution to this issue. It's a Lilu plugin (which means that it requires Lilu.kext in order to work) it's called NoVPAJpeg, and it can be downloaded from here.
      You use it as a regular kext, alongside Lilu. I prefer (and recommend) using it within the EFI folder, in Clover/kexts/Other. But if you want to use it in S/L/E, that should work just fine.
       
      More info can be found in this post here.
       
      In case you wanna try alternative medicine  ...
       
      The main thing we need to do is actually very simple: we need to enable the iGPU (integrated GPU) by default, in BIOS, while actually being connected to the dedicated GPU.
       
      For ATI GPUs (curtesy of @Cyberdevs' post here).
       
      The discreet GPU should be set as primary in BIOS and your displays should be connected to your discreet GPU
      The iGD/iGPU/iGFX must be enabled in BIOS/UEFI as the secondary GPU.
       
      I removed the DSDT Reconfigured the config.plist to and removed some flags which weren't needed because of the DSDT added the InjectATI + Ornioco Framebuffer (I removed the Orinoco framebuffer because of some weird glitches but it might be useful for other AMD GPUs if you inject the correct framebuffer according to your GPU. No need to inject anything for nVidia GPUs unless your GPU needs it) Added the InjectIntel + ig-platform-id for my intel HD530 (for intel HD 530 I use the 0x19120001 ig-platform-id)  
      Steps 5 to 7 might not be necessary I just did them anyway, if anyone succeeded to get quicklook working without those steps let me know so I can exclude those steps.

           Also confirmed to work with AMD R9 270X on a SandyBridge rig (without an iGPU) using WhateverGreen + Lilu kexts, which also helped to solve the transparency issue along with the Quick Look problem, it also resolved the buggy Screen Capture (Command+Shift+5) issue as well. 
       
          Also, do:
      nvram cleanup kextcache & prelinked kernel rebuild reboot  More info on that here.
       
       
      For NVIDIA GPUs
       
      This is what I needed for my NVIDIA rig and the MSI motherboard in the signature. Your milage may vary, depending on your hardware. But, the idea should be the same regardless.
       
         For MSi motherboads (check out my motherboard details in the signature)
       
      Set your BIOS to use PEG (dedicated GPU) so you can boot.
      Since you're reading this, chances are that you're already connected to the dedicated GPU and the BIOS is set to PEG. So just go into BIOS and see if you're using the iGPU or the dedicated (PEG) graphics device by default.
      If you're already using this, skip to Step 3 (the part AFTER Reboot). Reboot (I think you don't necessarily need to boot into the OS...but you do need to reboot at least until Clover UI) Reboot back into BIOS and set it from PEG to IGD (integrated graphics) WITHOUT removing the cable. Save Reboot again.  
         The result should be that the OS is tricked into thinking you're booting with the IGPU when in fact you're using the dedicated GPU.
       
         For Gigabyte motherboards
       
         Set:
      Peripherals -> Initial Display Output -> iGFX Chipset -> Internal Graphics -> Enabled
           DVMT Pre-Allocation -> default 64M.
           DVMT Total Gfx Mem -> default 256M Save Reboot  
         You should do this with the cable connected to the dedicated GPU.
       
      You will also need to patch the iGPU from Clover config.
      1. Graphics -> Inject Intel (UNCHECK Inject Nvidia or ATI if it's checked).
      2. ig-platform-id (in my case for Intel HD 4600 Desktop) it was: 0x0d220003
       
      And use IntelGraphicsFixup.kext (now included into WhateverGreen.kext) in Clover/kexts/Other. In my particular case, without the kext, I would get freezes in Safari.
       
      Another way to activate the iGPU while having the dGPU set as primary is by going into BIOS/SAG/Graphics Configuration/iGPU and setting Multi-Monitor to [Enabled], all the rest remains on [Auto], and set Inject/Intel to [True] in Clover config.*.
       
      Thanks to @gjw for the tip.
       
      *Motherboard dependent. But the multi-monitor option might be the same regardless of manufacturer.
       
       
      This might be a bug with Mojave and it could be fixed by Apple in the future. but in the meantime, feel free to use this if it helps you fix the issue.
       
      For HP motherboards (including laptops), so far no solution, unless the BIOS somehow allows to switch from eGPU to iGPU and vice-versa.
       
      Cheers!
    • 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!  
×