DSDT SSDT patches - fidele007/Asus-ROG-GL552VW-Hackintosh GitHub Wiki

The DSDT and SSDTs below are included in CLOVER/ACPI/patched. If you want to apply the patches yourself, follow this guide to extract all ACPI files so that they can be edited.

DSDT

Common patches:

  • [bat] ASUS G75VW
  • [sys] Fix _WAK Arg0 v2
  • [sys] HPET Fix
  • [sys] SMBUS Fix
  • [sys] IRQ Fix
  • [sys] RTC Fix
  • [sys] OS Check Fix Windows 8
  • [sys] Fix Mutex with non-zero SyncLevel
  • [usb] 7-series/8-series USB
  • [usb] USB3_PRW 0x6D Skylake (instant wake)
  • [sys] Skylake LPC

Note : With BIOS v304, applying [sys] Skylake LPC causes compilation errors due to a duplicated method name in _SB.PCI0.LPCB. Removing it should resolve the errors.


Specific patches which are needed for AsusNBFnKeys kext

  • Keyboard Backlight (patch updated with credits to baobaoit):
# Patch by EMlyDinEsH (www.osxlatitude.com)
# Enables 4 keyboard backlight levels control to work using my kexts AsusNBFnKeys and Smart Touchpad

# Insert backlight auto off control sync field for Smart Touchpad and Asus Fn Keys driver
into device label ATKD code_regex Name\s\(BOFF,\sZero\) remove_matched;
into device label ATKD insert begin Name (BOFF, Zero) end;

# Insert method SKBL for setting keyboard backlight level
into method label SKBL parent_label ATKD remove_entry;
into Device label ATKD insert begin
Method (SKBL, 1, NotSerialized)\n
            {\n
                If (Or (LEqual (Arg0, 0xED), LEqual (Arg0, 0xFD)))\n
                {\n
                    If (And (LEqual (Arg0, 0xED), LEqual (BOFF, 0xEA)))\n
                    {\n
                        Store (Zero, Local0)\n
                        Store (Arg0, BOFF)\n
                    }\n
                    Else\n
                    {\n
                        If (And (LEqual (Arg0, 0xFD), LEqual (BOFF, 0xFA)))\n
                        {\n
                            Store (Zero, Local0)\n
                            Store (Arg0, BOFF)\n
                        }\n
                        Else\n
                        {\n
                            Return (BOFF)\n
                        }\n
                    }\n
                }\n
                Else\n
                {\n
                    If (Or (LEqual (Arg0, 0xEA), LEqual (Arg0, 0xFA)))\n
                    {\n
                        Store (KBLV, Local0)\n
                        Store (Arg0, BOFF)\n
                    }\n
                    Else\n
                    {\n
                        Store (Arg0, Local0)\n
                        Store (Arg0, KBLV)\n
                    }\n
                }\n

                Store (DerefOf (Index (PWKB, Local0)), Local1)\n
                ^^PCI0.LPCB.EC0.WRAM (0x04B1, Local1)\n
                ^^PCI0.LPCB.EC0.WRAM (0x044B, Local1)\n
                Return (Local0)\n
            }\n
end;

# Insert method GKBL for reading keyboard backlight level
into method label GKBL parent_label ATKD remove_entry;
into Device label ATKD insert begin
Method (GKBL, 1, NotSerialized)\n
            {\n
               If (LEqual (Arg0, 0xFF))\n
                {\n
                    Return (BOFF)\n
                }\n

                Return (KBLV)\n
            }\n
end;
  • Fn Backlit Brightness Keys Patch:
# Patch by EMlyDinEsH (OSXLatitude)
# Enables Fn brightness keys to work with my kext AsusNBFnKeys

# Replacing method _Q0E with code for Brightness down key to work
into Method label _Q0E replace_content begin
            If (ATKP)\n
                {\n
                  ^^^^ATKD.IANE (0x20)\n
                }
end;

# Replacing method _Q0F with code for Brightness up key to work
into Method label _Q0F replace_content begin
            If (ATKP)\n
                {\n
                  ^^^^ATKD.IANE (0x10)\n
                }
end;

Disabling discrete graphics card

It's a good idea to disable the NVIDIA discrete graphics card since it is not working anyway. Besides, it can improve your battery life and get better power management. RehabMan wrote a good guide on how disabling the discrete graphics works, but unfortunately it does not apply to this laptop. Instead, follow this guide to disable it.

SSDTs

  • SSDT-PNLF.aml and AppleBacklightFixup.kext for brightness patch according to RehabMan's guide.
  • SSDT-USB.aml for USB port patch thanks to Rehabman's guide.
  • SSDT-CX20752.aml has been removed since I could not get the internal microphone to work with this patch. Instead, I got it working by manually modifying the Info.plist file in CodecCommander.kext to include the custom commands.