Mac Pro Firmware Upgrade Utility Released!

(1/243) > >>

As you may know, some Mac Pro models have been introduced that are identical or very nearly identical to the model that preceded them. Such is the case with the 2007 Mac Pro (MacPro2,1) and the 2010 Mac Pro (MacPro5,1). I decided to see if it was possible to come up with a way to update the firmware on the 2009 Mac Pro with the firmware from the 2010 Mac Pro. The hardware of these models is very close. The only thing that differs is the CPU socket mechanism on the dual CPU model, which uses Xeon CPUs with the IHS (Integrated Heat Spreader) removed, and the SMC firmware version. The CPU socket issue is transparent to the firmware, and the SMC firmware difference between 2009 and 2010 models is not an issue. As long as the SMC firmware version matches between the main board and the CPU board, everything works perfectly.

To explain how this was accomplished, let me first describe how the firmware update process works on a Mac. The firmware updater package, after checking that the Mac can use the update, places an EFI boot file named EFIUpdaterApp2.efi, which is very similar in structure to the standard boot file that starts a Mac on the system volume, in the /System/Library/Core Services/Firmware Updates folder, along with the actual firmware image. This boot file is then blessed in a special way, and the next time the Mac is booted from shutdown, with the power button held down for a few seconds, this special EFI program is run.

So how do we get the program to load the other firmware? It turns out that it is surprisingly easy. Inside the EfiUpdaterApp2.efi program are a list of firmware version strings from different releases of the 2010 Mac Pro, along with the CRC32 checksum of the firmware image file. If one of the firmware version strings is modified to what the 2009 Mac Pro model is, and the CRC32 checksum is changed to match the 2010 Mac Pro firmware image, and the firmware image filename is changed to the 2009 Mac Pro firmware image filename, then all is well.

I have tested this myself, on both 2009 and 2010 Mac Pro models. You can upgrade or downgrade at will. If you have a CPU in a 2010 Mac Pro that isn't supported in the 2009 Mac Pro, such as the Westmere 6-core Xeon, the system will not boot after the update until a compatible CPU is installed. I started off with just a few scripts and files in a folder to do this, but as a service to the community, I have written an installer program that does everything automatically. The program checks the Mac Pro model and will install the 2009 Mac Pro firmware or the 2010 Mac Pro firmware, whichever is appropriate. If you have a 2010 Mac Pro with a 6-core Xeon, the program will warn you, but still allow the firmware update. The download does not contain any firmware updater files or image files. The program creates a small RAM disk, downloads the needed files, copies all of the scripts to the RAM disk, and then runs the scripts. Everything is left on the RAM disk for you to look and and study, if needed.

I hope you enjoy this utility, and enjoy the benefits of extending the value of your Mac Pro.

Works on my 4,1...which is now a 5,1.

RAM still slow but I will try some other RAM I have.

UPDATE: Even with 1600 speed RAM in it ran at 1066, so either you need to match processors to RAM or I don't have anything worthy.

Thanks, Paul.

Who's got a couple 6 core Westmere's for me to test?

The RAM speed is determined by the CPU, and the Mac Pro firmware will not overclock it. If you install the Westmere CPU, and have RAM that is identified as 1333 or higher, it will run and perform at that speed, just like on the 2010 Mac Pro. You may have to do a PRAM reset after the upgrade for this to take effect. (Option-OpenApple-P-R at system boot time). Here is a link for memory that I tested that is a good value and worked perfectly:

Yes, after I posted that I remembered the whole "Nehalem has no front side bus" business. CPU chats directly with RAM.

Will be difficult to get Westmeres to test with.

If I'm going to do it, I want to do it right.

Nicely written app, I am surprised that there hasn't been more of a fuss.

Going to mean good things for 2009 values. (from perspective of 2009 owner )

I have a MacPro 4.1 octocore 2.26 Ghz. So the benefit for me to upgrade the firmware would be to allow me to use more types of processor if I want to upgrade them? Am I correct ?
Which ones for a MacPro 4,1 and which ones for a MacPro 4,1 "upgraded"?


[0] Message Index

[#] Next page