Jump to content
Allan

[Guide] AIO Guides For Hackintosh

Recommended Posts

DSDT/SSDT: Everything you need to know about SSDT

?
As mention in the?basic knowledge guide about DSDT/SSDT, SSDT ( Secondary System Description Table ) are sub-tables which describe additional devices. By using SSDTs OEMs can manage DSDT better, and so SSDT can be shared between similar systems. SSDTs that comes with the system usually contain these information ( red means scope/device can be found in SSDT ):

  • SATA management:?\_SB.PCI0.SATA
  • Sensor management:?PTID
  • CPU management:?\_PR.CPU
  • Intel HD Graphics management: PCI0.GFX0?or PCI0.VID
  • Dedicated GPU management: various names like?GFX0,?PEGP?or?DGFX, etc…
  • Features like Optimus, Switchable Graphics,..

To edit these tables, make sure to?dump and decompile all DSDT/SSDT, edit the dsl file then save it as aml. To load the edited one, rename it by order: SSDT.aml, SSDT-1.aml, SSDT-2.aml,… and put them in the bootloader’s directory ( the same as DSDT.aml )
?
Drop OEM SSDT

?

This feature was created due to the fact that system’s original SSDTs that manage CPU are useless in OS X, which force users to create CPU management SSDTs which are optimized for OS X. By loading both OS X’s optimized SSDTs and original SSDTs, they can conflict each other, cause unstable CPU loading.
?
Drop OEM SSDT is made to wipe (drop) original SSDTs in BIOS/UEFI to avoid conflicts. Even though other SSDTs are also dropped, but these tables aren’t always important ( most systems can run with DropSSDT=True )
?
CPU management SSDTs

?

Bootloaders like Chameleon, Clover can create a SSDT compatible with OS X to control the CPU by setting GeneratePState/GenerateCState=True.
ssdtPrGen script made by Pike R. Alpha is better way to create CPU SSDTs for OS X, and will always be up-to-date. You can create your SSDT.aml using ssdtPrGen by selecting Tools > SSDT Generator in HVT
?
Note:

  • ssdtPrGen script only supports 2nd/3rd/4th Core I and Xeon Processor. Other CPUs have to use the bootloader’s Generate features.
  • Do not use both SSDT.aml and bootloader’s Generate features, it can cause unknown issues.
  • It is recommended to use Drop OEM SSDT features to avoid conflicts between SSDTs

Intel HD Graphics management SSDT ( laptop-exclusive )

?

Most Intel iGPUs is defined in DSDT, but in some cases ( especially Haswell laptops ), the iGPU is managed in SSDT.
?
To check whether DSDT or SSDT is managing your iGPU, find these in the tables:

Device (GFX0)Device (VID)Name (_ADR, 0x00020000)

?They are inside PCI0 scope.
For example, this system’s HD4400 is managed by ssdt7.dsl

PXUJYMe.png

?

In this case, for brightness fix you have to compile and load that ssdt. And if you apply a patch that rename GFX0 to IGPU, you have to do it in all related DSDT/SSDT.
?
Dedicated GPU management SSDT ( laptop-exclusive )
By default they are named DGFX, PEGP and have _OFF, _ON methods, for example:

nYbqiRq.png

Share this post


Link to post
Share on other sites

DSDT/SSDT: Disable dedicated GPU to extend battery life ( laptop-exclusive )

?

Only applied to laptops with both dedicated GPU (Nvidia/AMD) and Intel HD Graphics, has Nvidia Optimus Technology/AMD Switchable Graphics, and dedicated GPU can’t be turned off in BIOS

Step 1:?Dump and decompile original DSDT/SSDT into dsl files

Step 2:?Identify the DSDT/SSDT contains Intel HD Graphics (if exist) and dedicated GPU

Step 3: If you rename Intel HD GFX0 to IGPU, do it on all related DSDT/SSDT!

Step 4: Find the dedicated GPU’s _INI method, add?_OFF ( )?at the end of the method

liRlcrG.png

?

Press Compile to check for error. If you have error "Object is not accessible from this scope (_OFF)", the _OFF method is not included in the same SSDT. You have to link it by adding this to SSDT:

External(\_SB_.PCI0.RP05.PEGP._OFF, MethodObj)

Note that you have to change the path to your External graphics device \_SB_.PCI0.RP05.PEGP to suit your system.

?

Step 5: Save all SSDTs related to iGPU (if exist) and dedicated GPU as aml, put it in the bootloader’s directory ( name it as SSDT.aml, SSDT-1.aml, SSDT-2.aml, etc… )

Step 6: Reboot and go to System Information, select Graphics/Display. If only Intel HD Graphics shows up and no Display/Nvidia/AMD related names are there then you have successfully disable the dedicated GPU.

Share this post


Link to post
Share on other sites

DSDT/SSDT: Brightness fix for Intel HD3000/4000/4400/4600 (Laptop exclusive)

?
Requirement:

Open DSDT.dsl or SSDT*.aml which contains the Intel HD Graphics, select Patch > go to 2.10 Brightness Fix (HD3000/4000) or 2.11 Brightness Fix (Haswell) to your choice, hit Apply
?

11649398415_27f5ae41dc_o.png

?
?
Hit Compile to check if there are errors or not, the most common error is Scope not found, due to you haven’t renamed all iGPU’s GFX0 device, try renaming all Intel HD's GFX0 to IGPU (do not mistake for dedicated graphics GFX0)
?
Another cause for this problem is that the Intel HD GFX0 device is not in DSDT, but in other SSDT* instead ( most Haswell laptops ). You need to?find the SSDT*.dsl which contains GFX0 devices?and redo the steps above.
?
Compile it to DSDT.aml or SSDT-*.aml (* start with 1), put it in?the bootloader’s directory
?
Install Rehabman’s ACPIBacklight:?https://bitbucket.or...light/downloads?or use HVT to install it
?
REMEMBER that you have to rename Intel HD GFX0, VID->IGPU in all DSDT/SSDT to make it work.
?
Note: ACPIBacklight use nvram to save brightness values when shutting down, so you need working nvram to save them after restarting:

  • Chameleon: Use FileNVRAM module
  • Clover UEFI: When installing the bootloader select EmuVariableUEFI-64.efi and Install RC Script on target volume

Share this post


Link to post
Share on other sites

Clover Config: Convert your patched AppleHDA to Clover patching-on-the-fly

?

Requirement:
- Get a working sound with patched AppleHDA

The guide is based on piker's discovery, and will help you turn from a patched AppleHDA to Clover patching-on-the-fly.

Step 1: Download bcc9's script modified by RehabMan?here, decompress it to desktop.
?
?Go to terminal, type these commands:

cd ~/Desktop/patch-hda./patch-hda.pl -x 111d7605

REMEMBER to change?111d7605?to your audio codec id.
?
The patching entry will be output:

?

HR8kPCj.png

Open your config.plist by TextEdit, copy the generated scripts to KernelAndKextPatches > KextsToPatch section:

hWtsISD.png

Save the config.plist
?
Step 2:?Download?DummyHDA here.?Copy LayoutX.xml.zlib và Platforms.xml.zlib from AppleHDA.kext/Contents/Resources/ (this is the working AppleHDA) to DummyHDA.kext/Contents/Resources/
?
Step 3: Open?Info.plist in AppleHDA.kext/Contents/Plugins/AppleHDAHardwareConfigDriver.kext/Contents/ (this is the working AppleHDA). Copy all the value here:

IOKitPersonalities/HDA Hardware Config Resource/HDAConfigDefault

to?Info.plist in DummyHDA.kext/Contents/:

IOKitPersonalities/HDA Hardware Config Resource/HDAConfigDefault

ThIaDqc.png

save the Info.plist
?
Step 4: Reinstall vanilla AppleHDA and DummyHDA to S/L/E by Kext Wizard, rebuild cache/repair permission then restart. You may need to restart once more to get the sound.

Share this post


Link to post
Share on other sites

Installing Yosemite using Clover (UEFI)

?

You need a Yosemite installer for Mac, it can be downloaded from Appstore for free. Note that with Haswell CPUs you need a 10.9 installer or above. This guide is done under OS X, if you don’t own a Mac then you can always create a virtual machine.

Create a Yosemite USB Installer

Step 1: You need a 8GB USB stick, format it with Disk Utility with the following options:

  • Partition: 2 partitions
  • Partition 1: name it Clover, Format MS-DOS (FAT), size larger than 300MB
  • Partition 2: name it MacUSB, Format Mac OS Extended ( Journaled ), size larger than 6.5GB
  • Options: Master Boot Record (MBR)
  • Hit Apply

?

12475004833_baec2d51ba_o.jpg

?

Step 2: Download this?Clover.zip, unzip and copy the EFI folder to the root of the CLOVER partition. Use?Hackintosh Vietnam Tool?to create the suitable config.plist for your PC:
- CPU: Select your CPU
- Graphics: Select your graphics
- SSDT: Generate

- Bootflag: kext-dev-mode=1
Install to current HDD, then copy the generated config.plist on the desktop?IN YOUR HDD?to the folder EFI\Clover of the CLOVER partition.

?

12475039433_50ef8d883b_o.jpg

?

At this point you have 2 choices of creating the installer

Choice 1?(easy guide, but can result in blank screen after boot)

Step 3:?Download OS X Yosemite from the Appstore, check if the “Install OS X Yosemite.app” is in the folder Application. Open Terminal and run this command ( note that Untitled is a HFS+ partition )

sudo /Applications/Install\ OS\ X\ Yosemite.app/Contents/Resources/createinstallmedia --volume /Volumes/Untitled --applicationpath /Applications/Install\ OS\ X\ Yosemite.app --nointeraction

Choice 2?(manual method)
?

Step 3:?- Right click to Yosemite Install app > Show Package Contents > Contents > Shared Support, open InstallESD.dmg.
- Open OS X Install ESD partition, open BaseSystem.dmg (hidden file)
- Use Disk Utility to clone OS X Base System to MacUSB partition.
Ub9sEsy.png

?

- Go to System/Installation of USB and delete the alias “Packages”, then go to “OS X Install ESD” partition, copy the “Packages” to the folder System/Installation of your USB
- Copy BaseSystem.dmg and BaseSystem.chunklist (hidden files) from OS X Install ESD to OS X Base System (on your USB)

Installing Yosemite

Step 1:?Boot from the USB installer, select “Boot OS X Install from Install OS X Yosemite”

Step 2: If the config.plist is correct, you should arrive at the installation windows. Hit Spacebar if any notifications about bluetooth keyboard/mouse appears. Select menu Utilities, select Disk Utility

Step 3: Select the partition you want to install OS X to, switch to Erase tab, do the following options:

?

  • Format: Mac OS Extended (Journaled)
  • Name: Pick anything you want
  • Hit Erase

?

Step 4: After the formatting process is done, close Disk Utility, hit Continue, hit Agree. Select the formatted partition then hit Install
?

Note
- It will automatically restart and you will have to reboot into the installer again in order to begin the REAL installation process.

Step 5: After installation process is done, reboot into the USB Installer and boot into your newly created OS X partition.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.