Contribute
Register

[Guide] Disabling discrete graphics in dual-GPU laptops

RehabMan

Moderator
Joined
May 3, 2012
Messages
189,144
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
MacBook Air
Mobile Phone
iOS
Hello, I attempted to disable my discrete graphics card but cannot boot after patching DSDT and SSDTs. So, just to do some diagnosing I F4'd with Clover to get fresh SSDTs and DSDT and placed those unmodified into ACPI/patched and set DropOEM to true. Theoretically, I should be able to boot completely fine if I do not modify the SSDTs and the DSDT that I place into ACPI/patched correct? Or is this not the case?
Sounds like you forgot about SortedOrder.
Read guide:
https://www.tonymacx86.com/threads/guide-patching-laptop-dsdt-ssdts.152573/
 
Joined
Oct 15, 2016
Messages
67
CPU
i7 6500U
Graphics
HD520
Mobile Phone
Android
Hi, @RehabMan
How do you check if the patch works if you use ssdt-discretespoof.aml for your ACPI/patched?
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
189,144
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
MacBook Air
Mobile Phone
iOS
Hi, @RehabMan
How do you check if the patch works if you use ssdt-discretespoof.aml for your ACPI/patched?
You can't.
Must remove SSDT-DiscreteSpoof.aml in order to see if the patch is working.
 
Joined
Oct 15, 2016
Messages
67
CPU
i7 6500U
Graphics
HD520
Mobile Phone
Android
You can't.
Must remove SSDT-DiscreteSpoof.aml in order to see if the patch is working.
Sorry for replying late.
Do you still need to use SSDT-DiscreteSpoof.aml after getting patched correctly?
 
Joined
Oct 15, 2016
Messages
67
CPU
i7 6500U
Graphics
HD520
Mobile Phone
Android
I only have _OFF and _INI in SSDT-14.aml, and the thing is I got boot loop when adding your _INI patch to my SSDT. Now I'm trying to find the problem.
Anyway, this _OFF is different compared to your example in 1st post.
Code:
Method (_OFF, 0, Serialized)  // _OFF: Power Off
        {
            If (LEqual (CCHK (Zero), Zero))
            {
                Return (Zero)
            }

            HGOF ()
            Notify (\_SB.PCI0.RP01, Zero)
            Return (Zero)
        }
How do I modify it? Should I just remove the "Notify (...."?
 

Attachments

RehabMan

Moderator
Joined
May 3, 2012
Messages
189,144
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
MacBook Air
Mobile Phone
iOS
I only have _OFF and _INI in SSDT-14.aml, and the thing is I got boot loop when adding your _INI patch to my SSDT. Now I'm trying to find the problem.
Anyway, this _OFF is different compared to your example in 1st post.
Code:
Method (_OFF, 0, Serialized)  // _OFF: Power Off
        {
            If (LEqual (CCHK (Zero), Zero))
            {
                Return (Zero)
            }

            HGOF ()
            Notify (\_SB.PCI0.RP01, Zero)
            Return (Zero)
        }
How do I modify it? Should I just remove the "Notify (...."?
You cannot replace only SSDT-14.
To patch any SSDT, you must include all of them in ACPI/patched, then DropOem=true, and use SortedOrder to specify SSDT load order.

I have a future build of Clover (source already checked in) that removes this restriction (if config.plist/ACPI/AutoMerge=true), but you would have to build my version of Clover from sources to be able to use that feature.
 
Joined
Oct 15, 2016
Messages
67
CPU
i7 6500U
Graphics
HD520
Mobile Phone
Android
You cannot replace only SSDT-14.
To patch any SSDT, you must include all of them in ACPI/patched, then DropOem=true, and use SortedOrder to specify SSDT load order.

I have a future build of Clover (source already checked in) that removes this restriction (if config.plist/ACPI/AutoMerge=true), but you would have to build my version of Clover from sources to be able to use that feature.
Do I also need to define SSDT-*x.aml too?
 
Top