Contribute
Register

Intel HD 4600 system restart when plugging hdmi

Status
Not open for further replies.
Again.. Strong NEGATIVE... My setup is flawless minus the Intel HDMI output not working. I've been building hackintoshes for 11 years now my friend. ELEVEN..

You're config is very messy. Using patches with patches is a bad idea.
 
This is the SSDT-LPC its on my Fork. which I've done myself. Ive tried it on Z97/H97 boards which were Gigabyte, ASUS, Asrock and works perfectly fine. I think its something up with his setup with Clover. LPC device on Z97/H97 comes under LPCB@1F this SSDT is correct.

Your SSDT will not work if there is a _DSM already present at scope _SB.PCI0.LPCB (rename or deletion needed in that case).

Note also that LPCB is an arbitrary choice and all BIOS vendors may not choose the same name (LPCB is quite common though).
Everything should be verified.

Note also that only the "compatible"="pci8086,8c4b" must be injected (AppleLPC uses IONameMatch). Although it isn't needed currently, it is not a bad idea to inject also "device-id" just in case a future version of AppleLPC switches to IOPCIPrimaryMatch. The other properties you are injecting are not needed.

Also, plenty of other mistakes people could make... such as not configuring Clover to load the SSDT correctly (always check Clover bootlog to see that it loaded).

Finally, note that my SSDT-LPC works with 7-series too (and 100-series although probably not needed).

Note: A "fork" is not something you have created yourself. A "fork" is something created by someone one person and modified by another. As an example, my VoodooPS2Controller.kext is a "fork" as it was originally modified from another version of VoodooPS2Controller (originally created at NeXT). As is my ACPIBatteryManager, ACPIBacklight, and FakeSMC, etc.. And unlike my IntelBacklight.kext, USBInjectAll.kext, etc which were original creations by me. If someone was to modify and publish their own versions of those originals, the modified versions would be a "fork".
 
Last edited:
Your SSDT will not work if there is a _DSM already present at scope _SB.PCI0.LPCB (rename or deletion needed in that case).

Note also that LPCB is an arbitrary choice and all BIOS vendors may not choose the same name (LPCB is quite common though).
Everything should be verified.

Note also that only the "compatible"="pci8086,8c4b" must be injected (AppleLPC uses IONameMatch). Although it isn't needed currently, it is not a bad idea to inject also "device-id" just in case a future version of AppleLPC switches to IOPCIPrimaryMatch. The other properties you are injecting are not needed.

Also, plenty of other mistakes people could make... such as not configuring Clover to load the SSDT correctly (always check Clover bootlog to see that it loaded).

Finally, note that my SSDT-LPC works with 7-series too (and 100-series although probably not needed).

Note: A "fork" is not something you have created yourself. A "fork" is something created by someone one person and modified by another.

Its strange as you said about Series 100. Ive never seen AppleLPC loaded on Series 100 desktops I've tried SSDT-LPC on doesn't have _DSM i extracted DSDT from ACPI and checked but didn't see _DSM at all so i didn't bother about that. Did you check my SSDT-LPC? The state of the config which was attached doesn't help neither tbh.
 
Its strange as you said about Series 100. Ive never seen AppleLPC loaded on Series 100 desktops

It has solved some problems with some Skylake laptops. So far, not very many Skylake machines from Apple, but that should change soon.

I've tried SSDT-LPC on doesn't have _DSM i extracted DSDT from ACPI and checked but didn't see _DSM at all so i didn't bother about that.

The _DSM can also live in an OEM SSDT. But not all machines will have it (or not have it). Requires a detailed look at all native DSDT+SSDTs.

Did you check my SSDT-LPC?

I did. Hence my comments regarding unneeded properties.

The state of the config which was attached doesn't help neither tbh.

There are some things I would not tend to use, but it is not that messy.

A few obvious mistakes:
- ig-platform-id=0d220003 which should be 0x0d220003 (it still works as intended because 0d220003 is interpreted as zero, which is interpreted as "unspecified", which means the default is applied... and... the default is... wait for it... 0x0d220003).
- port limit patch is being used (which, of course, is a mistake, except for use in port discovery)
- power management is wrong (should use ssdtPRgen.sh not ACPI/SSDT/Generate)

Not sure what SlpSmiAtWake does. Nor why PatchAPIC is needed (or what it does). These would require investigation/research (eg. reading the source code for Clover).
 
It has solved some problems with some Skylake laptops. So far, not very many Skylake machines from Apple, but that should change soon.



The _DSM can also live in an OEM SSDT. But not all machines will have it (or not have it). Requires a detailed look at all native DSDT+SSDTs.



I did. Hence my comments regarding unneeded properties.



There are some things I would not tend to use, but it is not that messy.

A few obvious mistakes:
- ig-platform-id=0d220003 which should be 0x0d220003 (it still works as intended because 0d220003 is interpreted as zero, which is interpreted as "unspecified", which means the default is applied... and... the default is... wait for it... 0x0d220003).
- port limit patch is being used (which, of course, is a mistake, except for use in port discovery)
- power management is wrong (should use ssdtPRgen.sh not ACPI/SSDT/Generate)

Not sure what SlpSmiAtWake does. Nor why PatchAPIC is needed (or what it does). These would require investigation/research (eg. reading the source code for Clover).

I shall have a look I'll extract native files from ACPI using Clover. On my desktop it enabled AppleLPC as it shows in ioreg so I know the SSDT works I've also tried it on a few Z97/H97 boards which my friends have and seems to work although I am dropping tables on my desktop maybe will make a difference if I wasn't not tried. The patches in the config I've never heard of and I'm pretty certain Z97/H97 doesn't require them.
 
It has solved some problems with some Skylake laptops. So far, not very many Skylake machines from Apple, but that should change soon.



The _DSM can also live in an OEM SSDT. But not all machines will have it (or not have it). Requires a detailed look at all native DSDT+SSDTs.



I did. Hence my comments regarding unneeded properties.



There are some things I would not tend to use, but it is not that messy.

A few obvious mistakes:
- ig-platform-id=0d220003 which should be 0x0d220003 (it still works as intended because 0d220003 is interpreted as zero, which is interpreted as "unspecified", which means the default is applied... and... the default is... wait for it... 0x0d220003).
- port limit patch is being used (which, of course, is a mistake, except for use in port discovery)
- power management is wrong (should use ssdtPRgen.sh not ACPI/SSDT/Generate)

Not sure what SlpSmiAtWake does. Nor why PatchAPIC is needed (or what it does). These would require investigation/research (eg. reading the source code for Clover).

I have been using a new config that is "cleaner". Setup runs the same either way. I was never sure about the port limit patch so I left it. Everything worked fine and made no difference one way or the other. Those patches applied are voided anyway because only the first one initiated is used. And usually if it's not necessary it's ignored. Having said that I appreciate the advice for my config and will consider the information.
 
Status
Not open for further replies.
Back
Top