Jump to content

Asus G750JX: porting DSDT patches to SSDT or OC ACPI patches


osxfr33k

Recommended Posts

I will try in a few minutes getting ready for work and at the same time will try this.  My Laptop is Asus G750JX-DB71 Haswell Processor with Intel GPU disabled by Asus and only with Nvidia Discreet Graphics GPU GTX 770m.   Do you have more time over the weekend to do more testing?   I am US Central time maybe our times are different?

Link to comment
Share on other sites

Well all the patches I posted on my first post were weeks and weeks of hard work in 2014 by EmlyDinesh very famous developer from here and we spent weeks both him and I perfecting these patches specific to my laptop.  So the AsusSMC kext is for integrated graphics and not nvidia?   Can we start over with SSDT all I want to do is make 16 level FN key brightness patch for keys and lcd as SSDT. Also WiFi/BT wake sleep LED fix and battery patch all as SSDT. I have my LCD working flawless with Rehabman Apple backlight fixup which was meant for Intel GPU but I figured out on my own how to get it to work on my nvidia discreet GPU.  
 

I don’t want DSDT anymore for this laptop.  

Link to comment
Share on other sites

EFI.zip

Test this EFI .

 

If you do not start photos of the block , you have to try to use my basic acpi files and try to make mix in the config and with the kext PS2 , I remind you that in Hackintosh there are continuous evolutions , what you have done in 2014 may have been outdated and according to me in the EFI you have passed initial there are many errors ACPI .
Example you have 2 SSDT EC so duplicates , if you open SSDT PNLF read that it works on IGPU and you have it disabled by factory so it is NOT needed .


SSDT HPET without a rename in config section ACPI Patch will never work.

If you use SSDT EC, you don't need to rename in config EC0 to EC. 


If you use VoodooHDA I don't think you need any SSDT HDEF, I can still write things that are NOT good in your EFI and you can also answer that everything is fine for you, but technically I'm right.

 

The parts highlighted in the photo are NOT needed

 

2108984178_Schermata2021-03-20alle09_15_49.thumb.png.a621157fa11bb7867bd6417179e85906.png

 

  • Like 1
Link to comment
Share on other sites

It stops booting as before at "BuildActDevuceEntry exit" as in my screenshot on page 2 second or 3rd post.  I agree I forgot to remove XQ0E and XQ0F but in later EFI I changed patch to no only left for convenience.  I will explain why I had this because my DSDT had the patch and I wanted to disable that patch in DSDT and test the SSDT with _Q0E.  I agree no need to rename to EH01/02 since this is not being used on my Laptop.  Also agree the rename of GFX0 is not needed I don't remember why I did this and forgot to change to "no" I was doing some testing a while back and forgot about it.  Also agreed I am loading SSDT HPET I forgot to rename HPET to like XPET and agreed I don't need to rename EC0 to EC since using SSDT again an oversight on my part sorry about that.

 

I am trying to understand why you keep enabling this in OpenCore Config under ACPI/Delete CPU to yes, see below screenshot and explain to me please?  My CPU is Haswell i7-4700, I also I noticed you don't have not enabled Plugin SSDT in this EFI?

 

Trying to understand also when you use _DSM in SSDT you need _OSI Darwin?  Also why use DTGP at the end of the all in one patch SSDT?

 

One more thing are you saving Opencore Config in OpenCore Configurator or just viewing?  It has done something again I have no GUI, I think Opencore Configurator is doing something bad if you are saving or for some reason something is happening to resources?  Can you make changes with a plist editor maybe this is why it won't complete the boot?  I have used Clover Configurator for years and never noted and issues doing so even though developers would always warn not to open and save with it because it can introduce changes that were not in the original confi.plist.  Could something be happening with OpenCore Configurator making changes that you never you did, like the pictures below?  Are you changing anything in each section with Quirks because they are different from my original have a look and compare my original Config.plist with yours look at all the quirks in each section you will see changes.

 

 

239260082_ScreenShot2021-03-20at2_19_58PM.png.732de4a269cacef3bbe714b1759d93a4.png

 

 

My CPU CFG is unlocked but you keep changing back to Yes for AppleXcpmCfgLock or is OpenCore Configurator changing this to default?

 

 

 

1213883017_ScreenShot2021-03-20at2_34_31PM.png.82f9c3c87636005d5aea76102c3af187.png

 

 

 

Link to comment
Share on other sites

AsusSMC is not working on Nvidia only but I have AppleBacklightFixup from Rehabman working flawlessly all the way from Yosemite through Big Sur 11.2.1.  Was your intent to make AsusSMC work on Nvidia?

 

Here is my latest EFI and Ioreg I cleaned up a bit.   I see that I am not loading SSDT-USBX but USBX settings are in my USBports.kext.   Look over my EFI and Ioreg and tell me if its better now?   Can you help me make 16 level FN key SSDT patch work on Keyboard brightness instead of being in DSDT I want SSDT.  I looked at your patches on github for Rog GL703ge since the DSDT are similar to G750JX I used your ACPI rename patches for  _CSR HPET and TIMR and RTC.  I just now realized I did have all these ACPI fixes and SSDT patches in Clover and forgot to port them over to Opencore I am sorry about that .  My Clover under ACPI fixes has AddDTGP FixSBUS FixHPET addMCHC FixIPIC and addDTGP.  So I had all the right things in Clover I have just forgotten to bring these over to Opencore.  So now everything is complete except IPIC which seems to be named correctly according to ioreg so not sure if a fix is needed?

 

Here is what I have so far for 16 level keyboard brightness patch.  I don't think I have the Externals labelled correctly but it does compile correctly but does not work.  Only when DSDT is patched it works.

 

 

DefinitionBlock ("", "SSDT", 2, "hack", "16Level", 0x00000000)
{
    External (_SB_, DeviceObj)
    External (ATKP, DeviceObj)
    External (B0FF, IntObj)
    External (KBLV, IntObj)
    External (KBPW, IntObj)
    External (LPCB, DeviceObj)
    External (SB__.PCI0.LPCB.EC0_.WRAM, MethodObj)    // 2 Arguments

    Scope (_SB)
    {
        Name (BOFF, Zero)
        Method (SKBL, 1, NotSerialized)
        {
            If (((Arg0 == 0xED) | (Arg0 == 0xFD)))
            {
                If (((Arg0 == 0xED) & (BOFF == 0xEA)))
                {
                    Local0 = Zero
                    BOFF = Arg0
                }
                ElseIf (((Arg0 == 0xFD) & (BOFF == 0xFA)))
                {
                    Local0 = Zero
                    BOFF = Arg0
                }
                Else
                {
                    Return (BOFF) /* \_SB_.BOFF */
                }
            }
            ElseIf (((Arg0 == 0xEA) | (Arg0 == 0xFA)))
            {
                Local0 = KBLV /* External reference */
                BOFF = Arg0
            }
            Else
            {
                Local0 = Arg0
                KBLV = Arg0
            }

            Local1 = DerefOf (KBPW [Local0])
            \SB.PCI0.LPCB.EC0.WRAM (0x044B, Local1)
            Return (Local0)
        }

        Name (KBPW, Buffer (0x10)
        {
            /* 0000 */  0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77,  // .."3DUfw
            /* 0008 */  0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF   // ........
        })
        Method (GKBL, 1, NotSerialized)
        {
            If ((Arg0 == 0xFF))
            {
                Return (BOFF) /* \_SB_.BOFF */
            }

            Return (KBLV) /* External reference */
        }
    }
}

 

 

As you can see now the controller for SBUS is working with the SSDT I added in ACPI:

 

osxfr33k@osxfr33ks-MBP ~ % kextstat | grep -E "AppleSMBusController|AppleSMBusPCI"

Executing: /usr/bin/kmutil showloaded

No variant specified, falling back to release

  122    1 0xffffff7fa0683000 0x7000     0x7000     com.apple.driver.AppleSMBusController (1.0.18d1) D69C0758-0371-369E-88ED-E11402B91008 <55 14 13 6 5 3>

  144    0 0xffffff7fa068e000 0x1000     0x1000     com.apple.driver.AppleSMBusPCI (1.0.14d1) 08A4B6D9-54C6-3632-B72C-69FA0625A0AB <14 6 5 3>

osxfr33k@osxfr33ks-MBP ~ %

 

Edited 3/21/2021

 

I had the wrong Hex for _CRS, I used the one from Rog GL703ge realizing my mistake just now, so I ran iasl -l on my DSDT and now have the correct code replacing the two files below, sorry for the mistake.

 

 

 

 

osxfr33k’s MacBook Pro2.ioreg.zip EFI 2.zip

Link to comment
Share on other sites

I took out the patches from the DSDT only battery patch in DSDT.  Would I still need renames?   Tonight I will change DSDT to "No" and boot without it to see, if that still doesn't work I would need to know what to rename?   The 16 level patch I guess is tricky it sits itself below a method in the DSDT I can share that patched DSDT tonight so you can see where the patch sits if that is helpful or not?

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...