Jump to content

HELP patch DSDT to disable nvidia ASUS N551JM


noob9999
 Share

8 posts in this topic

Recommended Posts

...there are many asus laptops with same graphics cards.....write the exact Manufacturer type of your laptop, otherwise can no one help you.
 
otherwise install MacIASL.app or DSDT Editor.app and the patches package of RehabMan, there you will find everything for systems: https://github.com/RehabMan/Laptop-DSDT-Patch

If you have no experience with idsdt patching, then google for information and install everything step by step, ... the disable patch, check out the graphics-folder.... and so on.

Link to comment
Share on other sites

Hi,

 

Post all ACPI tables.

 

You can try adding this, but i doubt it will work....

   Device (NVOF)
    {
        Name (_ADR, 0x00010000)
        OperationRegion (RPCI, PCI_Config, Zero, 0xF0)
        Field (RPCI, DWordAcc, Lock, Preserve)
        {
                    Offset (0xB0), 
            ASPM,   2, 
                ,   2, 
            LNKD,   1
        }

        OperationRegion (SGOP, SystemMemory, 0x9CF88F18, 0x50)
        Field (SGOP, AnyAcc, Lock, Preserve)
        {
            EBAS,   32, 
            HLRS,   8, 
            PWEN,   8, 
            GBAS,   16
        }

        OperationRegion (GPIO, SystemIO, GBAS, 0x60)
        Field (GPIO, ByteAcc, Lock, Preserve)
        {
                    Offset (0x0C), 
            LVL0,   32, 
                    Offset (0x38), 
            LVL1,   32, 
                    Offset (0x48), 
            LVL2,   32
        }

        OperationRegion (VGAR, SystemMemory, EBAS, 0x0100)
        Field (VGAR, DWordAcc, NoLock, Preserve)
        {
            VREG,   2048
        }

        Name (VGAB, Buffer (0x0100)
        {
            0x00
        })
        OperationRegion (GPCR, SystemMemory, 0xE00F804C, One)
        Field (GPCR, AnyAcc, NoLock, Preserve)
        {
            GPCT,   1
        }

        OperationRegion (APMR, SystemIO, 0xB2, 0x02)
        Field (APMR, WordAcc, NoLock, Preserve)
        {
            APMS,   8
        }

        OperationRegion (SKPR, SystemMemory, 0xE00000DC, 0x04)
        Field (SKPR, AnyAcc, NoLock, Preserve)
        {
            SKPD,   32
        }

        Method (_INI, 0, Serialized)
        {
            _OFF ()
        }

        Method (_OFF, 0, Serialized)
        {
            Store (VREG, VGAB)
            Store (One, LNKD)
            SGPO (HLRS, One)
            SGPO (PWEN, Zero)
        }

        Method (_ON, 0, Serialized)
        {
            SGPO (PWEN, One)
            SGPO (HLRS, Zero)
            Store (Zero, LNKD)
            Store (VGAB, VREG)
        }

        Method (SGPO, 2, Serialized)
        {
            ShiftRight (Arg0, 0x07, Local3)
            And (Arg0, 0x7F, Arg0)
            If (LEqual (Local3, Zero))
            {
                Not (Arg1, Local3)
                And (Local3, One, Local3)
            }
            Else
            {
                And (Arg1, One, Local3)
            }

            If (LLess (Arg0, 0x20))
            {
                ShiftLeft (Local3, Arg0, Local0)
                ShiftLeft (One, Arg0, Local1)
                And (LVL0, Not (Local1), Local2)
                If (LEqual (GPCT, One))
                {
                    Store (0x0C, APMS)
                    Or (Local2, Local0, SKPD)
                    Store (Zero, GPCT)
                }
                Else
                {
                    Or (Local2, Local0, LVL0)
                }
            }
            Else
            {
                If (LLess (Arg0, 0x40))
                {
                    ShiftLeft (Local3, Subtract (Arg0, 0x20), Local0)
                    ShiftLeft (One, Subtract (Arg0, 0x20), Local1)
                    And (LVL1, Not (Local1), Local2)
                    If (LEqual (GPCT, One))
                    {
                        Store (0x38, APMS)
                        Or (Local2, Local0, SKPD)
                        Store (Zero, GPCT)
                    }
                    Else
                    {
                        Or (Local2, Local0, LVL1)
                    }
                }
                Else
                {
                    ShiftLeft (Local3, Subtract (Arg0, 0x40), Local0)
                    ShiftLeft (One, Subtract (Arg0, 0x40), Local1)
                    And (LVL2, Not (Local1), Local2)
                    If (LEqual (GPCT, One))
                    {
                        Store (0x48, APMS)
                        Or (Local2, Local0, SKPD)
                        Store (Zero, GPCT)
                    }
                    Else
                    {
                        Or (Local2, Local0, LVL2)
                    }
                }
            }

            Return (One)
        }
    }

  • Like 1
Link to comment
Share on other sites

 

Hi,

 

Post all ACPI tables.

 

You can try adding this, but i doubt it will work....

   Device (NVOF)
    {
        Name (_ADR, 0x00010000)
        OperationRegion (RPCI, PCI_Config, Zero, 0xF0)
        Field (RPCI, DWordAcc, Lock, Preserve)
        {
                    Offset (0xB0), 
            ASPM,   2, 
                ,   2, 
            LNKD,   1
        }

        OperationRegion (SGOP, SystemMemory, 0x9CF88F18, 0x50)
        Field (SGOP, AnyAcc, Lock, Preserve)
        {
            EBAS,   32, 
            HLRS,   8, 
            PWEN,   8, 
            GBAS,   16
        }

        OperationRegion (GPIO, SystemIO, GBAS, 0x60)
        Field (GPIO, ByteAcc, Lock, Preserve)
        {
                    Offset (0x0C), 
            LVL0,   32, 
                    Offset (0x38), 
            LVL1,   32, 
                    Offset (0x48), 
            LVL2,   32
        }

        OperationRegion (VGAR, SystemMemory, EBAS, 0x0100)
        Field (VGAR, DWordAcc, NoLock, Preserve)
        {
            VREG,   2048
        }

        Name (VGAB, Buffer (0x0100)
        {
            0x00
        })
        OperationRegion (GPCR, SystemMemory, 0xE00F804C, One)
        Field (GPCR, AnyAcc, NoLock, Preserve)
        {
            GPCT,   1
        }

        OperationRegion (APMR, SystemIO, 0xB2, 0x02)
        Field (APMR, WordAcc, NoLock, Preserve)
        {
            APMS,   8
        }

        OperationRegion (SKPR, SystemMemory, 0xE00000DC, 0x04)
        Field (SKPR, AnyAcc, NoLock, Preserve)
        {
            SKPD,   32
        }

        Method (_INI, 0, Serialized)
        {
            _OFF ()
        }

        Method (_OFF, 0, Serialized)
        {
            Store (VREG, VGAB)
            Store (One, LNKD)
            SGPO (HLRS, One)
            SGPO (PWEN, Zero)
        }

        Method (_ON, 0, Serialized)
        {
            SGPO (PWEN, One)
            SGPO (HLRS, Zero)
            Store (Zero, LNKD)
            Store (VGAB, VREG)
        }

        Method (SGPO, 2, Serialized)
        {
            ShiftRight (Arg0, 0x07, Local3)
            And (Arg0, 0x7F, Arg0)
            If (LEqual (Local3, Zero))
            {
                Not (Arg1, Local3)
                And (Local3, One, Local3)
            }
            Else
            {
                And (Arg1, One, Local3)
            }

            If (LLess (Arg0, 0x20))
            {
                ShiftLeft (Local3, Arg0, Local0)
                ShiftLeft (One, Arg0, Local1)
                And (LVL0, Not (Local1), Local2)
                If (LEqual (GPCT, One))
                {
                    Store (0x0C, APMS)
                    Or (Local2, Local0, SKPD)
                    Store (Zero, GPCT)
                }
                Else
                {
                    Or (Local2, Local0, LVL0)
                }
            }
            Else
            {
                If (LLess (Arg0, 0x40))
                {
                    ShiftLeft (Local3, Subtract (Arg0, 0x20), Local0)
                    ShiftLeft (One, Subtract (Arg0, 0x20), Local1)
                    And (LVL1, Not (Local1), Local2)
                    If (LEqual (GPCT, One))
                    {
                        Store (0x38, APMS)
                        Or (Local2, Local0, SKPD)
                        Store (Zero, GPCT)
                    }
                    Else
                    {
                        Or (Local2, Local0, LVL1)
                    }
                }
                Else
                {
                    ShiftLeft (Local3, Subtract (Arg0, 0x40), Local0)
                    ShiftLeft (One, Subtract (Arg0, 0x40), Local1)
                    And (LVL2, Not (Local1), Local2)
                    If (LEqual (GPCT, One))
                    {
                        Store (0x48, APMS)
                        Or (Local2, Local0, SKPD)
                        Store (Zero, GPCT)
                    }
                    Else
                    {
                        Or (Local2, Local0, LVL2)
                    }
                }
            }

            Return (One)
        }
    }

https://drive.google.com/folderview?id=0B4CJUQCBa1C2fjcxVnJwVkRMaWd5c2hrS1hQWEtSbWdEdnpGdmJDT296QW9GWGVGalZNREU&usp=sharing

this is all ACPI file that i'm using on my hackintosh and it work fine.

Link to comment
Share on other sites

Hi,

 

Try this DSDT with your SSDT files.

 

I need to know if the card is disabled on boot, if so, wake/sleep methods need to be patched to make wake/sleep work.

 

What has been changed: 

Added:

External (\_SB_.PCI0.PEG0.PEGP.SGOF)

To _SB.PCI0.INI.

 

The method is called from the SSDT-7.aml, and should disable the card.

DSDT-5.aml.zip

Link to comment
Share on other sites

 Share

×
×
  • Create New...