Contribute
Register

[Guide] Disabling discrete graphics in dual-GPU laptops

But it’s inside of a function, its that ok?

No idea what you're referring to.
There are no "functions" in ACPI.

And this is the code there:
Code:
    Scope (\_SB.PCI0.RP05.PEGP)
    {
        Method (_ON, 0, Serialized)  // _ON_: Power On
        {
            SGON ()
            Notify (\_SB.PCI0.RP05, Zero)
        }

        Method (_OFF, 0, Serialized)  // _OFF: Power Off
        {
            SGOF ()
            Notify (\_SB.PCI0.RP05, Zero)
        }
    }

Looks pretty typical _ON and _OFF methods to me...

And the associated _INI is in SSDT-6.

(and SGOF has no EC references, so this is easy...)
 
@RehabMan when I search for _ini and _off I just receive the dsdt.dsl and one SSDT.dsl file. I can find the required "_off method" in the SSDTs file but not the associated "_ini method" where I should disable the dgpu. I attached my report files.
 

Attachments

  • debug_8041.zip
    2.3 MB · Views: 76
@RehabMan when I search for _ini and _off I just receive the dsdt.dsl and one SSDT.dsl file. I can find the required "_off method" in the SSDTs file but not the associated "_ini method" where I should disable the dgpu. I attached my report files.

_OFF is in SSDT-15-SgPeg
Probably there is no associated _INI, so add one as written in post #1.
 
@RehabMan Where have I to add the _INI? In the SSDT-15 or in the other file (SSDT-3)?
 
What about not having to disable the secondary/dGPU graphics? You might want to check this thesis.
 
Off-topic.
I saw it as an alternative to disabling the secondary card. I might have miss expressed myself regarding addressing someone specific rather than the whole thread.
 
I have to say I am a little lost. I have read post #1 at least a dozen times and I still don’t quite understand what code I need to change. I have gotten this far.

I first edited the DSDT so it has no errors and I believe is now correct. At least my laptop boots with it. :)

Ran the grep commands and got the following:

Mac-Pro:patched $ grep -l Method.*_OFF *.dsl
SSDT-3-Ther_Rvp.dsl
SSDT-5-SaSsdt.dsl
SSDT-7-SgPch.dsl
SSDT-8-AmdTabl.dsl
Mac-Pro:patched $ grep -l Method.*_INI *.dsl
SSDT-5-SaSsdt.dsl
SSDT-7-SgPch.dsl

So now I see that SSDT 5 and 7 are in both.

I look for METHOD (_INI in SSDT-7, line 205, I find:

Method (_INI, 0, NotSerialized) // _INI: Initialize
{
Store (Zero, \_SB.PCI0.RP01.PEGP._ADR)
}

Search for _OFF in SSDT-7 I find:

Method (_OFF, 0, Serialized) // _OFF: Power Off
{
If (LNotEqual (OSYS, 0x07D9))
{
\_SB.PCI0.RP01.PEGP.HGOF ()
Store (Zero, _STA)
}
}

I am assuming at his point this is the correct area I need to edit.

Do I just delete or comment out the line: \_SB.PCI0.RP01.PEGP.HGOF ()

But before I even get to the point of editing, when I first open SSDT-7, I am faced with several compiler errors that I have no idea how to fix (see attached image).

Any help would be appreciated.
 

Attachments

  • Screen Shot 2018-10-29 at 10.36.10 PM.jpg
    Screen Shot 2018-10-29 at 10.36.10 PM.jpg
    74.5 KB · Views: 73
Back
Top