Contribute
Register

[HELP] My Switchable Graphics option in BIOS keeps resetting after reboot!

Status
Not open for further replies.
You told me to remove all Fixes from Clover Config > ACPI, should I remove the DSDT patches from clover config aswell? (Some of them are renames afaik)

Renames via config.plist/ACPI/DSDT/Patches are fine. I wrote specifically regarding config.plist/ACPI/DSDT/Fixes.
 
edit: nevermind wrong post reply - why can't I delete comments?
 
Renames via config.plist/ACPI/DSDT/Patches are fine. I wrote specifically regarding config.plist/ACPI/DSDT/Fixes.
So I cleaned up my config as clean as it can get without getting kernel panic, and after that I was trying to follow the guide for disabling dGPU you made. The _OFF Method was in SSDT-8, and the _INI in DSDT. No other files. Also, my _OFF method does not look like yours at all;

Method (_OFF, 0, Serialized) // _OFF: Power Off
{
Sleep (0x64)
Store (PREG, PEGB)
Sleep (0x64)
Store (VREG, VGAB)
Sleep (0x64)
Store (0x01, LNKM)
While (LNotEqual (LNKS, 0x00))
{
Sleep (0x01)
}

Store (0x00, PO50)
ECS4 (0x00)
}


So my current Problem is: Still the Switchable Graphics BIOS reset (second boot with Switchable Graphics on it crashes and then sets Switchable Graphics off again, as described in my first post) and the fact that I couldn't fully disable the dGPU because of the _OFF method.

Do you think the BIOS bug goes away when I disabled my dGPU with your guide?
 

Attachments

  • ProblemReporting.zip
    2.1 MB · Views: 91
So I cleaned up my config as clean as it can get without getting kernel panic, and after that I was trying to follow the guide for disabling dGPU you made. The _OFF Method was in SSDT-8, and the _INI in DSDT. No other files. Also, my _OFF method does not look like yours at all;

Method (_OFF, 0, Serialized) // _OFF: Power Off
{
Sleep (0x64)
Store (PREG, PEGB)
Sleep (0x64)
Store (VREG, VGAB)
Sleep (0x64)
Store (0x01, LNKM)
While (LNotEqual (LNKS, 0x00))
{
Sleep (0x01)
}

Store (0x00, PO50)
ECS4 (0x00)
}


So my current Problem is: Still the Switchable Graphics BIOS reset (second boot with Switchable Graphics on it crashes and then sets Switchable Graphics off again, as described in my first post) and the fact that I couldn't fully disable the dGPU because of the _OFF method.

Do you think the BIOS bug goes away when I disabled my dGPU with your guide?

Looks like you have EC related code in _OFF (ECS4 at the end). That code needs to be executed from _REG, since when _INI is executed, the EC is not available. Details are in the guide...
 
Looks like you have EC related code in _OFF (ECS4 at the end). That code needs to be executed from _REG, since when _INI is executed, the EC is not available. Details are in the guide...
Okay so that's the patch I applied to my DSDT;

into method label _REG parent_hid PNP0C09 insert
begin
//added to turn nvidia/radeon off\n
If (LAnd(LEqual(Arg0,3),LEqual(Arg1,1)))\n
{\n
ECS4(0x00)\n
}\n
end;



Where should I call _OFF from now? Should I apply the "Call _OFF from _INI (SSDT)" patch just like you wrote? If yes, I can't apply that one to DSDT.dsl, it shows "0 Changes" (screenshot attached)

Searching for _INI:

mrousavy$ ls
DSDT.dsl SSDT-1.dsl SSDT-3.dsl SSDT-8.dsl
SSDT-0.dsl SSDT-2.dsl SSDT-7.dsl
mrousavy$ grep -l Method.*_INI *.dsl
DSDT.dsl


Btw: you have a typo in your guide, at the beginning of "Patching for discrete disable", you say "Calling _INI from _OFF" instead of _OFF from _INI..
 

Attachments

  • Screen Shot 2017-06-03 at 12.28.35.png
    Screen Shot 2017-06-03 at 12.28.35.png
    69.7 KB · Views: 87
  • ProblemReporting.zip
    2.1 MB · Views: 91
Last edited:
Okay so that's the patch I applied to my DSDT;

into method label _REG parent_hid PNP0C09 insert
begin
//added to turn nvidia/radeon off\n
If (LAnd(LEqual(Arg0,3),LEqual(Arg1,1)))\n
{\n
ECS4(0x00)\n
}\n
end;



Where should I call _OFF from now? Should I apply the "Call _OFF from _INI (SSDT)" patch just like you wrote? If yes, I can't apply that one to DSDT.dsl, it shows "0 Changes" (screenshot attached)

Searching for _INI:

mrousavy$ ls
DSDT.dsl SSDT-1.dsl SSDT-3.dsl SSDT-8.dsl
SSDT-0.dsl SSDT-2.dsl SSDT-7.dsl
mrousavy$ grep -l Method.*_INI *.dsl
DSDT.dsl


Btw: you have a typo in your guide, at the beginning of "Patching for discrete disable", you say "Calling _INI from _OFF" instead of _OFF from _INI..

Add an _INI method in the same SSDT as _OFF (same scope). Call _OFF from there.
 
Add an _INI method in the same SSDT as _OFF (same scope). Call _OFF from there.
I've got this currently:

//dGPU INI
Method (_INI, 0, NotSerialized) // _INI: Initialize
{
//added to turn nvidia/radeon off
_OFF()
}


But this does not look correct to me as all the other _INI Methods in DSDT have a Store(..) call inside the _INI method, do I have to call Store aswell? How? With what address?
 
I've got this currently:

//dGPU INI
Method (_INI, 0, NotSerialized) // _INI: Initialize
{
//added to turn nvidia/radeon off
_OFF()
}


But this does not look correct to me as all the other _INI Methods in DSDT have a Store(..) call inside the _INI method, do I have to call Store aswell? How? With what address?

Code in other _INI methods not relevant.
 
Code in other _INI methods not relevant.
Okay so I've disabled my dGPU successfully (couldn't find "NVIDIA" or "NVDA" in IOReg..), and I can successfully boot with Intel HD4600 (attached: Screenshot), but the BIOS option Switchable Graphics still resets itself every reboot :/
Is my config.plist correct? Do I need anything in ACPI or different SMBIOS or anything?

But: I do not yet have USB, Battery and Audio fixed - I am doing that right now maybe that'll change something.

Should I just use these guides?
USB: https://www.tonymacx86.com/threads/guide-10-11-usb-changes-and-solutions.173616/
Battery: https://www.tonymacx86.com/threads/guide-how-to-patch-dsdt-for-working-battery-status.116102/
Audio: https://www.******.com/r/hackintosh/comments/4e23w6/

Attached: Problem reporting
 

Attachments

  • ProblemReporting.zip
    2.9 MB · Views: 89
  • Screen Shot 2017-06-04 at 12.19.18.png
    Screen Shot 2017-06-04 at 12.19.18.png
    117.7 KB · Views: 90
Last edited:
Okay so I've disabled my dGPU successfully (couldn't find "NVIDIA" or "NVDA" in IOReg..), and I can successfully boot with Intel HD4600 (attached: Screenshot), but the BIOS option Switchable Graphics still resets itself every reboot :/
Is my config.plist correct? Do I need anything in ACPI or different SMBIOS or anything?

Maybe is BIOS issue. Do you have the latest?
Also, you could try without the RTC fix patch.

But: I do not yet have USB, Battery and Audio fixed - I am doing that right now maybe that'll change something.

Should I just use these guides?
USB: https://www.tonymacx86.com/threads/guide-10-11-usb-changes-and-solutions.173616/
Battery: https://www.tonymacx86.com/threads/guide-how-to-patch-dsdt-for-working-battery-status.116102/
Audio: https://www.******.com/r/hackintosh/comments/4e23w6/

See FAQ.
 
Status
Not open for further replies.
Back
Top