Contribute
Register

[solved] H77N-WIFI ACPI Patching SSDTs

Status
Not open for further replies.
Joined
Jun 9, 2013
Messages
10,289
Motherboard
ASUS ROG STRIX Z390-F GAMING
CPU
i5 8500
Graphics
RTX 570
Mac
  1. MacBook
  2. Mac mini
Mobile Phone
  1. Android
  2. iOS
Hi Rehabman. Ive got quite far I've implemented IMEI, IGPU correctly haven't done Frame buffer patches in KextToPatch yet. However I've also implemented AppleLPC as the Device ID isn't native requires to be spoofed with pci8086,1e44. Ive also implemented AAPL Values for both EH01 & EH02 also XHC Controllers, EC Controller & implemented SMBUS DVL0, MCHC & Renamed SAT0 to SATA. However I've noticed up on boot in Verbose mode there are errors I removed all SSDTs I've implemented but they're still there. Im having some trouble with SSDT-IGPU to implement hda-gfx id rather put everything in one SSDT instead of doing Capri injection via the config makes it a bit tidier. I was wondering if you could help me with SSDT-IGPU and those ACPI errors at boot.

IMG_1290.PNG



All files will be in attachment (Upload a File).

Thank you.
 

Attachments

  • files.zip
    1.8 MB · Views: 146
Hi Rehabman. Ive got quite far I've implemented IMEI, IGPU correctly haven't done Frame buffer patches in KextToPatch yet. However I've also implemented AppleLPC as the Device ID isn't native requires to be spoofed with pci8086,1e44. Ive also implemented AAPL Values for both EH01 & EH02 also XHC Controllers, EC Controller & implemented SMBUS DVL0, MCHC & Renamed SAT0 to SATA. However I've noticed up on boot in Verbose mode there are errors I removed all SSDTs I've implemented but they're still there. Im having some trouble with SSDT-IGPU to implement hda-gfx id rather put everything in one SSDT instead of doing Capri injection via the config makes it a bit tidier. I was wondering if you could help me with SSDT-IGPU and those ACPI errors at boot.

View attachment 277133


All files will be in attachment (Upload a File).

Thank you.

config.plist/ACPI/SSDT/Generate=true conflicts with ACPI/patched/SSDT.aml.
With SSDT.aml from ssdtPRgen.sh, Generate should be false.

I don't see any issue with SSDT-IGPU.aml, and you're ioreg shows you're not using it anyway.

Using the _OSI->XOSI patch without SSDT-XOSI.aml is not valid.
 
config.plist/ACPI/SSDT/Generate=true conflicts with ACPI/patched/SSDT.aml.
With SSDT.aml from ssdtPRgen.sh, Generate should be false.

I don't see any issue with SSDT-IGPU.aml, and you're ioreg shows you're not using it anyway.

Using the _OSI->XOSI patch without SSDT-XOSI.aml is not valid.

The errors have now gone when removing Generate/True. Fixed _OSI->XOSI. How ever when implementing SSDT-IGPU I get no QE/CI. Gets stuck at this part then loads after couple of seconds showing with just display 3MB.

IMG_1291.JPG


Will upload new Files.
 
Last edited:

Attachments

  • files 2.zip
    1.7 MB · Views: 90
SSDT-IGPU.aml is wrong.
Your device-id is 0x0162. You have only data for 0x0166.

Here are all the files for you mate. Must of made a mistake. Ill Take a look at that now.
 

Attachments

  • Files 3.zip
    1.8 MB · Views: 86
SSDT-IGPU.aml is wrong.
Your device-id is 0x0162. You have only data for 0x0166.

You my friend are amazing. Thats fixed the problem. :D Changed 0x0166 to 0x0162 has fixed the problem. My problem is now theres no HDMI Audio but I guess thats caused by not having Frame Buffer patches? Im going to be using both HDMI Ports which Framebuffer edits would I need?

Code:
DefinitionBlock ("", "SSDT", 2, "hack", "igpu", 0x00000000)
{
    External (_SB_.PCI0.IGPU, DeviceObj)    // (from opcode)

    Scope (_SB.PCI0.IGPU)
    {
        OperationRegion (IGD4, PCI_Config, Zero, 0x14)
        Field (IGD4, AnyAcc, NoLock, Preserve)
        {
            Offset (0x02),
            GDID,   16,
            Offset (0x10),
            BAR1,   32
        }

        Name (GIDL, Package (0x03)
        {
            0x0162,
            Zero,
            Package (0x06)
            {
                "AAPL,ig-platform-id",
                Buffer (0x04)
                {
                     0x0A, 0x00, 0x66, 0x01                        
                },

                "model",
                Buffer (0x17)
                {
                    "Intel HD Graphics 4000"
                },

                "hda-gfx",
                Buffer (0x0A)
                {
                    "onboard-1"
                }
            }
        })
        Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
        {
            If (LNot (Arg2))
            {
                Return (Buffer (One)
                {
                     0x03                                          
                })
            }

            Store (Match (GIDL, MEQ, GDID, MTR, Zero, Zero), Local0)
            If (LNotEqual (Ones, Local0))
            {
                Store (Match (GIDL, MEQ, Zero, MTR, Zero, Add (Local0, One)), Local0)
                Return (DerefOf (Index (GIDL, Add (Local0, One))))
            }

            Return (Package (0x00) {})
        }
    }
}
 

Attachments

  • files.zip
    2.4 MB · Views: 92
Followed the guide for Frambuffer Patches. Could you look at my work and tell me what you think mate? Ive attached Both Ioregs one without Patches the other with Patches and Config with the Patches.

According to the ioreg, @0, @1 patched for HDMI connectory-type=<00 08 00 00>.
@2 not patched, still shows DP <00 04 00 00>
No monitor connected to @0, just @1 and @2.
 
Status
Not open for further replies.
Back
Top