Jump to content
munky

[Guide] Boot from EFI partition, zero modification installs on Intel SSE2 or better...

1,407 posts in this topic

Recommended Posts

Hi all,

 

BladeRunner the easy test for look if DSDT.aml is load, install AppleIntelCPUPowermana...Kext in /s/l/e, if your system boot up DSDt is correct an load

Share this post


Link to post
Share on other sites
Advertisement
Hi all,

 

BladeRunner the easy test for look if DSDT.aml is load, install AppleIntelCPUPowermana...Kext in /s/l/e, if your system boot up DSDt is correct an load

 

Well, thing is, it's already there and I run the Dsiabler.kext from the EFI partition. Still, a very good pointer. I edited the info.plist in the Disabler and disabled the AppleIntelCPU component. After updating the mkext, the system would not boot.

 

So, I guess that proves it. For some reason, the DSDT.aml is not working for me. Thanks for the suggestion.

Share this post


Link to post
Share on other sites
Hi all,

 

BladeRunner the easy test for look if DSDT.aml is load, install AppleIntelCPUPowermana...Kext in /s/l/e, if your system boot up DSDt is correct an load

Hi, I am totally now about these DSDT stuffs. Can u please answer some questions ?

The only thing I understand is there is some changes in the 10.5.6 update will break my installation and my hack will now work anymore. But

- How can I find the correct DSDT.aml file to place to / directory ?

- Do I need to use a modded AppleACPIPlatform.kext to fix the restart after use the new DSDT stuff ? I am using a modded AppleACPIPlatform.kext in the EFI partition.

- Will the new update affect the sleep or shutdown function of my hack ?

- I will not need to use IntelCPUPMDisabler.kext after updating right ?

Share this post


Link to post
Share on other sites
To set a timeout that does not require you to press enter to boot, modify your com.apple.Boot.plist in the /Volumes/EFI partition.

 

Add the following:

 

<key>Timeout</key>
<string>5</string>

 

Set whatever time value you want.

Thanks BladeRunner. I didn't have a c.a.B.p in that location but I made one, added that key/string combo and all is working very nicely. Ta.

Share this post


Link to post
Share on other sites
Well, thing is, it's already there and I run the Dsiabler.kext from the EFI partition. Still, a very good pointer. I edited the info.plist in the Disabler and disabled the AppleIntelCPU component. After updating the mkext, the system would not boot.

 

So, I guess that proves it. For some reason, the DSDT.aml is not working for me. Thanks for the suggestion.

 

Bladerunner, do you still have the apple logo during the graphical boot? If you do, you might want to redo installing 6.1... I think that might be your issue (maybe didn't copy or install the boot files right?)... Or maybe the dsdt patch doesn't like P4s? (SSE3 code maybe???) Or, the dsdt patch is working for you, but the AppleIntelCPUPowerManagement kext is choking on your P4?? (Real Macs come with Core/Core2s right?)????

 

i'll be honest - ive never touched DSDT stuff on my hacky... i just ported mackerintel's diff from chameleon into the source i had. seems to work for some....?

 

v6 looked for DSDT.aml in the wrong place - ie the root of the actual installation partition. v6.1 now corrects that and will load it from the root of the EFI partition.

 

Another flawless update from you munky!!! You da man!!!! My Hack thanks you!!! :-) :gun:

Share this post


Link to post
Share on other sites
Bladerunner, do you still have the apple logo during the graphical boot? If you do, you might want to redo installing 6.1... I think that might be your issue (maybe didn't copy or install the boot files right?)... Or maybe the dsdt patch doesn't like P4s? (SSE3 code maybe???) Or, the dsdt patch is working for you, but the AppleIntelCPUPowerManagement kext is choking on your P4?? (Real Macs come with Core/Core2s right?)????

Another flawless update from you munky!!! You da man!!!! My Hack thanks you!!! :-) ;)

 

I always use the "-v" kernel flag so I can see what is going on during the boot process. So, I removed the flag and re-booted the system - no Apple logo. My P4 is a Prescott - with SSE3. Can't answer the last point.

Share this post


Link to post
Share on other sites

I am also totally new about DSDT. I've been out for awhile and I don't know much about it.

So far I've downloaded the last version of the patcher, I double clicked and I got my dsdt.aml.

 

I have the nice feeling that by using dsdt I can avoid loading IntelCPUPMDisabler. What about the other kexts?

At the moment, I am using:

JMicronATA (as a driver for IDE DVD burners --for 3Gb and more of RAM)

LegacyAppleIntelPIIXATA (for ICH10 chipset)

LegacyIOAHCIBlockStorage (not to see SATA HDDs as network drives)

LegacyAppleAHCIPort (not to see SATA HDDs as network drives)

LegacyHDAController (for audio)

LegacyHDAPlatformDriver (for audio)

HDAEnabler (for audio)

IntelCPUPMDisabler (nonHPET)

OpenHaltRestart (restart problems)

AppleDecrypt

SMBIOSResolver

 

Please let me know, my friends. ;)

Share this post


Link to post
Share on other sites

Hi,

 

Managed only 1 time to get it working with v5.1 / made correctly, after that v5.1 /v6.1, tried many times, but this is the problem:

 

update.log

kextcache: �4j��\a: couldn't get volume UUID # problem???

couldn't find any valid bundles to archive

 

As soon as the Extensions.mkext needs to be generated it stops ending the script with this

 

mv: rename /Volumes/EFI/System/Booter/Extensions.mkext to /Volumes/EFI/System/Booter/Extensions.mkext.previous: No such file or directory

chmod: /Volumes/EFI/System/Booter/Extensions.mkext: No such file or directory

chown: /Volumes/EFI/System/Booter/Extensions.mkext: No such file or directory

done.

 

Already tried to assign a UUID manualy to the partition, but it did'nt help

/System/Library/Filesystems/hfs.fs/hfs.util -s diskXsX

 

any one?

Share this post


Link to post
Share on other sites
Hi,

 

Managed only 1 time to get it working with v5.1 / made correctly, after that v5.1 /v6.1, tried many times, but this is the problem:

 

update.log

kextcache: �4j��\a: couldn't get volume UUID # problem???

couldn't find any valid bundles to archive

 

As soon as the Extensions.mkext needs to be generated it stops ending the script with this

 

mv: rename /Volumes/EFI/System/Booter/Extensions.mkext to /Volumes/EFI/System/Booter/Extensions.mkext.previous: No such file or directory

chmod: /Volumes/EFI/System/Booter/Extensions.mkext: No such file or directory

chown: /Volumes/EFI/System/Booter/Extensions.mkext: No such file or directory

done.

 

Already tried to assign a UUID manualy to the partition, but it did'nt help

/System/Library/Filesystems/hfs.fs/hfs.util -s diskXsX

 

any one?

 

I had issues as well with the update.sh,

my solution was to move all the kexts, to where the system was looking for them.

just like in your osx drive, your system is looking for the real kexts in /Volumes/EFI/System/Booter/Extensions

on your osx drive it's /Volumes/OSXDrive/System/Library/Extensions

 

so, if your system isn't taking the kext cache, just move all the extensions you use into the /Volumes/EFI/System/Booter/Extensions folder and remove the cache, you'll see a quick flash as the system grabs the kexts, then it will boot like normal.

 

 

 

@ bladerunner and those having issues with the Disable kext. you may try the above tip and see if it fixes the problem, or try completely moving the disable kext from your kexts folder.

 

Example:

I have 2 folders in the EFI/System/Booter/

Extensions

Extensions.disabled

 

if I try a new extension, I put it in the extensions, if I discover I don't need it, like the disable kext, I move it to the disabled so I still have it, but it isn't active. it also makes it easier to weed out kexts that you don't really need. after doing this, I have come down to needing 3 kexts more then vanilla, AppleDecrypt, HDAEnabler, and SMBIOSEFI

 

I know this may not work for everyone, but I did some research and found that the reason the original bootCD's did the cache @ start, was issues with OS X taking the first cache, then Adding the second cache from the root drive, by not cacheing, you add about 2 seconds to boot time, but the OS doesn't dump your first cache in favor of the second one it grabs from root.

 

also I should note that my system didn't work with the Nvidia enabler kexts, so I use an EFI string to get my vid to work, but didn't touch the Vid Plists @ all.

 

hope this Helps,

let me know

HBP

Share this post


Link to post
Share on other sites
I had issues as well with the update.sh,

my solution was to move all the kexts, to where the system was looking for them.

just like in your osx drive, your system is looking for the real kexts in /Volumes/EFI/System/Booter/Extensions

on your osx drive it's /Volumes/OSXDrive/System/Library/Extensions

 

so, if your system isn't taking the kext cache, just move all the extensions you use into the /Volumes/EFI/System/Booter/Extensions folder and remove the cache, you'll see a quick flash as the system grabs the kexts, then it will boot like normal.

@ bladerunner and those having issues with the Disable kext. you may try the above tip and see if it fixes the problem, or try completely moving the disable kext from your kexts folder.

 

Example:

I have 2 folders in the EFI/System/Booter/

Extensions

Extensions.disabled

 

if I try a new extension, I put it in the extensions, if I discover I don't need it, like the disable kext, I move it to the disabled so I still have it, but it isn't active. it also makes it easier to weed out kexts that you don't really need. after doing this, I have come down to needing 3 kexts more then vanilla, AppleDecrypt, HDAEnabler, and SMBIOSEFI

 

I know this may not work for everyone, but I did some research and found that the reason the original bootCD's did the cache @ start, was issues with OS X taking the first cache, then Adding the second cache from the root drive, by not cacheing, you add about 2 seconds to boot time, but the OS doesn't dump your first cache in favor of the second one it grabs from root.

 

also I should note that my system didn't work with the Nvidia enabler kexts, so I use an EFI string to get my vid to work, but didn't touch the Vid Plists @ all.

 

hope this Helps,

let me know

HBP

 

Working!, after 1 reboot (usb disk with v6.1 to retail DVD disk), went to terminal.

run update.sh than a good mkext was generated, no errors

 

So now everytime running update.sh is working without errors

 

thanks!

Share this post


Link to post
Share on other sites

OK, I will tell you my experience.

 

I was able to use the dsdt properly. The first version of it I produced was inappropriate for my system. In order to get it working properly, I had to drag the patcher in the Terminal and type "-newHPET". So I had to use a different way to patch HPET, otherwise, without IntelCPUPMDisabler my system would not boot.

 

I have eliminated IntelCPUPMDisabler from the list of my efi kexts.

The present ones are:

JMicronATA

LegacyAppleIntelPIIXATA

LegacyIOAHCIBlockStorage

LegacyAppleAHCIPort

LegacyHDAController

LegacyHDAPlatformDriver

HDAEnabler

OpenHaltRestart

AppleDecrypt

SMBIOSResolver

 

Do you guys think there is something else I could take off?

(dsdt patcher left 3 text files called rtc_fixed, dsdt_fixed and hpet_fixed)

Thank you

Share this post


Link to post
Share on other sites

Perfect!

 

Followed the guide and reinstall with V6.1 and put DSDT.aml in the root of EFI partition. Removed almost all my kexts, all I left is dsmos. kext and the audio kexts. For video I use efi strings. Everything is working, including QE & CI, updating now from apple;)

I was wandering if I still need dsmos.kext.... Sorry for the noob question....

 

EDIT: I need dsmos... w/o it the system won't boot...

Share this post


Link to post
Share on other sites
I always use the "-v" kernel flag so I can see what is going on during the boot process. So, I removed the flag and re-booted the system - no Apple logo. My P4 is a Prescott - with SSE3. Can't answer the last point.

 

 

hi dudes....

 

same here bladerunner

dsdt seems to load correctly but still panics without disabler....

seems p4 isnt supported right....we need to clear up things

 

so long

Share this post


Link to post
Share on other sites

@ The Raton

dsmos.kext is used to decode the apple only executables, the best example is Finder

if you don't have a answer for the Don't Steal Mac OS.kext, then finder crashes and the os doesn't work.

btw, AppleDecrypt I find is about 20% faster then DSMOS.

 

cheers,

HBP

Share this post


Link to post
Share on other sites

^ Good idea, I'm clueless about this DSDT malarkey...

Perfect!

 

Followed the guide and reinstall with V6.1 and put DSDT.aml in the root of EFI partition. Removed almost all my kexts, all I left is dsmos. kext and the audio kexts. For video I use efi strings. Everything is working, including QE & CI, updating now from apple;)

I was wandering if I still need dsmos.kext.... Sorry for the noob question....

 

EDIT: I need dsmos... w/o it the system won't boot...

Awesome, I need to give this another go as I last tried it with 5.0 and got everything going (apart from my wifi)

Share this post


Link to post
Share on other sites

Worked on GA-P35-DS3L. My system is overclocked to 3GHz and with IntelCPUPMDisabler.kext the idle temp is around 34C but without it the temp rises to 54C idle. Any ideas why this might be the case?

Share this post


Link to post
Share on other sites
YOU CANNOT USE ANYTHING OTHER THAN A RETAIL DVD. Dont try a restore or drop-in disc, they WILL NOT WORK.

 

Well your first post had this written half way through the instructions which I skipped Glad I did because I take that to mean you cannot download from a torrent and burn to a DL DVD you have to buy a DVD from apple ( which I now will be doing due to this EFI booter )

 

but anyway A great Idea works fine for me had to install via external monitor due to x3100 graphics card

 

Discovered just by using AppleDecrypt you dont nee dsmos

 

I have about 8 Extensions on EFI 2 for ps2 keyboard 1 for bluetooth

 

I have discovered that I also need IOPCIFamily and IOPCCARDFamily but they will not function correctly on the EFI partition they need to be in /S/L/E I am not sure why It may be that <string>root</string> is on both files /V/E/E and /S/L/E maybe they are the same version numbers ? but without IOPCIFamily AppleHDA wont work ( which is another file that has to be in /S/L/E

 

Ok so only 3 kexts patched and update from 10.5.0 to 10.5.3 combo worked great no more deleting AppleIntelCPUPowerManagement file or editing the scripts/1 file for dsmos.kext It just works like a real Mac Possibly will have issues with update updating those 3 files but I keep them seperate and use kext helper to install

Share this post


Link to post
Share on other sites
Well your first post had this written half way through the instructions which I skipped Glad I did because I take that to mean you cannot download from a torrent and burn to a DL DVD you have to buy a DVD from apple ( which I now will be doing due to this EFI booter )

 

but anyway A great Idea works fine for me had to install via external monitor due to x3100 graphics card

 

Discovered just by using AppleDecrypt you dont nee dsmos

 

I have about 8 Extensions on EFI 2 for ps2 keyboard 1 for bluetooth

 

I have discovered that I also need IOPCIFamily and IOPCCARDFamily but they will not function correctly on the EFI partition they need to be in /S/L/E I am not sure why It may be that <string>root</string> is on both files /V/E/E and /S/L/E maybe they are the same version numbers ? but without IOPCIFamily AppleHDA wont work ( which is another file that has to be in /S/L/E

 

Ok so only 3 kexts patched and update from 10.5.0 to 10.5.3 combo worked great no more deleting AppleIntelCPUPowerManagement file or editing the scripts/1 file for dsmos.kext It just works like a real Mac Possibly will have issues with update updating those 3 files but I keep them seperate and use kext helper to install

 

 

re: the kext that fail to work from the efi partition - take a look at the Slimbuild thread in the New Releases sub-forum. About 4 or 5 pages in ~Galaxy has a nice writeup on the subject. There is also a set of instructions on using the version number and ioprobe score to correct many of those problems.

Share this post


Link to post
Share on other sites

Does anyone use EFIStudio to put efi-string into boot.plist and boot sucessfully? I got "Error parsing plist fileLoading" message, after I put the efi-string for ATI video card.

Share this post


Link to post
Share on other sites

^ Is your boot.plist on your EFI partition?

 

 

Yes!! boot fine, my DSDT file is load and have full VANILLA Leo install :)

 

In EFI/Extensions folder only need:

 

AppleDecrypter.kext

AppleHDA.kext (patched for XBX2)

Hey, just noticed this post, you're set up is virtually the same set up as mine, apart from I'm using around 10 extensions or so. How have you got this to work with only 2 extensions... Does the DSDT patch mean you need less extensions? I need to research DSDT...

 

Can you boot the retail DVD with just these extensions also, or did you use lots of extensions to boot the DVD then just copy these 2 extensions to the EFI partition?

 

I'm about to reformat my system, and would like it to go as smooth as possible you see. :thumbsup_anim:

Share this post


Link to post
Share on other sites
Does anyone use EFIStudio to put efi-string into boot.plist and boot sucessfully? I got "Error parsing plist fileLoading" message, after I put the efi-string for ATI video card.

 

I guess this is because of the large size of your device-properties node. Is that more than 4096 bytes long at the moment?

 

You can adjust the max node size (IO_CONFIG_DATA_SIZE) here: i386/libsaio/legacy/configTablePrivate.h

 

Chameleon uses 16384 bytes for this constant.

 

Btw, i've 'ported' the foreign OS support on GPT disks for the new Chameleon codebase so we're getting closer again to a new release.

Share this post


Link to post
Share on other sites

Dude, this is freakin' awesome! Thanks a lot for you effort.

 

For users who mount and unmount their EFI partition a lot, I've attached a collection of scripts for easy access ;) If you want, you can include them in your download archive.

They should go to /usr/bin or /usr/local/bin or wherever you like them.

 

Here's what the scripts do:

  • efimount
    • determines your root-disk (even in safe mode!)
    • creates /Volumes/EFI
    • mounts /Volumes/EFI

    [*]efiumount

    • repairs permissions in /Volumes/EFI/Extensions (you just need to dump your kexts there, that's it)
    • executes /Volumes/EFI/update.sh
    • unmounts /Volumes/EFI

This is pretty straightforward, basically it's just for lazy people like me who don't always want to type all of the commands...

 

Changelog:

  • 0.2 (2008-12-05): Check for root, drive parameter for efimount, fsck, remove /Volumes/EFI after clean unmount
  • 0.1 (2008-12-04): initial release

- mcsmart

efimount_0.1.zip

efimount_0.2.zip

Share this post


Link to post
Share on other sites
Dude, this is freakin' awesome! Thanks a lot for you effort.

 

For users who mount and unmount their EFI partition a lot, I've attached a collection of scripts for easy access ;) If you want, you can include them in your download archive.

They should go to /usr/bin or /usr/local/bin or wherever you like them.

 

Here's what the scripts do:

  • efimount
    • determines your root-disk (even in safe mode!)
    • creates /Volumes/EFI
    • mounts /Volumes/EFI

    [*]efiumount

    • repairs permissions in /Volumes/EFI/Extensions (you just need to dump your kexts there, that's it)
    • executes /Volumes/EFI/update.sh
    • unmounts /Volumes/EFI

This is pretty straightforward, basically it's just for lazy people like me who don't always want to type all of the commands...

 

- mcsmart

 

VERY useful indeed! I was sick of typing everything each time.. :D

I have re-written the last line of umount to erase Volumes/EFI.

Why did you write it could be dangerous to do that?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×