netkas.org forum
August 01, 2014, 10:47:01 AM *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News: Information for registering users http://forum.netkas.org/index.php/topic,2246.0.html
 
   Home   Help Search Login Register  
Pages: [1] 2 3 ... 59
  Print  
Author Topic: Booting the 64-bit kernel on the 2006/2007 Mac Pro  (Read 275678 times)
MacEFIRom
Newbie

Offline Offline

Posts: 19


« on: September 07, 2011, 05:27:43 AM »

I'm a big Mac Pro fan, and I own both a 2006 and 2010 Mac Pro. After writing the firmware tools for these systems, I started to feel like the 2006 Mac Pro didn't get much of a boost from the 2007 firmware upgrade, unlike the 2009 upgrade, which unlocked a lot of potential. I'm also a big hackintosh fan, and I've built numerous platforms going back to 2006, when it all began. I started doing some research on booting the 64 bit kernel on the 2006/2007 Mac Pro. As you probably know, these Macs have a 32 bit EFI implementation, so the Mac OS can only boot the 32 bit kernel. This is of course an arbitrary decision on Apple's part, as the Xeon CPUs in all the Mac Pros are certainly 64 bit capable. There's been some posts on this forum, as well as some earlier posts by netkas on the subject, about using the Chameleon bootloader to load the OS, since in theory, this should be a pretty darn compatible hackintosh! I attempted to configure the system to boot in this manner, using all of the information available in these posts, but all of the information and suggestions available are close, but none of them get everything right. I did successfully accomplish this, and I can say that it works very well, with the only thing not recognized and working is the built-in audio. This can probably be fixed with some additional work, and maybe someone else can suggest some settings to accomplish this, but right now, with this guide, you can boot the 2007 Mac Pro (of course my 2006 has been upgraded to 2007) in 64 bit kernel mode, and the system works 100%, with sleep, shutdown, networking, CPU identification working properly. If you are using the original nVidia 7300GT, you will have to use a more modern graphics card that the Chameleon bootloader can understand. Also, since this is booting like a hackintosh, you don't have to use a flashed card, or actual Apple card (although you can if you want) just any PC card that is currently working with the modern bootloaders, which is quite nice.

It's actually pretty easy once you know what to do and how to configure everything. In essence you will be booting the Mac Pro in what's called "Legacy Mode" which is Apple's way of saying a normal PC BIOS environment, not the EFI32 environment. One of the things I struggled with is that Apple's EFI implementation will not boot any sort of USB or Firewire storage in "Legacy Mode", so this has to be done on an internal hard drive. The Chameleon boot partition can be on a separate drive in the system or on an additional partition. The separate drive has the benefit of not having to touch the Mac OS partition at all, so it is very clean, but requires using a drive sled spot or using an additional drive in the optical bay area. In either case, the system can be booted the original way via the EFI32 mode, or the chameleon way for 64 bit kernel, so it's a very flexible solution.

Here is the guide:

If you are using a single drive, partition the drive with 2 partitions, both HFS+, using the MBR option. Name the 1st partition Boot, and make it 1GB in size. The 2nd partition will hold your normal Mac OS installation.

If you are using a separate drive, partition using MBR, choose HFS+, and name it Boot.

Install the older Chameleon bootloader, the filename is Chameleon-2.0-RC2-r640.pkg, you can easily find it on the web. Choose the Boot partition, and deselect all the options except the bootloader.

To delete the original boot file, type this command, via the Terminal:

rm /Volumes/Boot/boot

You can use any of the modern Chameleon bootloader files, you will only need the boot file. You can find installer packages all over the Internet for this, so don't ask here. If it's already in an installer package, you can use Pacifist to extract it. Copy this file to the Boot volume, at the root. I've included the one I used in my testing, so you can use this one as well.

Copy the attached smbios.plist and org.chameleon.Boot.plist to Boot/Extra, and if you have any themes you want to use copy these to the Boot/Extra folder as well. If you don't know how the Chameleon bootloader works, or about themes, or anything else related to the hackintosh, don't ask here, there are plenty of forums on the Internet for that.

If you are using a single drive, use this in the org.chamleeon.Boot.plist file (this is in the supplied file):

   <key>Default Partition</key>
   <string>hd(0,2)</string>

If you are using a separate drive, use this in the org.chamleeon.Boot.plist file:

   <key>Default Partition</key>
   <string>hd(1,2)</string>

The actual serial number can't be extracted from the system, so you can put your serial number in by editing this in the smbios.plist file:

        <key>SMserial</key>
        <string>G666666PUPZ</string>

In order to boot the system this way, you have to bless the new Boot partition in a special way, via the Terminal:

sudo bless --folder /Volumes/Boot --file /Volumes/Boot/boot --setBoot --legacy

If you want to return to the normal EFI32 boot, use the System Preferences>Startup Volume. To boot the 64 bit kernel again, issue the above terminal command again.

In my testing I haven't run into any issues other than the sound, and benchmarking is right where it should be at for a 64 bit kernel. I hope you enjoy the benefits of extending the value of your 2006 or 2007 Mac Pro, or being able to change your system back and forth from the 32 to 64 bit kernel for development purposes.
Logged
chadsky
Newbie

Offline Offline

Posts: 12


« Reply #1 on: September 07, 2011, 05:40:54 AM »

very useful information! thanks!
Logged
jeanlain
Full Member
***
Offline Offline

Posts: 231


« Reply #2 on: September 07, 2011, 06:42:26 AM »

Excellent work.
Right know, the interest of running the 64-bit kernel isn't obvious, so the main point I see in this, is the ability to use more PC cards. And that would be a game changer for all Mac Pro (not only the older models). Does it mean you can use PC Nvidia cards without a "helper" Mac card? Do you see the boot screen?  Smiley
Logged
Bolle
Full Member
***
Offline Offline

Posts: 107


« Reply #3 on: September 07, 2011, 07:41:16 AM »

As long as chameleon likes your card you will get bootscreens.
Logged
jeanlain
Full Member
***
Offline Offline

Posts: 231


« Reply #4 on: September 07, 2011, 06:37:21 PM »

On a Mac too?  Shocked MacEFIRom, do you confirm?
That means we have a solution to all our issues with PC cards not showing boot screen or flashed cards requiring a particular EFI (64/32). That would be too good to be true.
Logged
Bolle
Full Member
***
Offline Offline

Posts: 107


« Reply #5 on: September 07, 2011, 06:48:17 PM »

If i get him right thats why he did that procedure.
And also makes perfect sense. All the PC cards give bootscreen as well in Hackintoshes.
The graphics cards get initialized using the legacy mode on the macpro aka the BIOS Emulation with Chameleon running on top of that.
You do not need any EFI cards that way because the EFI isnt even talking to the graphics card in that scenario. Everything just works but technically your Mac turns into a Hack.


And to me flashing cards instead of going this route of hazzles is still #1 Wink
But nice to have cards working that cant be flashed or for testing purpose.


Oh and excellent work on that guide MacEFIRom Wink
« Last Edit: September 07, 2011, 06:56:36 PM by Bolle » Logged
audio_inside
Newbie

Offline Offline

Posts: 13


« Reply #6 on: September 08, 2011, 04:18:06 AM »

Works pretty much as described on my Mac1,1 (now listed as a Mac2,1 and my upgraded Xeon quad-cores are acknowledged as well.)  As expected, no audio devices found.

Interesting quirk: Chameleon is installed on its own drive on bay 4, listed by Disk Utility.app as disk0.  My normal boot volume is a single partition on a software RAID with two drives installed in bays 1 and 2, and I couldn't get an automatic boot until I specified "hd(3,3)" as the Default Partition.  DU shows those individual drives as disk1 and disk3 and the composite RAID volume as disk4, so I'm not sure where (3,3) came from.  Guess I could have used the UUID from the RAID set.

UPDATE: Reselecting my original boot drive in System Preferences did not revert to the original RAID boot volume.  "bless --unbless" on the Chameleon volume didn't get me back either.  The output from "bless --info" on my original boot drive yields

Code:
/Volumes/Aztec>sudo bless --info /Volumes/Aztec
finderinfo[0]: 32589694 => Blessed System Folder is /System/Library/CoreServices
finderinfo[1]: 38037266 => Blessed System File is /System/Library/CoreServices/boot.efi
finderinfo[2]:      0 => Open-folder linked list empty
finderinfo[3]:      0 => No alternate OS blessed file/folder
finderinfo[4]:      0 => Unused field unset
finderinfo[5]: 32589694 => OS X blessed folder is /System/Library/CoreServices
64-bit VSDB volume id:  0x715CC7AAE156BF5A

Does that look right?  Pulling the Chameleon boot drive resulted in a "no bootable devices" message at startup.  Any suggestions?  (I also can't access the Time Machine restore UI.)

UPDATE 2:  A combination of PRAM-zapping and restarts got me booting directly back into my original RAID and bypassing Chameleon.
« Last Edit: September 08, 2011, 06:06:13 PM by audio_inside » Logged
GULLYMAN
Newbie

Offline Offline

Posts: 20


« Reply #7 on: September 08, 2011, 05:52:47 AM »

This is working great. I also had issues with Chameleon getting confused about HD numbers but it seems to work right now.

One caveat is that Time Machine won't connect and give me the starry background, instead spitting out an error. Not really a big deal but worth mentioning, I thought. Also most cards shouldn't need "GraphicsEnabler=Yes" anymore.
Logged
Sascha_77
Newbie

Offline Offline

Posts: 29


« Reply #8 on: September 09, 2011, 03:51:12 PM »

Works here too. Sound is away ... but ... I have an old iMic here. Plugged into USB ... et Voila. Sound is back. Cheesy Temporarly not bad.
Logged

MacPro 2,1 (flashed from 1,1 -> 2,1)
2x5355
64Bit-EFI-Emulator (Chameleon)
Working sound with orig. Kext´s
Cindori
Full Member
***
Offline Offline

Posts: 233



WWW
« Reply #9 on: September 09, 2011, 05:14:48 PM »

On a Mac too?  Shocked MacEFIRom, do you confirm?
That means we have a solution to all our issues with PC cards not showing boot screen or flashed cards requiring a particular EFI (64/32). That would be too good to be true.


you are missing the point of flashing cards. Flashed cards = no fiddling with software (injector), you can sell card, move between machines, no chance of updates breaking it (probably). Bootscreen isn't the big deal, and using another bootloader on a mac pro isn't news either.
You can already see everyone trying out this workaround above have had issues. Not trying to piss on the thread, but imo you invest alot more time fiddling then what you get out in performance and features with this workaround.
Logged

http://groths.org
Tools and news about Mac graphics and Hackintosh
nekton1
Newbie

Offline Offline

Posts: 20


« Reply #10 on: September 10, 2011, 03:50:53 AM »

So what we really need is an exApple or other firmware guru to update the MacPro 2,1 32-bit EFI to 64-bit EFI.
Anyone out there with the skills and time? How about MacPro 2,1 owners who want this each putting up $20 to raise a few thousand dollars to pay someone to do it?
Logged
Sascha_77
Newbie

Offline Offline

Posts: 29


« Reply #11 on: September 10, 2011, 07:04:06 AM »

No way to do this. You must solder out the old EFI and solder in a 64 Bit-EFI. There is no way to flash the 32Bit EFI to 64.
Logged

MacPro 2,1 (flashed from 1,1 -> 2,1)
2x5355
64Bit-EFI-Emulator (Chameleon)
Working sound with orig. Kext´s
Sascha_77
Newbie

Offline Offline

Posts: 29


« Reply #12 on: September 10, 2011, 07:26:20 AM »

Got the sound to work with orig. 10.7.1 Kext´s.  Grin Grin Grin Here is my little workaround:

Open terminal and execute this:
Code:
cd /System/Library/Extensions
sudo kextunload -b com.apple.driver.AppleHDAController
sudo kextload -v 3 AppleHDA.kext/

Wait a few Seconds and the Audio-Devices appearing.

« Last Edit: September 10, 2011, 12:00:34 PM by Sascha_77 » Logged

MacPro 2,1 (flashed from 1,1 -> 2,1)
2x5355
64Bit-EFI-Emulator (Chameleon)
Working sound with orig. Kext´s
Sascha_77
Newbie

Offline Offline

Posts: 29


« Reply #13 on: September 10, 2011, 11:51:15 AM »

For all who want it automatic on boot... follow these Steps:

Create an empty file with name "audiopatch.sh" and save it somewhere in your Userfolder or another Place. The Content of audiopatch.sh should be this:
Code:
#!/bin/sh

/sbin/kextunload -b com.apple.driver.AppleHDAController
/bin/sleep 4
/sbin/kextload /System/Library/Extensions/AppleHDA.kext

After you saved the file open the Terminal and "cd" to the directory where this scripts is and type

Code:
chmod u+x audiopatch.sh

Ok. Now follow the next step. Leech this small tool:

http://surfnet.dl.sourceforge.net/project/lingon/Lingon/2.1.1/Lingon-2.1.1.zip

Create a new "USERS DAEMONS" with this tool. Give it a Name at Point 1 and click on "Expert Mode". Paste this Code into the Window:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.sl.audiopatch</string>
<key>ProgramArguments</key>
<array>
<string>/Users/luigi/Documents/shell-scripts/audiopatch.sh</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>ServiceDescription</key>
<string>AudioPatch</string>
<key>UserName</key>
<string>root</string>
</dict>
</plist>

The only step which is to do now is to change the Path to your audiopatch.sh. My Path is "/Users/luigi/Documents/shell-scripts/audiopatch.sh".

Change it to your needs. The rest can be leaved untouched.

Reboot und et voila .... your Audio-Devices are back.

Hope it helps.  Grin
« Last Edit: September 10, 2011, 11:55:32 AM by Sascha_77 » Logged

MacPro 2,1 (flashed from 1,1 -> 2,1)
2x5355
64Bit-EFI-Emulator (Chameleon)
Working sound with orig. Kext´s
GULLYMAN
Newbie

Offline Offline

Posts: 20


« Reply #14 on: September 11, 2011, 03:19:44 AM »

On a Mac too?  Shocked MacEFIRom, do you confirm?
That means we have a solution to all our issues with PC cards not showing boot screen or flashed cards requiring a particular EFI (64/32). That would be too good to be true.


you are missing the point of flashing cards. Flashed cards = no fiddling with software (injector), you can sell card, move between machines, no chance of updates breaking it (probably). Bootscreen isn't the big deal, and using another bootloader on a mac pro isn't news either.
You can already see everyone trying out this workaround above have had issues. Not trying to piss on the thread, but imo you invest alot more time fiddling then what you get out in performance and features with this workaround.

JMO but I'm enjoying using K64 mode. It does actually offer some performance boost in certain apps, and is giving me serious washed car effect, which is psychological, but still fun ;-)
Logged
Pages: [1] 2 3 ... 59
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2013, Simple Machines
SMFAds for Free Forums
Valid XHTML 1.0! Valid CSS!