Building DSDT for GA-EP45-DS3L

Page 1

Using Koalala’s ACPI Patcher to Build a DSDT.aml for GA-EP45-DS3L Here I explain the steps I took to create the DSDT for my system. If you encounter any errors or differences with your system then you will have to do some guess work and your own research at koalala’s thread on insanelymac. You’ll come across some options when following this and while I know the meaning of some of them, I don’t know all of them at the moment. But just follow the instructions and it should work. • From Windows, Run ACPI Patcher. • In the main window select the BIOS Patch tab. • In the top box, browse to your BIOS file and in the bottom box, give a destination to save to. • Seect the Generate DSDT.aml checkbox.

General Tab • Select HPET, RTC and Aliases. • Also on the General Tab, click the Fixes button and select all four options.

General Settings (with ‘Fixes’ window opened) I have selected everything

Network Tab Using this option will embed your network settings in the DSDT negating the need for and EFI string in com.apple.Boot.plist. There are two radio buttons with the choice of LAN0 and GIGE. These are for LAN or Gigabit Ethernet, I selected LAN0 but it also works if I select GIGE. I also ticked Fix GP9 and Use Time Machine Fix. (If I don’t tick Fix GP9 then is won’t compile)

Nework Settings I chose LAN0, PEX 5, Fix GP9 and Time Machine Fix

Next option is hardware location. This is where you will need to use IORegistryExplorer on OS X.

Open IORegistryExplorer and in the search box, search for ethernet. In the left hand pane where you see the results, look back up the device tree to find the first device which matches the options in ACPI Patcher for hardware location. These are PCI, PEX and POP.

PEX5

The nearest option for me is PEX and it has the number 5 beside it so I chose 5 from the drop down list in ACPI Patcher. Using IORegistryExplorer to locate Ethernet hardware. DSDT for Gigabyte GA-EP45-DS3L by blackosx

Version 1.3 (24th August 2009)

1


Graphics Tab Using this option will embed your video settings in the DSDT negating the need for and EFI string in com.apple.Boot.plist. Select the model of video card & memory size. Options for nVidia are in Green and options for ATI are in Red. I have an nVidia card so I have never played with the options in Red. I clicked the option to Use DSDT GFX. Graphics Settings My card is nVidia 8800GT 512MB and has dual DVI. I selected use DSDT GFX, PCI 0 and PEGP

Hardware location, again can be found with IORegistryExplorer.

Open IORegistryExplorer and in the search box, search for graphics. In the left hand pane where you see the results, look back up the device tree to find the first device which matches the options in ACPI Patcher. This will be the same options as for network, so PCI, PEX and POP. Keep an eye out for PEGP as if it’s there then you’ll want to tick the box in ACPI Patcher.

PCI0 PEGP

The nearest option for me is PCI and it has the number 0 beside it so I chose 0 from the drop down list in ACPI Patcher. And as PEGP is present, I ticked that too. Using IORegistryExplorer to locate video hardware.

Audio Tab Using this option will embed your audio settings in the DSDT negating the need for VoodoHDA. There are three options to choose from. ALC888-0, ALC888-2 and ALC889a. We know the GA-EP45DS3L uses ALC888 so it has to be one of those. The 0 and the 2 refer to an address. I chose ALC888-0 and selected HDEF. By selecting HDEF we don’t have to use HDAEnabler when we boot the system

Audio Settings I chose ALC888 with address 0, and to use HDEF

Compiling DSDT.aml When you have selected everything, click the Patch BIOS button. You will see the compiler log as it generates the DSDT.aml file and when it’s finished, the number of Errors, Warnings, Remarks and Optimisations. Providing you have no errors, you will have a DSDT.aml file at the destination location you selected earlier. There will also be a patched BIOS file but we don’t need that. If you decided to experiment with any settings in ACPI Patcher and get compilation errors then have a look in the log window and see if it mentions anything to give you a clue about something that needs to be ticked.

2

DSDT for Gigabyte GA-EP45-DS3L by blackosx

Version 1.3 (24th August 2009)


Gathering the final files for the audio to function. To get the audio working under DSDT we need this last touch which was kindly supplied by thiagomorales and tmongkol. The required files are on tmongkol’s thread in an archive called How_to_patch_DSDT_with_LAN_and_HDEF_functions_including_LegacyHDA. This archive contains various files which might be of interest and also a folder named ‘series of LegacyHDA 888’. In this folder are four LegacyHDA.kext’s which we can choose from. To use these files in the words of tmongkol.. If you are using DSDT.aml for AZAL, you need patched AppleHDA.kext (or any legacy for GA-ALC888 & unpatched AppleHDA.kext) and HDAEnabler.kext. If you're using DSDT.aml for HDEF, you need only patched AppleHDA.kext or any legacy for GA-ALC888 & unpatched AppleHDA.kext.

To help work this out in my head I tried to put this in to a drawing to help explain.

If the DSDT does NOT use HDEF (in other words AZAL) /Extra

/System/Library/Extensions Patched AppleHDA

DSDT.aml

/Extra/Extensions

HDAEnabler

OR /Extra

/System/Library/Extensions Unpatched AppleHDA

DSDT.aml

/Extra/Extensions Any ALC888 LegacyHDA

HDAEnabler

If the DSDT does use HDEF /Extra

/System/Library/Extensions DSDT.aml

/Extra/Extensions

Patched AppleHDA

OR /Extra

/System/Library/Extensions DSDT.aml

/Extra/Extensions Any ALC888 LegacyHDA

Unpatched AppleHDA

Red - Indicates my preferred choice

As the whole basis of my retail install is based around using /Extra for any additional drivers, kexts etc. and leaving the main system untouched, I naturally wanted to use the HDEF option beacuse an unpatched AppleHDA is already in /System/Library/Extensions meaning I don’t have to touch it. So all I needed to activate audio was a LegacyHDA.kext in /Extra/Extensions. I chose to use the grey one in the ‘3out2in HDA headphone’ folder. If this doesn’t work for you then you could maybe try one of the other LegacyHDA files, and failing that, one of the other options given by tmongkol.

DSDT for Gigabyte GA-EP45-DS3L by blackosx

Version 1.3 (24th August 2009)

3


Using the DSDT.aml file For anybody who has not built their system using my ‘Install retail OS X 10.5.7 with Chameleon v2 RC2’ guide, then as long as you have an OS X retail install which uses a bootloader that supports DSDT override you can put the DSDT.aml at the root of your system partition or /Extra. But if you did follow my ‘Install retail OS X 10.5.7 with Chameleon v2 RC2’ guide then the following points are relevant for that. All you need to do now is a final bit of work to your Chameleon install. • Backup your com.apple.Boot.plist from /Extra to somewhere safe and then edit the one in /Extra to remove any device-properties. You will still want to leave your display resolution and anything else there you used before. • Remove IOAudioFamily.kext, OSvKernDSPLib.kext and VoodooHDA.kext from /Extra/Extensions. • Optional - you can remove the block for AppleIntelCPUManagement.kext from Disabler.kext (or if it’s the only block in your Disbaler.kext then remove Disabler.kext completely) to let AppleIntelCPUManagement.kext run as Apple intended. If you do, you will notice your CPU temperatures will run maybe 10 degress hotter. You can use TemperatureMonitor to monitor it and can find it at http://www.bresink.com/osx/TemperatureMonitor.html. • I have also tried removing IONetworkingFamily.kext, IOPCIFamily.kext and RealtekR1000.kext from /Extra/Extensions. Your network will work, but unfortunately Bonjour networking will not work without them. • • • •

Add LegacyHDA.kext in /Extra/Extensions. Add the DSDT.aml file to /Extra. Rebuild Extensions.mkext. Reboot.

Manually editing DSDT There will be on occasion the need to tweak your DSDT.aml and this is easiest to do manually by editing the file. But as the DSDT.aml is a compiled file you will need to decompile it first. The first real need for me to do this arrived with the CMOS reset bug introduced by Snow Leopard which we are going to fix shortly. But first you will need to know how to go about manually editing the DSDT.aml. At the bottom of my DSDT thread page, you will find a link to donwload an OS X application called iaslMe This is a compiler/decompiler for DSDT aml and you can use it by dropping your DSDT file.aml on the apps’ icon. Dropping a DSDT.aml will make a DSDT.dsl and vice versa. .aml (complimed / assembled) and .dsl (decompiled / dis-assembled) A DSDT.dsl can be edited with a text editor, which one is all down to your preference. If you’ve done any programming / coding in the past then this won’t be too much of a problem. Just take care to balance the braces and always work from a backup.

4

DSDT for Gigabyte GA-EP45-DS3L by blackosx

Version 1.3 (24th August 2009)


An example of the DSDT.dsl can be seen below and here we have the RTC (Real Time Clock) section. The reason I am showing you this section is because this is where we need to edit the file to make a fix for the CMOS reset bug which will rear it’s head in 10.6. Device (RTC) { Name (_HID, EisaId ("PNP0B00")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0070, // Range Minimum 0x0070, // Range Maximum 0x00, // Alignment 0x02, // Length ) }) }

CMOS reset fix The value in RED needs to be changed. In your existing DSDT.dsl the length of IO segment will be 4, we need to change that to 2.

When you have made any changes, save the file as DSDT.dsl then drop this new file back on to iaslMe’s icon. It will then attempt to compile it and generate you a DSDT.aml file. Keep an eye out for any errors and if you have any, go back and check what you have done for mistakes. The new DSDT.aml file can then be used for 10.6 By reading the many DSDT related threads on Insanelymac or indeed on any of ther other forums in the OSX86 scene, you will come across various code changes for adding hardware and fixing other things. I have not looked that deeply in to what else can be done, only what I have needed for my system. But if you find something you want to try then at now you’ll know how to go about doing them.

That’s it (for now). I will amend, tweak, improve this guide in time, but for that I will need feedback from you.

DSDT for Gigabyte GA-EP45-DS3L by blackosx

Version 1.3 (24th August 2009)

5


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.