Contribute
Register

[HELP] Disable HD 7650M in DSDT

Status
Not open for further replies.
Joined
Apr 12, 2011
Messages
258
Motherboard
Probook 4540s
CPU
Intel(R) Core(TM) i7-3632QM CPU @ 2.20GHz, 2201 Mhz
Graphics
AMD Raden HD 7650m
Mobile Phone
  1. iOS
I'm using MaciASL 1.3 too. It's strange that I can apply patch (ACPI 4.0) and you don't.

Your problem is the patch:
Code:
into definitionblock code_regex External\s+\(\\_SB_\.PCI0\.GFX0\.DD02\._BCM,\s+IntObj\) replace_matched begin External(\\_SB_.PCI0.GFX0.DD02._BCM, MethodObj)
end;

You can edit by hand by changing this line from IntObj to MethodObj
Code:
External (\_SB_.PCI0.GFX0.DD02._BCM, IntObj)

Yes I am now able to patch it with selecting v4.0 (had to quit before using it again) only. Did not change the parameter though. Thanks!
 
Joined
Apr 12, 2011
Messages
258
Motherboard
Probook 4540s
CPU
Intel(R) Core(TM) i7-3632QM CPU @ 2.20GHz, 2201 Mhz
Graphics
AMD Raden HD 7650m
Mobile Phone
  1. iOS
using now Patched SSD-1 + Patched DSDT but I couldn't tell whether its working or not.
 
Joined
Oct 22, 2012
Messages
3,464
Motherboard
HP Elitebook 8470p
CPU
i5 3320M
Graphics
HD 4000, 1600x900
Mobile Phone
  1. iOS
Do you see it in System Information?
 
Joined
Oct 22, 2012
Messages
3,464
Motherboard
HP Elitebook 8470p
CPU
i5 3320M
Graphics
HD 4000, 1600x900
Mobile Phone
  1. iOS
Yes indeed.

So the patch does not work. Try apply the dsdt patch to your PBI's dsdt, and remove SSDT containing Graphics.

Code:
into definitionblock code_regex External\s+\(\\_SB_\.PCI0\.PEGP\.DGFX\.SVID\) remove_matched;

into method label _OFF parent_adr 0x00010000 remove_entry;
into device name_adr 0x00010000 insert
begin
OperationRegion (RPCX, SystemMemory, \XBAS,0x9000)\n
Field (RPCX, DWordAcc, NoLock, Preserve)\n
            {\n
                        Offset (0x8214), \n
                        Offset (0x8216), \n
                LNKS,   4, \n
                        Offset (0x8C20), \n
                    ,   4, \n
                AFE4,   1, \n
                AFE5,   1\n
            }\n
end;

into method label _OFF parent_label PEGP.DGFX remove_entry;
into method label SGPO parent_label PEGP.DGFX remove_entry;
into device label PEGP.DGFX insert
begin
Name (ELCT, Zero)\n
        Name (HVID, Zero)\n
        Name (HDID, Zero)\n
        OperationRegion (PCIS, PCI_Config, Zero, 0xF0)\n
        Field (PCIS, DWordAcc, Lock, Preserve)\n
        {\n
            DVID,   16, \n
                    Offset (0x2C), \n
            SVID,   16, \n
            SDID,   16, \n
                    Offset (0x4C), \n
            WVID,   16, \n
            WDID,   16\n
        }\n
OperationRegion (PCAP, PCI_Config, \EECP,0x14)\n
Field (PCAP, DWordAcc, NoLock, Preserve)\n
            {\n
                        Offset (0x10), \n
                LCTL,   16\n
            }\n
OperationRegion (GPIO, SystemIO, \GBAS,0x60)\n
Field (GPIO, ByteAcc, Lock, Preserve)\n
            {\n
                        Offset (0x0C), \n
                LVL0,   32, \n
                        Offset (0x38), \n
                LVL1,   32, \n
                        Offset (0x48), \n
                LVL2,   32\n
            }\n
Method (_OFF, 0, Serialized)\n
        {\n
            Store (LCTL, ELCT)\n
            Store (SVID, HVID)\n
            Store (SDID, HDID)\n
            Store (One, LNKD)\n
            Store (Zero, AFE4)\n
            Store (One, AFE5)\n
            SGPO (HLRS, Zero)\n
            SGPO (PWEN, Zero)\n
            Notify (\_SB.PCI0.PEGP, Zero)\n
            Return (Zero)\n
        }\n
Method (SGPO, 2, Serialized)\n
        {\n
            And (Arg0, 0x7F, Arg0)\n
            If (LEqual (Arg1, Zero))\n
            {\n
                Store (Zero, Local3)\n
            }\n
            Else\n
            {\n
                Store (One, Local3)\n
            }\n
            If (LLess (Arg0, 0x20))\n
            {\n
                ShiftLeft (Local3, Arg0, Local0)\n
                ShiftLeft (One, Arg0, Local1)\n
                And (\_SB.PCI0.PEGP.DGFX.LVL0, Not (Local1), Local2)\n
                Or (Local2, Local0, \_SB.PCI0.PEGP.DGFX.LVL0)\n
            }\n
            Else\n
            {\n
                If (LLess (Arg0, 0x40))\n
                {\n
                    ShiftLeft (Local3, Subtract (Arg0, 0x20), Local0)\n
                    ShiftLeft (One, Subtract (Arg0, 0x20), Local1)\n
                    And (\_SB.PCI0.PEGP.DGFX.LVL1, Not (Local1), Local2)\n
                    Or (Local2, Local0, \_SB.PCI0.PEGP.DGFX.LVL1)\n
                }\n
                Else\n
                {\n
                    ShiftLeft (Local3, Subtract (Arg0, 0x40), Local0)\n
                    ShiftLeft (One, Subtract (Arg0, 0x40), Local1)\n
                    And (\_SB.PCI0.PEGP.DGFX.LVL2, Not (Local1), Local2)\n
                    Or (Local2, Local0, \_SB.PCI0.PEGP.DGFX.LVL2)\n
                }\n
            }\n
            Return (One)\n
        }\n
end;

into method label _INI parent_label _SB code_regex . insert
begin
\_SB_.PCI0.PEGP.DGFX._OFF()\n
end;
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
184,624
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
Compilation error, see screenshot attached.

Here is my acpi tables https://dl.dropboxusercontent.com/u/19583075/ACPI Tables.zip
Note that you can find SgTabl in SSDT-5.aml in 'All clean' folder.

I just did it here and it worked fine. You must be doing something wrong. Why 'SSDT-1.aml' (previously patched?) when the actual file is 'SSDT-5.aml'. Try with the actual files you just posted.

- - - Updated - - -

using now Patched SSD-1 + Patched DSDT but I couldn't tell whether its working or not.

Post ioreg: http://www.tonymacx86.com/audio/58368-guide-how-make-copy-ioreg.html
 
Joined
Apr 12, 2011
Messages
258
Motherboard
Probook 4540s
CPU
Intel(R) Core(TM) i7-3632QM CPU @ 2.20GHz, 2201 Mhz
Graphics
AMD Raden HD 7650m
Mobile Phone
  1. iOS
So the patch does not work. Try apply the dsdt patch to your PBI's dsdt, and remove SSDT containing Graphics.

Code:
into definitionblock code_regex External\s+\(\\_SB_\.PCI0\.PEGP\.DGFX\.SVID\) remove_matched;

into method label _OFF parent_adr 0x00010000 remove_entry;
into device name_adr 0x00010000 insert
begin
OperationRegion (RPCX, SystemMemory, \XBAS,0x9000)\n
Field (RPCX, DWordAcc, NoLock, Preserve)\n
            {\n
                        Offset (0x8214), \n
                        Offset (0x8216), \n
                LNKS,   4, \n
                        Offset (0x8C20), \n
                    ,   4, \n
                AFE4,   1, \n
                AFE5,   1\n
            }\n
end;

into method label _OFF parent_label PEGP.DGFX remove_entry;
into method label SGPO parent_label PEGP.DGFX remove_entry;
into device label PEGP.DGFX insert
begin
Name (ELCT, Zero)\n
        Name (HVID, Zero)\n
        Name (HDID, Zero)\n
        OperationRegion (PCIS, PCI_Config, Zero, 0xF0)\n
        Field (PCIS, DWordAcc, Lock, Preserve)\n
        {\n
            DVID,   16, \n
                    Offset (0x2C), \n
            SVID,   16, \n
            SDID,   16, \n
                    Offset (0x4C), \n
            WVID,   16, \n
            WDID,   16\n
        }\n
OperationRegion (PCAP, PCI_Config, \EECP,0x14)\n
Field (PCAP, DWordAcc, NoLock, Preserve)\n
            {\n
                        Offset (0x10), \n
                LCTL,   16\n
            }\n
OperationRegion (GPIO, SystemIO, \GBAS,0x60)\n
Field (GPIO, ByteAcc, Lock, Preserve)\n
            {\n
                        Offset (0x0C), \n
                LVL0,   32, \n
                        Offset (0x38), \n
                LVL1,   32, \n
                        Offset (0x48), \n
                LVL2,   32\n
            }\n
Method (_OFF, 0, Serialized)\n
        {\n
            Store (LCTL, ELCT)\n
            Store (SVID, HVID)\n
            Store (SDID, HDID)\n
            Store (One, LNKD)\n
            Store (Zero, AFE4)\n
            Store (One, AFE5)\n
            SGPO (HLRS, Zero)\n
            SGPO (PWEN, Zero)\n
            Notify (\_SB.PCI0.PEGP, Zero)\n
            Return (Zero)\n
        }\n
Method (SGPO, 2, Serialized)\n
        {\n
            And (Arg0, 0x7F, Arg0)\n
            If (LEqual (Arg1, Zero))\n
            {\n
                Store (Zero, Local3)\n
            }\n
            Else\n
            {\n
                Store (One, Local3)\n
            }\n
            If (LLess (Arg0, 0x20))\n
            {\n
                ShiftLeft (Local3, Arg0, Local0)\n
                ShiftLeft (One, Arg0, Local1)\n
                And (\_SB.PCI0.PEGP.DGFX.LVL0, Not (Local1), Local2)\n
                Or (Local2, Local0, \_SB.PCI0.PEGP.DGFX.LVL0)\n
            }\n
            Else\n
            {\n
                If (LLess (Arg0, 0x40))\n
                {\n
                    ShiftLeft (Local3, Subtract (Arg0, 0x20), Local0)\n
                    ShiftLeft (One, Subtract (Arg0, 0x20), Local1)\n
                    And (\_SB.PCI0.PEGP.DGFX.LVL1, Not (Local1), Local2)\n
                    Or (Local2, Local0, \_SB.PCI0.PEGP.DGFX.LVL1)\n
                }\n
                Else\n
                {\n
                    ShiftLeft (Local3, Subtract (Arg0, 0x40), Local0)\n
                    ShiftLeft (One, Subtract (Arg0, 0x40), Local1)\n
                    And (\_SB.PCI0.PEGP.DGFX.LVL2, Not (Local1), Local2)\n
                    Or (Local2, Local0, \_SB.PCI0.PEGP.DGFX.LVL2)\n
                }\n
            }\n
            Return (One)\n
        }\n
end;

into method label _INI parent_label _SB code_regex . insert
begin
\_SB_.PCI0.PEGP.DGFX._OFF()\n
end;

Cool it worked! No ATI card in System Information!
 
Joined
Oct 22, 2012
Messages
3,464
Motherboard
HP Elitebook 8470p
CPU
i5 3320M
Graphics
HD 4000, 1600x900
Mobile Phone
  1. iOS
I just did it here and it worked fine. You must be doing something wrong. Why 'SSDT-1.aml' (previously patched?) when the actual file is 'SSDT-5.aml'. Try with the actual files you just posted.

- - - Updated - - -



Post ioreg: http://www.tonymacx86.com/audio/58368-guide-how-make-copy-ioreg.html

He patched it successfully now:
http://www.tonymacx86.com/hp-probook-mavericks/118047-help-disable-hd-7650m-dsdt-6.html#post721792

- - - Updated - - -

Cool it worked! No ATI card in System Information!

The problem is that the patch only works with your system (and maybe other 4540s + 7650 + same BIOS).
 
Joined
Apr 12, 2011
Messages
258
Motherboard
Probook 4540s
CPU
Intel(R) Core(TM) i7-3632QM CPU @ 2.20GHz, 2201 Mhz
Graphics
AMD Raden HD 7650m
Mobile Phone
  1. iOS
Joined
Apr 12, 2011
Messages
258
Motherboard
Probook 4540s
CPU
Intel(R) Core(TM) i7-3632QM CPU @ 2.20GHz, 2201 Mhz
Graphics
AMD Raden HD 7650m
Mobile Phone
  1. iOS
The problem is that the patch only works with your system (and maybe other 4540s + 7650 + same BIOS).

Hmm, I remember when I used to have Dell 1510, I used a generic DSDT patch for my Nvidia to turn it off. I took it from insanelymac forum. I'm sure we can come up with a generic way.

Btw CPU temperatures are dropped 5-7c which was the main reason I wanted it off. Feeling a smoothness in overall performance as well.
 
Status
Not open for further replies.
Top