Flashing 5770 and 5870 for Mac Pro 2008 and later (EFI64 for now boys, sorry)

Discussion in 'Mac Pro' started by MacVidCards, Jul 30, 2010.

  1. MacVidCards Suspended

    Nov 17, 2008
    Hollywood, CA
    I went ahead and got one of these:


    And there is some good news. I dumped the ROM and had a look. (attached) It has 43K of free space in middle. Pretty sure from memory that this is MORE than the 4870 EFI portion. And with a 128K chip. There is even another 1.6K empty at the end, so we could move the GDDR5 table down a smidge to grab some more space, if we change the MCUC address, like with some 4870/90 ROMs.

    So, unless Apple BLOATS their EFI, there is a GOOD chance that just like 4870, we will be able to flash most if not all of the 5770 cards. By this I refer to likelihood that Mac ROM will fit on the EEPROM chip present on PC 5770s. While the GTX285 flashes beautifully ONCE YOU PUT A 256K EEPROM ON IT, which is unfortunately impossible for 99% of people. We may be able to avoid all that soldering with these. If Apple gets the EFI portion over 45K we may be in trouble, however.

    I was unable to get even basic functionality / frame buffer from 5770 with any version of ATY_Init I could find.

    I attempted to place the BIOS into the ATY_Binimage field, but even without 3000 kext, I got a KP. So, I probably didn't do it right. Netkas could do this better but it seems likely that he reason to believe that it won't work any better than 5870, as he has written 5770 ATY_Init for Hacks that specifically mentions "not for Mac Pro"

    I can completely understand if he would rather wait a week or two until final ROMs / drivers make it out into the wild as many current problems will likely go away, and some new ones might very well show up.

    Can't wait.

    Attached Files:

  2. DylanLikesPorn macrumors 6502


    May 20, 2010
  3. goMac macrumors 604

    Apr 15, 2004
    It's only the pre-2008 Mac Pros that have issues. Any 2008 Mac Pro or beyond will work with any new card.

    It's gonna be a long long time until we have EFI 128 to worry about.
  4. nanofrog macrumors G4

    May 6, 2008
    It won't be needed for some time, but Apple could use it as a means of forced obsolescence for EFI64 system owners so they have to upgrade to continue getting the latest versions of OS X and possibly add-in hardware, such as graphics cards.
  5. goMac macrumors 604

    Apr 15, 2004
    So far everything they've done has kept them in the EFI standard. I doubt they'd move themselves out of the standard just to force people to upgrade. Especially in since it makes graphics vendors and other card vendors less likely to port to Mac. With the way things are right now, when the Wintel side starts to adopt EFI the Mac will have more options.

    Apple moving to some sort of custom EFI would mean no interchangeability with Wintel hardware which I don't think they'd be seriously inclined to do. The EFI64 move wasn't made to force users to upgrade, it was made because it was necessary to keep in sync with the EFI standard.
  6. nanofrog macrumors G4

    May 6, 2008
    As per forced obscelescence, I do think Apple's willing to do that. They never created an EFI64 firmware update for the 2006 - 2007 system owners (which is all they needed to be able to continue to use newer nVidia cards, and will need once OS X goes K64 exclusively to continue to update the OS). At least this is how I see this, as it's industry standard to support enterprise grade hardware for 5 years from the initial release (2007 owners would only get 4 in such a case, as they bought a year or so later). Ultimately, they lost unfettered graphics card support in ~3yrs, which is why I've the impression Apple treats all of their systems as consumer gear.

    There's few graphics card choices anyway, so they may have little concern over such issues (whether 3rd party vendors will offer products for the Mac platform or not). This is further complicated by the professional side, as the software would need to support such cards like PNY's FX4800 Quadro Mac Edition card (i.e. has the proper support for the extended features offered in the drivers). As the software side isn't there that I'm aware of, it seems like a "Chicken and the Egg" scenario to me (not heard of any cooperation between software and hardware vendors on this, unlike the PC side).

    In the case of EFI64, it was needed.

    As per whether or not it's "custom", the authentication portion seems to be (i.e. just use an offset from the base address to begin the remaining EFI code that's 100% 1.10 specification compliant; base address to offset - 1 for the authentication code). Past that, it follows the 1.10 specification, or EFI hardware designed for the Itanium systems wouldn't work (i.e. RAID cards that do offer EFI boot along with OS X drivers).
  7. jhero macrumors 6502


    Jan 10, 2005
    Not near an Apple Store
    Progress nonetheless! If everything goes well, this will be able to also boot fine into bootcamp as well?
  8. goMac macrumors 604

    Apr 15, 2004
    From the people I know at Apple, the attitude is that Apple doesn't want to spend the effort to maintain legacy support. It has nothing to do with intentionally forcing people to upgrade. Apple just doesn't want to spend the effort putting K64 on 32 bit EFI.

    Switching EFI intentionally wouldn't make sense. It would add work for Apple, not reduce it, which was the entire point.

    As shown by the whole 5X00 series and GeForce 4X0 series thing going on right now, the OS X drivers are actually pretty flexible. It's the EFI handshake that's the issue. At the very least, once PC vendors start supporting EFI in greater numbers, one could buy ANY GeForce 285 off the shelf, instead of only having the choice of EVGA's version.

    This also ties back into Apple doing less work nicely. They wouldn't need to worry as much about covering all the GPU bases.

    While I'm a software engineer, I've never done EFI. That said, it looks like the UEFI spec defines a header that defines an offset for the system to jump to in order to parse the EFI bytecode, in addition to a checksum and all that.

    The only thing that really worries me is iirc Apple doesn't support the UEFI 2.0 spec, which means we still can't do stuff like Windows 7 native EFI booting. But UEFI 2.0 would be compatible with any EFI device.
  9. nanofrog macrumors G4

    May 6, 2008
    I realize this was the primary reason.

    My problem is, that given the fact they're not willing to support the system fully for 5yrs is a bit of an insult, given the fact it's a workstation using workstation parts (not a machine claimed to be a workstation using consumer parts, as you may find with some SP systems offered by other vendors, namely the small ones). I recall i7's passed off as workstations (definitely not Xeons).

    Back then, the system prices were quite attractive compared to what's being sold now (particularly for the SP systems from 2009 on, which are ~$1000 or so more than the competition). No where near that much with the DP models, and decreases as you push the clock frequency.

    But they were still considered premium systems in 2006/7, just as they had been, and still are (though they did compare well to other vendors). The other vendors however, do support their enterprise systems for 5 years (from the initial release).

    Those systems can be used to run Windows or Linux without any issues over graphics cards and 64bit versions of the respective OS's, as the actual hardware used was 64bit.

    This may not have been the primary intention, but it's still the effective result. They should have made the initial Intel based systems EFI64 to begin with IMO, but that would have meant a lot more work.

    They certainly have the funds available to hire on additional personnel to handle their coding workload, as well as hardware engineers (firmware and validation).

    Back then, No. It still would mean more work, but it's at least possible, as Apple makes their income on hardware sales, particularly in the case of the MP (some software - FCP or Logic, and on occasion the OS, though the profit there isn't likely much at all, and some content delivery). OS X is sold off inexpensively, and it's the consumer side that content delivery is a big deal IMO (more users that want content). So I see the hardware as where the profits are likely to be derived more than other segments in Apple's lineup.

    I don't have an issue with the drivers in the context of what we're talking about. The market is small for other vendors to enter it, as the MP is the only systems users can upgrade the graphics cards. Everything else they sell is fixed at manufacture.

    As per the handshake, I don't see that as the primary issue. EFI entering mainstream use however, is. Intel's the only other user of EFI capable boards I can think of (in non Itanium systems), and that's just for the Server boards. Even the Workstation units are BIOS only right now AFAIK. Their consumer boards are definitely BIOS only.

    Adoption in this instance is very slow, as BIOS is entrenched, and there's been insufficient motivation to adopt it. There's been one demonstration in 2008 (MSI - article about it), but I've not heard of anything since (none of MSI's retail boards have shown up with it AFAIK).

    All they did, was to make the interface look much nicer. No actual features have shown up yet (i.e. the ability to reconfigure PCIe lanes in a system, as was possible for the 2006/7 systems, and one of the reasons EFI is attractive to me).

    Don't forget, this actually plays into Apple wanting to make as much money as possible (super cheap as to what they invest in a design). Less work, fewer people, and fewer features. I presume they just don't consider any other system as competition based on the fact they can't run OS X (unhacked).

    Apple's using EFI 1.10 spec, not UEFI 2.0/2.1 (Intel also did the '06 - '08 boards for Apple). I'm thinking that was handed off to Hon Hai Precision (Foxconn is their retail branding) for the 2009 and 2010 systems though.

    Intel's got some reference material up still, so take a look if you're interested.
  10. TheStrudel macrumors 65816


    Jan 5, 2008
    I feel like one guy could have done all the work that was needed for the 2010 Mac Pro upgrade.

    That may be overstating it, and I doubt they have people dedicated to the box in any case, but it seems like their workload for this machine is extremely small...and they have no plans to ever see that change.
  11. MacVidCards thread starter Suspended

    Nov 17, 2008
    Hollywood, CA
    At the risk of threadjacking my own thread, I would say that Apple probably developed '08 MAC using '07 or '06 machines. I'd bet $100 that they have a nearly perfect EFI64 Rom for the earlier machines. They just have no reason beyond common decency to release it. Not to mention the fact that they would have to train a few hundred of their "geniuses" how to explain and deal with it. And that it would likely create trouble with something. I have been contacted by a person with advanced knowledge of this but all I can pass on is that there are more hardware issues with this than currently known.2009 to 2010 upgrade may be easier.
  12. nanofrog macrumors G4

    May 6, 2008
    Possible, but there was probably a few involved (say 3 - 5), assuming they started from scratch. They may have had some source code from Apple though at that time that was used as a basis (i.e. add in authentication, and adjust if any other parts had been changed from the Intel reference design).

    In terms of hardware, not that much, particularly as Apple uses ODM's to supply the boards. Apple's personnel would handle things like firmware, OS X drivers, and validation testing.

    I'd imagine they were experimenting with EFI64 on the '06 boards (gain proficiency at a minimum, with the expectation it would serve as a template to reduce the workload when the eventually released the next board design), but didn't add it until the '08 system, as it was necessary to do a re-write (different CPU's and chipset at a minimum).

    If the 2010 uses the exact same hardware on both the main logic board and daughterboard (only the firmware code differs, despite the P/N change), then it would be easier.
  13. SwizzlePizzle macrumors newbie

    Jul 3, 2010
    So you're saying the 5770 running in Mac OS X on a MacPro1,1 might not be possible? That is pretty disappointing.

    Interesting post.

    I'm about to order this card (Mac Pro 1,1). How many power 6pin power connectors does it require?

    I'm going to get a PCI-E 6pin to Molex adapter. Is that all I need?
  14. goMac macrumors 604

    Apr 15, 2004
    Entirely possible, but it's not as simple as just releasing it. They have to send it through the Q/A process which sucks up time and money. Far from impossible, but Apple likes keeping engineers on new products only. Maintenance has been kind of an issue for Apple. I still remember Power Mac G3s with broken ATA controllers that never got fixed.

    I think the only variable is if the chip on the Mac Pro would have enough room for an EFI64 firmware.

    Oh, I'm not saying it's a cool thing for Apple to be doing. If I had a Mac Pro 1,1 I'd be pretty pissed (I've got an 08). But what I'm saying is Apple didn't move to EFI64 just to screw older Mac Pro owners, so I doubt Apple would intentionally orphan Mac Pro owners.

    I definetly think the 08 Mac Pro was the sweet spot, very happy with mine, and I recommended my friends pick up 08's instead of 09's while they lasted.

    At work I have an 09, and it's still a solid machine, but I don't really see too many advantages over my 08.

    Apple is the sort of company that is always distracted by creating new things instead of maintaining the old. It sucks, but it's pretty classic Apple. I worked in IT for a few years at a place without around 15,000 Macs, and Apple was infamous for selling us X product with Y showstopping bug, and then taking years to fix it, all the while introducing new stuff.

    The reason I bring it up is because, in theory, if Wintel fully embraced EFI, there wouldn't be any extra work to bring a card to the Mac. You could just grab any card off the shelf, even if it wasn't officially supported on the Mac.

    I owned an EFI P4 years ago before Apple moved to Intel, but it was actually an Intel board. I know a few PC vendors have actually moved to EFI already, but for the most part all the machines they sell are just running the BIOS shell component of EFI. Windows doesn't normally come preloaded in the EFI variant, so the machines don't do a native EFI boot.

    I think Apple is more the sort of company that likes small teams because they're less cumbersome. They've never really had an issue with hiring more people when necessary, after all, they're building a second campus to house them. Last I heard, main campus wasn't actually a pretty picture. There were some whispers about them having to cannibalize break rooms because they didn't have enough room for all the employees they were hiring.

    Again, I don't think the Mac Pro 1,1 not getting EFI64 is as much an evil plot to make money, as much as Apple is just severely ADD. I'd be willing to bet there was probably an upgrade plan at some point, and they just got distracted with some other project and never released it. If you look at OS X, there are plenty of issues that come down to the same sort of disorganization (I'm looking at you resolution independence.)

    Possibly. I know they used to do the boards here in Portland at Intel's design facilities. I always heard interesting stories about that. Apple basically told them the dimensions of the case and told them to build a system. Wasn't actually a bad idea. The Mac Pros have been the most reliable towers in a long time.

    I remember looking at the EFI API a long time ago because I was looking at writing some software that needed to run pre-boot (was working IT and needed to selectively keep people from booting from their own volumes.) I haven't looked at the spec in a while though, as I'm doing graphics/video programming now. :)
  15. nanofrog macrumors G4

    May 6, 2008
    I agree, EFI64 wasn't designed to screw over the 2006/7 system owners. But the lack of offering an EFI64 firmware for those systems lends me to think that they may willing to use EFI128 to force users to buy newer systems at some point. :eek: They make their money on hardware sales in the MP segment afterall... ;)

    At least that's how I put those two pieces of information together. Hopefully it'll never happen, and I'll just be overly suspicious. :D

    As do I, and recommended the same at the time. If a 2008 system shows up at a decent price, it's still a good deal for many IMO.

    I realize this, and focusing on new products is fine, and is absolutely necessary (particularly for consumer products). But not at the expense of support, especially for the enterprise grade gear. The 5yr support length I mentioned is for a reason; such equipment is expensive, and purchased over time (not meaning credit), but rather n units broken up over time. Multiple purchase orders at say n/12 (Quarterly purchases spread out over as much as 3 years). Hopefully it's not that long, but hopefully you get the idea. IT personnel like yourself need multiple systems with identical configurations to keep it all managed (don't know if you were ever involved with the actual purchase order aspect or not, so if you're aware of this, please don't take it offensively).

    I realize this. Unfortunately, there's little motivation to do so (i.e. things users want have been able to be figured out with BIOS so far). EFI currently only seems to be viewed as a means of making a nicer interface for users rather than additional functionality. :( Intel's current chipsets don't help this either (i.e. 2009 MP systems use a 16 + 16 + 4 lane configuration, where the 4x lanes are switched between Slots 3 and 4). This makes lane configuration impossible. Personally, I see such implementations as a "shot in the foot" in terms of making U/EFI adopted by other board vendors. Users are also willing to accept fixed slot configurations, which doesn't help either IMO.

    All in all, not much motivation to get board makers to move on it just yet.

    The only systems I've ever had access to that actually used EFI (non Apple), were Itanium based. Though I haven't had access to Intel's newer server boards (keep getting others), but wouldn't be surprised if it's EBC (easier to do IMO).

    BTW, what other board makers are actually using any form of EFI (EBC, UEFI 2.0/2.1)?

    I don't have a problem with small teams (can be more effective than larger ones). But don't cannibalize teams from other areas for members (i.e. multiple small teams), at the expense of the areas those teams pulled from suffer. That's what I see happening anyway. Too many new projects needing people, so they're pulling them from A to work on B without anyone to handle A.

    Granted, I realize that space can be a problem (no place to put new personnel physically speaking), but I chalk that one up to poor planning, as those that make these decisions knew that newer projects were going to be started.

    The ADD portion is likely, but again, that's poor planning/communication in such situations IMO. Things like resolution independence would have required existing people working on it to get it out, not pull them for another project, and no new people coming in to keep up with the work if it's a talent issue (i.e. those in one area have skills that are harder to find, and would be appropriate for the new project).

    I just can't see it but coming down to short-handedness in terms of developers (features dropped/pushed back as there's insufficient personnel to get it done on time).

    This is a common scenario, as it's really rare to find a company that designs and manufactures their own products nowadays. It's all gone OEM at best (vendor at least does the design work), and more likely ODM (contractor/s do/es it all - design, manufacturing, and final assembly).
  16. netkas macrumors 65816

    Oct 2, 2007
    Ok, bad news, 5750 efi rom from imac is x86_64, not EBC.

    means macpro pre2008 users dont need to bother.

    I made first experimental version of rom for 5770, waiting now for Rominator, or anybody else who is able to test.
  17. MacVidCards thread starter Suspended

    Nov 17, 2008
    Hollywood, CA
    Netkas Strikes Again !!!

    still has bugs, no EFI boot yet, but not bad for a cobble job.

    Attached Files:

  18. netkas macrumors 65816

    Oct 2, 2007
    its efi boot, just no output detected durring boot because efi rom from mobility(i guess so)
  19. MacVidCards thread starter Suspended

    Nov 17, 2008
    Hollywood, CA

    Silly, inarticulate me, I meant no efi BOOT screen.

    And i'm sure that will come once the bona-fide roms come.

    meanwhile, I just tried a variety of port plugging, etc.

    The DisplayPort works fine, as you can see from screen shot.

    But no matter how I plugged in my 3 digital displays, one always got booted off.

    So, something maybe still coming in drivers?

    Attaching benchies, keep in mind that OpenGl View just got updated, sadly they didn't update the results page with a version number or anything, and since scores are now a fraction of what they were, we all need to be sure we are on same version.

    This is 3.31 I believe.

    Gonna pop a 4870 in and see how that compares.

    BTW, I hope that Netkas comment about "Pre 2008 needn't bother" sinks in.

    It would look like the worst case scenario has occurred. EFI64 ROMs for new ATI cards mean that 2006/7 Macs have their "Swan Song" GPU in 4870.

    We could still be surprised by EBC on 5770/5870 but reasons to hope for this have shrunk considerably.

    Attached Files:

  20. netkas macrumors 65816

    Oct 2, 2007
    Rominator, try 5xxx drovers from imac2010 update

    but 5870 test is first, so we can be sure new drivers doesnt **** it all up.
  21. MacVidCards thread starter Suspended

    Nov 17, 2008
    Hollywood, CA
    EFI boot screens on 5770

    More adapter fiddling got me the EFI boot screens.

    But....not easy unless you have multiples of a particular monitor.

    I think EFI sends EDID down wrong channel which gets fixed when ROM / BIOS loads.

    In any case, if I have one 24" Dell using an HDMI to DVI adapter to go into DVI of Dell, and the other Dell 24" connected to the upper DVI port on 5770 then the magical grey screens appear.

    Using 30" or DP in place of any of that and it is a no go.

    But at least it is possible.

    More testing later, need some rest, been up all night.
  22. netkas macrumors 65816

    Oct 2, 2007
    new 5870 rom is waiting for you in your mail box ;)
  23. DualShock macrumors 6502

    Jun 29, 2008
    WOW! You guys rock.

    If this works you've done a great service to the 5770/5870 wanting crowd (me included). :D
  24. Spacedust macrumors 6502a

    May 24, 2009
  25. netkas macrumors 65816

    Oct 2, 2007

Share This Page