netkas.org forum

General Category => Rom things => Topic started by: double-gee on August 05, 2016, 10:38:17 AM



Title: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: double-gee on August 05, 2016, 10:38:17 AM
Dear community,

as you all know the Radeon 6970m with either 1 or 2 gb ram that has been built into the iMac 27" (2011) is failing.
Reballing the gpu works in some cases but there are more and more system with dead graphics out there that would still make a good computer (i5 is ok, ram, you can put a ssd into it). I have two iMacs and don't want to throw them away.

There was an old thread from 2013 (http://forum.netkas.org/index.php/topic,490.0.html (http://forum.netkas.org/index.php/topic,490.0.html)) regarding replacement options but you can not get these cards anymore.

The task: Find a recent GPU with MXM 3 that is available on the markt and works in the iMac 2011.

There are reports that a geforce 780m (hardly available anymore) works in osx and windows but not in the efi boot menu (see http://forums.macrumors.com/threads/2011-imac-graphics-card-upgrade.1596614/page-21 (http://forums.macrumors.com/threads/2011-imac-graphics-card-upgrade.1596614/page-21)).
Isn't there a card available that we can flash (or actually flash the iMac's efi rom and add the proper graphics driver) and use in the iMac? Full usability including the bootmenu would be great. If that's not possible: which recent and available cards work at least after the OS has been booted?

The only options seems to flash a card or the rom to make the card completely working.
Can one backport the graphics drivers from never iMacs into the 2011's efi rom?

What about GeForce GTX 870m (originally for Alienware) or GeForce 970m?

Any ideas, please?


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 05, 2016, 02:12:30 PM
I think the 2011 iMac still uses UGA display drivers, just like the classic Mac Pro, thus it's unlikely that the EFI drivers from newer Macs will work here. You'll basically be limited to graphics card known to work (and be flashable) in cMPs with some additional constraints:
  • The MXM module has to be physically compatible, including correct output signals (some will stay black on the internal display)
  • The GPU should be supported by Apples stock drivers without modifications (or at least with Nvidias WebDrivers, in case you get a Nvidia GPU)

The mentioned GTX 870M might be a good options as it's a good old GK104, so drivers are definitely there. No idea if it's supported by Apples or Nvidias drivers (depends on device ID), if it has the right connectors and if it can be EFI flashed.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: ironsniper on August 06, 2016, 02:36:33 AM
i just signed up cause i saw this post from the mac rumors forum, here is a short list of the mxm video cards from the 2011 model imacs could an hp or dell version of these be flashed to work on the mac?

6750m

6770m

6970m


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Rominator on August 06, 2016, 09:25:15 PM
They already are being flashed.

All you need to know can be gleaned from images on EBay.

Some folks in China figured out which cards can be flashed. Instead of being mouthy idiots (like me) they just quietly started selling them. Since "flashed iMac video cards" isn't a thing, nobody asks or lists what they are .

I want to develop some roms, I bought 1 of each card but just haven't found the time. I also need someone in Hollywood with a 2011 iMac, preferably with an MXM cable that allows testing of cards outside machine.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: ironsniper on August 07, 2016, 05:56:34 AM
They already are being flashed.

All you need to know can be gleaned from images on EBay.

Some folks in China figured out which cards can be flashed. Instead of being mouthy idiots (like me) they just quietly started selling them. Since "flashed iMac video cards" isn't a thing, nobody asks or lists what they are .

I want to develop some roms, I bought 1 of each card but just haven't found the time. I also need someone in Hollywood with a 2011 iMac, preferably with an MXM cable that allows testing of cards outside machine.
is there any  laptops that support that card with a second built in video card incase the mxm video card fails? if so and one can be found cheap enough i would be willing to buy one and one of those cards to try and flash it to work in my 2011 27inch imac


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 15, 2016, 10:11:52 PM
I have been following the forum on Mac Rumours for quite some time and decided to register. I have a 2011 with this problem and have been working on trying to sort it for a few weeks. I purchased a Dell Nvidia 660M from eBay and have flashed with a UEFI BIOS. Works perfectly in Bootcamp with Windows 7, so know the display routing is correct (?) but nothing displayed in OS X on built in display but working Remotely and displays the correct card in about this Mac.

As soon as i install the Web Drivers, machine won't boot! Shows built in display as 1280x1024. Is there anything I can do to get this to work in OS X?

Disabled System Integrity Protection etc, are there any parts of the Hackintosh Clover Bootloader do you think that would allow OS X to be modified to use the new graphics card properly?

See attached IORegistry screenshot, can anything here be changed to default display to Displayport / LSDAn port of the 27 inch panel? I have been researching display routing and editing BIOS ROM Files for the display routing but can't find much guidance!

Any help would be really appreciated !


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Rominator on August 15, 2016, 10:17:17 PM
where did you get a UEFI for it?

BTW, Macs don't use a UEFI, but their own version.

So all you can do with a UEFi is make things worse.

I would recomend buying the EXACT card that somebody else got working. Going off the reservation gets you black screen.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 16, 2016, 09:58:00 PM
I found it on Tech Power Up, from a forum talking about the cards when being used in Alienware laptops.

I thought that having the UEFI might help things but for the Mac OS has made no difference. Have gone back to OS X Mavericks today to try that but again no difference.

I have seen the 780m but it was the cost that was the problem. This 660m was £90 and it being from the 2012 thin iMac like the 680 was in guessed it might work

The ones being sold in China 'As new', on eBay the ones that would work?

If it works in windows with internal and external monitor, does this mean the display routing is correct?

Sorry for so many questions!


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 17, 2016, 09:14:38 AM
The hardware should be fine if your internal display is working in Windows. Can you upload the VBIOS?


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 17, 2016, 07:14:39 PM
Attached the VBIOS that works with all displays.

The original one wouldn't work and tried another one online which wouldn't either. So guess this one must have been designed with the iMac in mind?


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 17, 2016, 08:32:00 PM
Your VBIOS defines a total of 14(!!) ports on 5 different busses and 10 connectors. Most of them are combined DisplayPort / TMDS, just the first is LVDS and the last is VGA. Maybe that's too much for OS X drivers, so they fail to init properly and/or leave out the critical DP connector?

I'd try to remove all but the LVDS port and see if that enables your internal screen in OS X. Also verify in Windows to ensure you didn't break the ROM.
Documentation can be found here: ftp://download.nvidia.com/open-gpu-doc/DCB/1/DCB-4.0-Specification.html#_dcb_device_entries


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 17, 2016, 08:40:58 PM
14 ports, wow! I can only guess that maybe its for added compatibility with the different alien ware laptops. That sounds like it could be the problem. I am not experienced with editing the BIOS itself only flashing. What tool would you recommend for doing so? Have tried opening with Hex programs and doesn't look like its displayed correctly, or this just my lack of knowledge? Thanks for the documentation, reading that now


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 17, 2016, 09:30:04 PM
I don't think there's any tool to accomplish that, just the DCB spec & the hex editor of your choice.

I could give it a go when I find some time, maybe at the weekend. I don't want to "remote brick" your card though, can you recover in case things end badly?


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 17, 2016, 09:41:35 PM
I have it open now, I am trying to figure out the where the DCB is located, my experience with Hex is very limited. A new learning curve..

That is really kind, if you could that would be really great! I haven't got another machine, but could I use a VNC Client and reflash again through Windows?

I was thinking, I known working card with this iMac is the 680m and 780m can the DCB be copied from the BIOS from one of these cards and combined with mine?


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Rominator on August 18, 2016, 01:52:10 AM
13 0F 00 01 34 00 01 00
12 1F 00 01 10 00 02 00
12 2F 00 01 30 00 02 00
D6 5F 01 08 20 00 42 0F
92 5F 01 08 20 00 02 00
C6 4F 01 08 10 00 42 0F
82 4F 01 08 10 00 02 00
82 3F 01 08 30 00 02 00
B6 8F 03 04 10 00 42 0F
72 8F 03 04 10 00 02 00
A6 7F 02 02 10 00 42 0F
62 7F 02 02 10 00 02 00
62 6F 02 02 10 00 02 00
00 9F 04 02 00 00 00 00

13 0F 00 01 34 00 01 00
1F 1F 00 01 10 00 02 00
1F 2F 00 01 30 00 02 00
DF 5F 01 08 20 00 42 0F
9F 5F 01 08 20 00 02 00
CF 4F 01 08 10 00 42 0F
8F 4F 01 08 10 00 02 00
8F 3F 01 08 30 00 02 00
BF 8F 03 04 10 00 42 0F
7F 8F 03 04 10 00 02 00
AF 7F 02 02 10 00 42 0F
6F 7F 02 02 10 00 02 00
6F 6F 02 02 10 00 02 00
0F 9F 04 02 00 00 00 00

Pretty sure you want to replace top items with bottom, then fix checksum

Wait til florian confirms


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 18, 2016, 05:26:50 PM
Right ok, Thank You. I will have a look at that this evening. To fix the Checksum, do i select the whole hex code or the new part and then the Generate Checksum option?


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 18, 2016, 09:53:30 PM
I have no idea whether what I have done is right but see attached VBIOS. Replaced the relevant hex code from Rominator (Thank you!) and then went to generate a checksum-32


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 19, 2016, 08:27:51 AM
Rominators edits are what I had in mind. Didn't look into your ROM file yet, but it should be simple search & replace.

I think the simplest way to fix the checksum is using Kepler BIOS Tweaker.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 19, 2016, 05:33:13 PM
I have searched and replaced again and then simply saved. Opened with the Kepler BIOS tweaker (displayed wrong checksum) I then put up the memory frequency, then saved to get the correct checksum. Put it back down again and saved.

It was originally showing E1 - [E1] checksum  and now it shows 46 [46] - is this ok?

Have attached to this post. Hoping this one is correct! It would be great if you could check it and I can try it on the card.

If i have remote access to the PC, am I correct thinking I can reflash it again if it doesn't work?

Thanks


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Rominator on August 19, 2016, 11:58:42 PM
You may need backup plan. Kepler and Maxwell are prone to "failed to merge inforom image" error which can brick cards.

Easy enough if you can swap eeproms but I noticed that some Nvidia MXM cards have switched to more of a BGA type eeprom.

If you have original rom image it us always saveable, issue is bother and expense.

This is why I would love to find anMCM cable extender to make iMac testing a breeze.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 20, 2016, 07:06:39 PM
The original ROM image is available on Techpowerup so I can always go back to the original compared to mine now, so this should be ok for restoring, i'm thinking? I'm guessing there is no way of telling if it is more of a BGA type eeprom? I have managed to get another 2011 iMac with the same problem as mine, so thought i could dismantle this one and use it out of the housing!

If i verify it through NVFLASH will it not come up with an error if it is wrong?


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 20, 2016, 08:49:00 PM
If things go horribly wrong, you might not be able to boot up your Mac again with the GPU installed, or be able to boot but unable to flash, because nvflash might refuse to do so. In this case you'd have to short circuit the EEPROM or replace it altogether. That's not too difficult with usual SO8 chips but might become tricky if you encounter one of those BGA chips (never saw one on a GPU, but I also never had a MXM card in my hands).

From my personal experience such a bad brick won't happen unless you start doing very stupid things and/or tough critical sections of the ROM. Changing a few bytes in the DCB table should be safe, at worst you should be booting blindly.

Btw, it's a good idea to read the name of the SPI flash with nvflash, so you know what you're looking for on your GPU  ;)


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 20, 2016, 09:14:39 PM
I have just flashed it again, booting up but nothing on the screen again! Windows or Mac :(

Interestingly I had to download a new driver for it with this BIOS, still wouldn't work. Have gone back to the original factory Dell VBIOS now and working in Windows perfectly. My DCB table is the same as the Dell 680m which is supposed to work in Mac, so its strange. If i copy the DCB from say a 780m will this brick it?

I know LVDS was supposed to be first but before it was displaying DisplayPort as the connection used for the iMac screen. Should this be listed first? I read another post about it.



Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 21, 2016, 11:17:13 AM
Okay, so I guess this means the internal display isn't connected through LVDS but DisplayPort?  ???

I don't know if there's any way to do so, but I'd try to find out which port is used when the GPU is flashed with the (sort of) working VBIOS in Windows.
Otherwise you could try 0xf'ing out other ports to find the relevant one, and only leave this one active.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 21, 2016, 11:55:13 AM
I think it must be, it could be they call it LVDS because the cable looks like that but actually its displayport protocol? I have read on another forum that since 2009 they have used eDP (enhanced displayport protocol) instead of LVDS. Same connector physically but different signal.

While looking through the settings on the Nvidia control panel on the 'Audio Devices' it lists and numbers ports. iMac is on DisplayPort (3). the external screen while on a minidisplayport to VGA adapter is listed as being connected by DVI ?! See attached image.

Very confusing..

With my DCB Table on Rominator's post which entries should I be removing?


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 21, 2016, 04:24:24 PM
Your full table of DCB entries looks like this:

Code:
DCB Table @ offset 0x5a9d:
Type: EDID: Head: Conn: Bus: OD:
Connector 0: 0x3 0x1 0xf 0x0 0x0 0x4
130f000134000100
Connector 1: 0x2 0x1 0xf 0x1 0x0 0x0
121f000110000200
Connector 2: 0x2 0x1 0xf 0x2 0x0 0x0
122f000130000200
Connector 3: 0x6 0xd 0xf 0x5 0x1 0x0
d65f01082000420f
Connector 4: 0x2 0x9 0xf 0x5 0x1 0x0
925f010820000200
Connector 5: 0x6 0xc 0xf 0x4 0x1 0x0
c64f01081000420f
Connector 6: 0x2 0x8 0xf 0x4 0x1 0x0
824f010810000200
Connector 7: 0x2 0x8 0xf 0x3 0x1 0x0
823f010830000200
Connector 8: 0x6 0xb 0xf 0x8 0x3 0x0
b68f03041000420f
Connector 9: 0x2 0x7 0xf 0x8 0x3 0x0
728f030410000200
Connector 10: 0x6 0xa 0xf 0x7 0x2 0x0
a67f02021000420f
Connector 11: 0x2 0x6 0xf 0x7 0x2 0x0
627f020210000200
Connector 12: 0x2 0x6 0xf 0x6 0x2 0x0
626f020210000200
Connector 13: 0x0 0x0 0xf 0x9 0x4 0x0
009f040200000000
Connector 14: 0xf 0x0 0xf 0x9 0x4 0x0
0f9f040100000000
Connector 15: 0xf 0x0 0x0 0x0 0x0 0x0
0f00000000000000

"Type" is the signal type (0=VGA, 2=TMDS [DVI/HDMI], 3=LVDS, 6=DP), "Conn" is an index for each physical connector.
Each DP port also contains a TMDS signal for backward compatibility, so this might explain your VGA adapter being listed as "DVI".

Your GPU has 4 DP ports (including 4 additional TMDS ports), so I'd try to mod the ROM to just include those ports and disable all remaining ones. This should look like that:

1F 0F 00 01 34 00 01 00
1F 1F 00 01 10 00 02 00
1F 2F 00 01 30 00 02 00

D6 5F 01 08 20 00 42 0F
92 5F 01 08 20 00 02 00
C6 4F 01 08 10 00 42 0F
82 4F 01 08 10 00 02 00
8F 3F 01 08 30 00 02 00
B6 8F 03 04 10 00 42 0F
72 8F 03 04 10 00 02 00
A6 7F 02 02 10 00 42 0F
62 7F 02 02 10 00 02 00
6F 6F 02 02 10 00 02 00
0F 9F 04 02 00 00 00 00


As you can see, just the DP ports (type = 0x6) and their corresponding TMDS signal are enabled, all others are 0xF'ed.

Good luck!!  :)


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 21, 2016, 07:48:43 PM
Thanks for the response! I have edited the BIOS again with the new strings and working with the internal display in both Mac and Windows  ;D So Happy! Thank You!!

External displays no longer work however, i'm guessing this is because the DVI is no longer enabled?

I came across an Apple 660M BIOS online, which is from the 2012 iMac where its built onto the main board. Do you think copying the DCB table from here even so would solve all routing issues? I noticed its hangs on boot up like its checking all display port options!

I have attached this VBIOS for anybody else also!

Thanks


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 21, 2016, 08:42:04 PM
Nice! :) At least a partial success.

I guess that your external display stopped working means that the DP ports on your iMac (did you check both?) are not connected to DP ports on the MXM card but TMDS ports instead.

I'd suggest to do the following:
  • Use the original ROM and verify in Windows if the DP ports on your iMac can work with active DP adapters or native DP devices
  • Enable the remaining ports one by one and verify in Windows which one is connected to which port on your iMac
  • Create a ROM which contains just the necessary ports, nothing else

When this is done we could try attaching an EFI to the ROM to get your boot screens back.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 21, 2016, 10:42:31 PM
I hadn't checked both before!

I have just tried and one of them works with a DisplayPort to VGA Adapter. So just the port nearest to the Ethernet port that doesn't work, which is strange. Maybe there is configurations depending on whether you convert to DVI or VGA? I haven't got a HDMI or DVI adapter to try in the other port  :-[ Is there a way I can use IO Registry Explorer to view the port configuration on the registry?

I am going to try disabling each one tomorrow evening, hopefully to find out why one won't work. See attached 660m Apple BIOS, it has no EFI (as I think you stated in the mac rumours forum ! ) I tried searching for the DCB Table, it is different with it being an Apple BIOS?

If we could attached EFI that would be great, how do you go about doing this? It would be the perfect solution, I think the 660M is a good card to use for these models, as cards like a 780m are very expensive taking into consideration the value of the iMac itself.

I think there is an EFI related problem with mine is the iMac model on 'About this Mac' keeps changing (I have a 27') first boot it showed I had a 21.5 now it just says 'iMac'. !


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 22, 2016, 08:29:16 AM
Okay, so I think one of your external DP ports is mapped to a real DP port on your card, while the other one is routed to a TMDS port. I don't think there's any software way to change that, that's a hardware thing.
Again it would be very interesting to check the functionality with an active DP adapter or a native DP device, to ensure this theory is correct.

I don't think that those Apple VBIOS is helpful, because the 2012 iMac is completely different. Maybe they didn't touch the routing, but that's quite unlikely.

I'd try to attach the GTX 680 Mac Edition to your ROM, can do that in the next days. We'll see if the iMac likes it...
IMO that's a more promising approach than dumping the EFI drivers from a 2012 iMac, I think in 2012 they started using GOP drivers instead of UGA.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 22, 2016, 07:07:16 PM
Interestingly, I think that the external display port which does work is currently set as the Master Display as the login screen when booting displays on the secondary monitor. I then have to change it with the software on the Mac to be the second screen, whereas usually the iMac display as always defaulted as master. Does this mean that the external port that works (and is real DP) is the first display port listed in the DCB table that you sent me?

If so it narrows it down slightly before I reflash..

When you talk about 'Active' Displayport is this TMDS? So if i change all of the connectors to TMDS?
I do believe that for the external connections on the iMac, they are using active adapters after Internet Research. The 2011 iMac allows the only a thunderbolt (not Displayport) cable to also be used as an input for a MacBook etc. Displayport to VGA \ DVI \ HDMI should work as outputs on all ports however.

https://support.apple.com/en-gb/HT202214
https://www.tekrevue.com/tip/ins-outs-imacs-target-display-mode/

I believe that one of the ports at least goes through a thunderbolt controller with I/0 which means its not a normal kind of connection.


With the DCB, for example with Connector 3 (D6 5F 01 08 20 00 42 0F) which is type 0x6 (DisplayPort) which is supposed to be enabled, right, it has OF at the end which i thought meant it was disabled? Sorry if I sound stupid, I have got rather confused !! Also the ones listed in bold underneath the chart, are these the display port ones or the disabled ones or DisplayPort? I couldn't find those hash's listed underneath each connector in the chart!


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 22, 2016, 09:13:58 PM
Interestingly, I think that the external display port which does work is currently set as the Master Display as the login screen when booting displays on the secondary monitor. I then have to change it with the software on the Mac to be the second screen, whereas usually the iMac display as always defaulted as master. Does this mean that the external port that works (and is real DP) is the first display port listed in the DCB table that you sent me?
I actually never verified if the order of DCB entries equals the order of priority in OS X, but that might be true. I don't think that the first DP in the DCB table is necessarily your working external port, it might also be an port #2, while the internal one could be port #3 or #4 (just theoretically, might be different).

When you talk about 'Active' Displayport is this TMDS? So if i change all of the connectors to TMDS?
I do believe that for the external connections on the iMac, they are using active adapters after Internet Research. The 2011 iMac allows the only a thunderbolt (not Displayport) cable to also be used as an input for a MacBook etc.

I think you're mixing some things up. "Active DP adapters" are special adapters, which work as real DisplayPort device (they're needed for resolutions beyond 1080p or for multi-screen setups on AMD GPUs). Passive DP adapters are the usual ones which e.g. Apple is selling; they just passively pass through a TMDS signal which is generated by a "real" DP port as soon as it recognizes a passive adapter (instead of an active adapter or an real DP device).

And yes, the DP connectors somehow have to be routed through an Thunderbolt controller, but I guess (well, I hope) we won't have to care about that...

With the DCB, for example with Connector 3 (D6 5F 01 08 20 00 42 0F) which is type 0x6 (DisplayPort) which is supposed to be enabled, right, it has OF at the end which i thought meant it was disabled? Sorry if I sound stupid, I have got rather confused !! Also the ones listed in bold underneath the chart, are these the display port ones or the disabled ones or DisplayPort? I couldn't find those hash's listed underneath each connector in the chart!

Sorry, I should have explained that: The byte order is reversed, so the connector type is here: D6 5F 01 08 20 00 42 0F
So you just have to touch the 2nd half of the first byte, nothing else.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Rominator on August 23, 2016, 08:21:31 PM
encouraging progress !

keep up good work

don't forget "0E" is supposed to stop loading further dcb entries, I have seen it in Mac BIOS before when a PC port isn't used


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 23, 2016, 08:32:13 PM
Right, done many flashes this evening  ;D

I started off by changing the ROM so that each displayport with 6 in the second half of the first byte was changed to TMDS. (As well as keeping the corresponding TMDS) This displayed nothing on the screen on any monitor (Internal or External), so I don't think that any are 'Active' ports.
I then went through each one by one and enabled each one.

I have figured out that:
DF 5F 01 08 20 00 42 0F (NOTHING ON ANY PORT) (HAVE DISABLED)
C6 4F 01 08 10 00 42 0F (EXT DISPLAY 1)
BF 8F 03 04 10 00 42 0F (NOTHING ON ANY PORT) (HAVE DISABLED)
A6 7F 02 02 10 00 42 0F (IMAC INTERNAL DISPLAY)

I then tried just the two ports that wouldn't work on anything as TMDS (thinking they might be combined or something) and still nothing on 2nd thunderbolt / DP output.

I still cannot get the second thunderbolt port working. So I think it must use another kind of protocol apposed to DisplayPort or TMDS? Do you think that this could be a special thunderbolt port input? I was going to try LVDS and VGA as the protocol but I didn't think this was necessary?

If I simply cut and paste the iMac code above the EXT Display Port 1 will this make it master?

Regarding the EFI is it better if i'm using the UEFI designed BIOS for this card or the standard? I'm currently using standard!

Thanks for your help :)


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 23, 2016, 09:31:47 PM
You shouldn't set the "type" to anything else than "0xF" (-> disabling it) or it's original value (0x6 or 0x2). Configuring a DP port as TMDS (0x6 -> 0x2) shouldn't get you anything.

You seem to have found the 2 port definitions which enable your internal display and one of the TB ports, which is already a great first step!
The corresponding TMDS definitions (-> TMDS signal assigned to the same connector index, usually the line below) should also be enabled to retain the functionality of passive DP adapters.

To (partly) enable the 2nd DP port, you should now start re-enabling all other TMDS ports, one by one. One of them should enable your VGA adapter. :)
I'm quite sure this will do it, since that DP port was working with the original BIOS. I also think that it's one of the TMDS ports at the top of the list, but that's just a guess.

It shouldn't matter a lot if you're using the UEFI BIOS or the standard one as the UEFI will be overwritten anyway.

Good luck! :)


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 23, 2016, 11:15:05 PM
Thanks!  :)

I have now gone through and enabled each TMDS port, and have got no picture every time :( I did this in order and now have them all enabled. Is this the right thing to do or should I enable one and then disable it again and move onto the next one? My table now looks the same as the original but with the LVDS disabled. I also tried enabling VGA at the bottom just to try!

Do you think that this is an incompatibility with the Graphics Card and the second port or a complication with Thunderbolt? The only other thing i thought is I might have damaged the port somehow or this port can only be used with DVI or HDMI Adapters?

Right ok, if the 680 mac edition from the Mac Pro uses display ports, should the EFI be fairly similar?


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Rominator on August 23, 2016, 11:39:07 PM
Anytime you have a DP port that works, you should enable the next port in list, this is usally a TMDS port that is a DVI legacy output on the same port.

Could be the second TB port needs to chat via this.The DCB should look like DP port, then the legacy port on same wires, then next DP port, etc.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 24, 2016, 08:22:58 AM
Just to make sure we understand each other: The port you're just trying to enable was working with the original VBIOS through an DP->VGA adapter, right? That port got disabled when we threw out all TMDS / LVDS / VGA ports, and you want to re-enable it.

Sounds very surprising to me that you can't enable a port again which was working formerly, so I guess I'm missing something.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 24, 2016, 07:45:51 PM
Hi Rominator, thanks for your reply. Have made sure of this when I was doing it. I have just gone back and tried a couple more times with only each one of each unidentified DP enabled each time and still no luck with the last remaining TB port. Also tried the remaining TMDS ports and still nothing.
I have gone back to all DP corresponding TMDS being enabled with nothing else for Mac OS X.

I have a feeling that possibly the port is working but just not with the VGA version of the adapter. People on other forums where saying when they have done similar upgrades with this iMac and NVIDIA cards that they had to swap to a HDMI / DVI version or VGA for their external monitor to work.  I know in my experience with PC's that graphics cards only allow one VGA output a lot of the time.


Florian, Sorry I think we misunderstood each other, my mistake for not trying both ports when I first installed the card, but it never worked even with the original Dell BIOS, I have reflashed it back to confirm. With only having the one monitor I just plugged it into the first port I saw. So I don't think its to do with the routing? Has to be it not liking the VGA adapter in this port. I have a friend who has a HDMI version which I should hopefully be able to try in this port. I have a feeling this might work. Have confirmed on Dell forums that the 660M works with multi external DP so the card does support it, but nobody seems to have mentioned trying a VGA in all ports, only 1x VGA and then 1X HDMI etc.
Also put the original 6770M back in and port then works, so the port itself is fine.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 24, 2016, 08:05:22 PM
Okay, so the 2nd DP port isn't even working in Windows with the original BIOS? I'd also try a different type of adapter, but I guess that port just isn't connected to the right outputs on your GPU.

I'll add the 680 Mac Edition to the ROM as soon as I can (Friday or Saturday). Be aware that it might prevent your iMac from booting (if it really doesn't like it...), so you'd have to do this: http://netkas.org/?p=1182


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 24, 2016, 08:42:35 PM
No not with original BIOS :( I should hopefully be able to try adapter tonight or tomorrow.

That would be great if you could! Having the EFI attached would make it perfect. The only thing that worries me is it says about it only working if you have a second card installed? Also EEPROM size, Im not sure how to check!


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 24, 2016, 09:21:45 PM
You should be able to restore in Windows through VNC, without additional GPU.

I also think that it's unlikely to end that bad. 2011 iMac EFIs are known to work in cMP, so I guess / hope the same applies the other way around. :)


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 25, 2016, 08:12:26 PM
Right ok, thats good news! Yes definitely sounds hopeful if thats the case. The EFI between the 660 and 680 should be relatively similar as well hopefully!  :)
Thanks


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 28, 2016, 09:43:16 PM
Alright, I attached the (only slightly modded) GTX 680 EFI to the 660M UEFI ROM (didn't use the non-UEFI one because it has a strange structure - security cert is within VBIOS section, not sure if this is a bug?) and PM'ed it to our brave guinea pig (no interest in feeding the eBay guys).

The good news: It does NOT produce a brick and shows something at boot time on internal screen!

The bad news: The boot screen is scrambled:

(https://www.picflash.org/viewer.php?img=IMG_5176QJHJ05.jpg)

A simple PRAM reset might fix it, but I think there's a bigger issue. Maybe the Mac Pro EFI doesn't support the internal DP connection? Or Apple customized it somehow?


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 28, 2016, 10:20:40 PM
I have now done a couple of extra tests!

Done PRAM reset.

No scrambled image on the external screen (still remains on iMac internal), just a very slight flickering with the normal loading bar. I think somehow the iMac DP needs to be set to be the master display. Shut down fine (bit slow) with normal swirling.

Its detecting the iMac internal display as a cinema display so no brightness controls!


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 29, 2016, 08:25:15 AM
I just had a short look at Apples 660M VBIOS, they've defined the connection to the internal display as standard DP connection, no eDP or anything.
The DCB spec defines some more detailed properties which I didn't compare so far. I'm hoping to find a difference in the Apple EFI between the internal and the external DP ports. Applying them to your MXM card might fix some issues. We'll see... :)


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 29, 2016, 10:40:50 AM
One more thing: Your GTX 660M defines a "Maximum Link Rate" of 5.4 Gbps, while Apples 660M defines 2.7 Gbps. I think that's DisplayPort 1.1 vs. 1.2, right?
Might be a good idea to reduce that Maximum Link Rate in your VBIOS to prevent the drivers from choosing a pixel clock which the connection can't take, at least on the internal port. So I propse the following edit:

A6 7F 02 02 10 00 42 0F -> A6 7F 02 02 10 00 22 0F

Additionally: Try reducing your resolution in OS X and reboot, verify if this has any affect on the boot screen (not sure if the prefered resolution is even considered but anyway...).
Oh, and I'd really love to see how an active DP adapter behaves on your TB port(s)...  ;)


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 29, 2016, 12:12:43 PM
Strange how it doesn't detect it as an iMac display, it detects the external monitor as a TV opposed to cinema display  ???

I have just changed the maximum link rate on the internal iMac display to test it out, but no difference on the boot up screen, with or without changing the resolution. Changed to lower ones and still the same. I don't think that the OS X resolution affects the boot screen, as it looks like it is displaying at full 1440p.

Just to check about making the ports 'Active', as I am still a bit confused on this, below my current DCB Table, do I simply just disable the display ports defined for display port for the ports I know aren't for the internal iMac display? (See second DCB Table example - which is edited) and then leave the corresponding TVDS signal enabled?

1F0F0001 34000100
1F1F0001 10000200
1F2F0001 30000200
D65F0108 2000420F
925F0108 20000200
 C64F0108 1000420F
824F0108 10000200
8F3F0108 30000200
B68F0304 1000420F
728F0304 10000200
A67F0202 1000220F
627F0202 10000200
6F6F0202 10000200
0F9F0402 00000000

1F0F0001 34000100
1F1F0001 10000200
1F2F0001 30000200
DF5F0108 2000420F
925F0108 20000200
C64F0108 1000420F
824F0108 10000200
8F3F0108 30000200
BF8F0304 1000420F
728F0304 10000200
A67F0202 1000220F
627F0202 10000200
6F6F0202 10000200
0F9F0402 00000000

Is the iMac display already Active if it is beyond 1080p?


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 29, 2016, 12:48:51 PM
Okay, still thanks for the quick test! :)

I shouldn't have used the term "active" when talking about ports, my bad. When talking about an "active" port I simply meant that it's enabled, nothing more. So an active (= enabled) port has a valid "type" indicator (e.g. 0x6 or 0x2) while an inactive (= deactivated) port has the type 0xf or 0xe.

When talking about adapters, the term active labels an adapter which behaves like a real DisplayPort device (in contrast to passive adapters, which are in fact TMDS devices).

So in short, active <-> inactive ports and active <-> passive adapters. :)

You shouldn't need to disable the additional ports as your current DCB table contains 4 enabled ports, which is within the limits of Apples drivers (btw, does your GPU run with Apples drivers or do you need to use the WebDrivers?).

I think Apple didn't follow Nvidias DCB rules when they implemented their internal screen, but I still have to fully understand that. Maybe Rominator or netkas will come up with a good idea in the meantime... :)

EDIT: Btw, I guess your internal display is recognized as Cinema Display because the system recognizes it as "Apple made", but some flag is missing to mark it as "internal" or something.

EDIT2: Really strange. Apples DCB table defines all 3 DP connectors (1x internal, 2x external) as "external backlight control", which means that the GPU can't control it. So it seems they've implemented a proprietary way to control the backlight.
The whole GPIO assignment table also doesn't define a single IO port which is used for PWM backlight control. Just the usual stuff, e.g. some ports for hotplug detection, thermal signals and some unspecified voltages.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 29, 2016, 02:08:31 PM
No Problem :)

So in order to test how an active display port adapter functions on the external thunderbolt connection do I simply need to 0xF out the corresponding TMDS single to make it a simple active connection? Or did you mean for me to try another Display port to dvi / hdmi adapter? The friend I thought had one doesn't anymore but someone else i know has one but they're on holiday  :-[

I am just using the Apple drivers currently, as I had tried the Nvidia ones previously and it wouldn't boot up properly. But i might try this again as I can now see what is happening on the external display! (unless you recommend staying with the Apple ones?) (EDIT: Just tried and now boots up with the Nvidia Drivers as well as just apple ones)

Yes there must be some sort of code defining it as internal, unless it only recognising it as being an iMac display if it is set to be the main display in the DCB Table?

It is rather strange if that both external thunderbolts are defined as DP that both of mine are not working properly. Do you think that there is some sort of link between the DCB table and the EFI of the iMac that somehow specifies how the brightness is controlled because of the inbuilt ambient light sensor?


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 29, 2016, 02:26:35 PM
I'd just like to see how your external ports behave when connecting an active DisplayPort adapter. No need for any software edits, just a different adapter. (Actually two different adapters would be interesting: An active DP to DVI/HDMI and a passive one, just to be sure).

I guess your 660M just has an (physically) incompatible port assignment. One of your iMac's TB ports might now be connected with a VGA or DVI port, so it won't give any output. This is a hardware thing, not software.

As far as I know there's no rule / standard which defines how ports should be mapped on MXM cards, it's completely up to the manufacturer. That your iMac now has the internal display and one external port working is very good, considering you've just chosen an arbitrary MXM card.

I have no clue how they've implemented brightness control, but as far as I can tell it's not the "standard NVIDIA way" but rather a "propriertary Apple way". But maybe I'm missing something...


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 29, 2016, 03:48:11 PM
Would something like this be the sort of thing that would be active ?

goo.gl/mWwCsO (http://goo.gl/mWwCsO)

I am currently using the official apple VGA so this must be passive.

I was thinking that possibly the other port that currently doesn't work has the dual link option and this is what is making it incompatible with this graphics card? Yes its great that it is working like this, for me personally the one external output with VGA is what I was using to start with!

Do you think it might be worth trying the 21.5 screen that I have from the other 2011 iMac which is 1080p and see if the boot screen displays correctly on this?


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 29, 2016, 04:00:07 PM
Yes this seems to be active. I'm actually not 100% sure if Apples VGA adapters are active or passive, but I think it's the latter type.
Both TB connectors on your iMac should be identical I think. From a GPU perspective, both should be DP 1.1 with integrated single link TMDS.

Testing the small screen on your iMac would be an awesome experiment, so if they're physically compatible and you have to time to do this, sure, go ahead! :)


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 29, 2016, 04:11:13 PM
Ive just read a review for the alienware laptop this card was from and states: Three video interfaces (VGA, HDMI 1.4 and Mini-DisplayPort) as being outputs on the laptop, so as you say it is probably just not compatible with both ports!

Just checked the connections and the 21.5 is different  ;D however I can take the card out of my 27 and try in the 21.5 machine as I wanted to prep it anyway! I will try this out this evening! :-)


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Rominator on August 29, 2016, 08:40:50 PM
I hd same problem doing EFI for GT640 with DP port.

Required surgery on another part of BIOS.

Was a full weekend project.

Hopefully Florian has time and sees issues.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 30, 2016, 07:48:26 AM
Hehe, so at least we know it's possible.

I guess by "another part of BIOS" you mean something outside of Nvidias DCB documentation, right? Guess I'll have a look at the tools and documentation of the nouveau project then.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 30, 2016, 06:36:48 PM
Tried it on the 21.5 last night and accidentally broke the LVDS cable  :-\ so unable to test on that machine until a replacement cable arrives !

Have also found that after installing the Nvidia Drivers on odd occasions my machine gives a blank screen after the loading bar, whereas using the inbuilt OS X Drivers it works every time  ???


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 30, 2016, 08:56:11 PM
Oh well, that's bad luck.

In the meantime I had another look at the DCB spec. I might have found a way to make the internal display really internal, thus hopefully enabling backlight control.

1. Delete unnecessary entries from Connector table:
Search:
40000000
61110000
31120000
31030001
46040001
46050002
31060100
46070100
46080200
00090000

Replace:
ff000000
ff110000
ff120000
ff030001
46040001
46050002
ff060100
46070100
46080200
ff090000

=> Only DP connectors left.

2. Change internal connector to "location 0" (index 0x7 as seen in DCB, so it's the 8th in the list):
Search:
46070100

Replace:
46000100

3. Change "Platform" byte from 'MXM' to 'Desktop with integrated full DP':
Search:
4005100409

Replace:
4005100407

4. Explanation:
According to DCB spec, this should enable the following condition:
Quote
0x46 = DisplayPort External Connector (as a special case, if the "Location" field is 0 and the "Platform" type in the Connector Table Header is 7 (Desktop with Integrated full DP), this indicates a non-eDP DisplayPort Internal Connector, which is non-removeable)

That's the exact same configuration as Apple is using with their Nvidia 2012 iMac, so hopefully it'll be enough to flag that DP port as "internal".

Good luck! :)


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 31, 2016, 07:28:35 PM
Thanks for the response and taking the time to look through the BIOS  :)

I have made all of the changes to the BIOS this evening. I think that the EFI and OSX boot screen now knows that the iMac display is the main display as there is no longer any loading bar on the external screen only internal, although its still stretched and blurred. (So I think that moving the iMac DP to location 0 worked, so the DCB order makes a difference in OS X). Once booted the OS however still thinks the external display is the main screen as login screen appears here not on the internal iMac?

Brightness control doesn't work as its still listed as a Cinema Display  :( Have tried unplugging external etc and trying but the same! Very strange...

Do you think there is a special definition in the BIOS somewhere to specify thats its an Apple iMac internal display?


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 31, 2016, 08:05:22 PM
I didn't expect it to change boot screen behavior, but I was hoping it would enable backlight control - sadly it didn't  :(

I just researched how backlight control is enabled on Hackintoshs: Most are using an Intel GPU, which can be enabled by adding a special device through a DSDT edit. That doesn't work on Nvidia cards though, and I didn't find a single person who had backlight control working on a notebook with Nvidia dGPU.  ::)

I guess all of them are missing that real Macs have some IOReg keys called "built-in", "AAPL,backlight-control" and "backlight-control". The GTX 680 luckily contains those keys, but I don't know in which conditions they'll be set up properly.
You could do a ioreg dump on your machine (e.g. ioreg -l -w0 -p IODeviceTree > dump.txt) to see what the EFI has done, but I don't expect it to be enabled.

If we're lucky, the Nvidia EFI will set up those values according to Nvidia DCB spec. I don't know what else I'd have to change to mark your display appear as "internal". Will have another look in the next days...

The scrambled boot screen surely is a different story. Maybe Rominator will give us another hint, re-doing work that has already been done isn't exactly motivating, I'd rather spend my time on the other issues...  :)

EDIT: Okay, found one positive report: http://www.tonymacx86.com/threads/laptop-backlight-not-working.135329/#post-830957
Seems "built-in" and "backlight-control" are enough, maybe also "pwm-info". I'm almost sure the Nvidia EFI can generate that from the VBIOS, I just don't know how to enable that...

EDIT2: Try setting the connector type of the internal display form 0x46 to 0x47 (DisplayPort Internal Connector(non-removeable)). That's not what Apple does but maybe it'll still work?

46000100 -> 47000100


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on August 31, 2016, 08:54:59 PM

Thanks!

I have attached an ioreg dump of my machine to this post.

"AAPL,backlight-control" = <00000000>

It even knows its an 'iMac' display as this is the name of the monitor on Display preferences! Is there any way within OSX or the BIOS to set toe internal display as the Master display or can this only be done after we have marked it as being fully internal with the brightness support?

Have also just tried changing the internal display connector type, it doesn't enable the internal display at all using that string, just the external port works. I have reverted back to the previous BIOS.

Also I don't know if this is relevant but no boot screen at all with Bootcamp! I'm guessing this is something to do with the software apple installs on the Windows Partition? Or something else?  ;D


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on August 31, 2016, 09:41:48 PM
Okay, everything "backlight" or "built-in" related is 0.

We might need to move the internal connector to index 0x0. Your IOReg dump shows that those 4 ports have the port numbers 0x4, 0x5, 0x7 and 0x8. Those are the indices of the "connectors", so I guess we have to rearrange them. This also involves changing the "connector index" bits in the DCB table, otherwise the display path won't be complete.

It would also be a good idea to remove all unused ports, makes things easier.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on September 01, 2016, 06:37:11 PM
So the internal connector within the connector table needs to be at index 0x0 as well as being location 0 as changed in your previous messages?  :)

Sounds logical if the Apple Keplar BIOS lists the iMac display first.

I don't know if there is an nvidia document like the one you sent me for the DCB table which explains how the connector table works? I know which ones are display port from the 6 at the beginning and then being enabled. Is is the same ordering?

To remove the ports, what do I have to change if I am not 0xf them?


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on September 01, 2016, 09:11:38 PM
The connector table definition is within the DCB spec as well. Ordering is not the same, it's defined by the connector index in the DCB table.

I can do that for you, but I won't find time before Sunday.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on September 02, 2016, 08:26:59 PM
Right ok, thanks for that. I am looking through the document now. Will let you know if I manage to get some idea of what I need to change! Anytime would be great if you could help. I'm just happy to be able to use the card in the iMac once its booted at the moment  ;D


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on September 03, 2016, 09:08:52 PM
Alright, I suggest to following modifications:

DCB:
Search:
1f0f000134000100
1f1f000110000200
1f2f000130000200
d65f01082000420f
925f010820000200
c64f01081000420f
824f010810000200
8f3f010830000200
b68f03041000420f
728f030410000200
a67f02021000420f
627f020210000200
6f6f020210000200
0f9f040200000000
0f9f040100000000
0f00000000000000

Replace:
a60f02021000420f
620f020210000200
c61f01081000420f
821f010810000200
0f00000000000000
0f00000000000000
0f00000000000000
0f00000000000000
0f00000000000000
0f00000000000000
0f00000000000000
0f00000000000000
0f00000000000000
0f00000000000000
0f00000000000000
0f00000000000000

Connector Table:
Search:
40000000
61110000
31120000
31030001
46040001
46050002
31060100
46070100
46080200
00090000
ff000000
ff000000
ff000000
ff000000
ff000000
ff000000

Replace:
46000100
46010001
ff000000
ff000000
ff000000
ff000000
ff000000
ff000000
ff000000
ff000000
ff000000
ff000000
ff000000
ff000000
ff000000
ff000000

Explanation:
  • Removed unnecessary entries from both tables
  • Changed connector index in DCB table from 0x4 and 0x7 to 0x1 and 0x0
  • Changed location in connector table from 0x4 and 0x7 to 0x1 and 0x0

We could also clean up the other tables (especially GPIO), but I guess / hope the extra entries won't hurt...

Good luck! :)

EDIT: Forgot one edit (was already in last post):
Quote
3. Change "Platform" byte from 'MXM' to 'Desktop with integrated full DP':
Search:
4005100409

Replace:
4005100407

EDIT2: Base ROM is the "660M_MAC.rom" I sent you.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on September 04, 2016, 02:36:49 PM
Right OK that's great thanks. I have just changed the base BIOS that you originally created to include the modifications. I got a message saying the file size has increased and now the Kepler BIOS Tweaker won't let me change anything to correct the checksum!

Is there anything I can remove that will decrease the size and allow me to correct the checksum so I can flash it with the new modifications?

Thanks so much for doing those edits :)


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on September 04, 2016, 02:52:26 PM
You're right, I forgot one line of "0f00000000000000" in the DCB section. I've fixed it in my last post.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on September 04, 2016, 03:19:57 PM
Great thanks. I have just tried again and flashed fine this time.

Positives - There is now a boot screen when loading windows which there wasn't before, but before it boots I get the message 'ERROR Valid MXM Structure not found. POST halted for 30 seconds. P-State limited to P10. After the count down it then boots normally! Is this to do with changing from MXM to full desktop?

Negatives - Brightness still isn't available to be changed in OS X, displays as cinema display still.' :( Have done PRAM Reset etc, still the same !


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on September 04, 2016, 03:21:26 PM
Okay, thanks for the quick test. Try changing that MXM thingy back to see if this is causing the message.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on September 04, 2016, 03:32:10 PM
Just tried it back again and the message on the windows section is still there so I don't think that this is the cause?

OS X now sees the internal display as the main one which is great, the login screen etc defaults to it!

EDIT: Machine sometimes won't boot up properly with these changes :( & random kernel panics


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on September 13, 2016, 07:48:35 PM
Just done an OS X Software update, and interestingly the white installation screen stays when doing the update showing progress! So its just purely the loading screen when you turn the machine on that doesn't work on the internal screen.

Also no more Kernel panics, this was an issue with the nvidia drivers so i have removed it completely. And message from Windows loading up now also disappeared!

Just the brightness control & initial boot screen!


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Rominator on September 13, 2016, 09:28:21 PM
richard, don:t suppose you:re in LA?

I:ve got some ideas but not easy to implement


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on September 14, 2016, 08:44:58 PM
Rominator, unfortunately not. A little while away in England  ;D

Would you require a 2011 iMac to work with?


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: still_apple_user on October 08, 2016, 03:57:55 PM
What do you think is the most powerful GPU you can put inside a 2011 iMac (regardless of driver and EFI compatibility issues), so that it wouldn't fry or not have enough power to operate?

And one more question, let's say that we modify a GPU to be EFI-compatible (brightness control, backlight, external monitors, etc. working correctly) if there are no drivers for OS X/macOS it should still work on Windows, right? I might switch to Windows if this would allow me to use a better card...


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: fijolin on November 22, 2016, 09:05:10 PM
Hi all!

Thanks for this thread.

I desperately need a new gpu for my 27" 2011 i7 3.4GHz imac.

Could I buy:

http://www.ebay.com/itm/201380798312?redirect=mobile

and use richard's rom? And get the same results?
Thank you in advance.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on December 30, 2016, 11:33:01 PM
Fljolin, That is the same card as the one I have used in mine and has been operating perfectly albeit without the brightness controls and boot screen on external display.

If you purchased it would work the same as it does in my machine!

Thanks


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on January 05, 2017, 11:19:50 PM
For anybody thinking about trying this on a 21.5 2010 iMac the same BIOS & GPU unfortunately it will not work. I have just purchased another 660M card for a spare iMac I had lying around. The card will boot up internal and external with default BIOS in Windows, nothing in OS X.

With the flashed BIOS which works perfectly on the 27 2011 iMac (albeit a dodgy EFI boot screen) on the 21.5 it is again scrambled and Windows no longer detects internal display (only external) and OS X refuses to boot. I am however not too sure whether this Mac requires a different EFI section of the BIOS to the 27'.

Also I don't know whether the 2010 possibly doesn't use the same DP protocol at the 2011 as does infect use standard LVDS? Hoping to try to edit the non EFI BIOS to enable just the LVDS and nothing else to see what happens.

EDIT: I have been working on the DCB Table Tonight and for the 2010 iMac it is different than the 27 2011. The internal screen is a combined LVDS & DP Signal so both need to be enabled. See table below:

13 0F 00 01 34 00 01 00   INTERNAL DISPLAY
1F 1F 00 01 10 00 02 00
1F 2F 00 01 30 00 02 00
DF 5F 01 08 20 00 42 0F
9F 5F 01 08 20 00 02 00
C6 4F 01 08 10 00 42 0F  EXTERNAL DISPLAY PORT DISPLAY
82 4F 01 08 10 00 02 00
TVDS SIGNAL
8F 3F 01 08 30 00 02 00
BF 8F 03 04 10 00 42 0F
7F 8F 03 04 10 00 02 00
A6 7F 02 02 10 00 42 0F COMBINED INTERNAL DISPLAY DP SIGNAL
6F 7F 02 02 10 00 02 00
6F 6F 02 02 10 00 02 00
0F 9F 04 02 00 00 00 00

I am now going to try and use this with the EFI provided by Florian with this configuration and see if I can get the machine to boot up in OSX otherwise going to try the NVIDIA Web Drivers for OSX to see if it boots, these weren't needed with my 27 inch.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Pavel on January 08, 2017, 12:28:09 AM
Hi there.
Many thanks for this thread.

So the 6970m has just died on me on the 27" 2011 iMac.
I was bought 660m on ebay and going to try to flash richardhancock’s rom.

Which tool do you use to flash the rom? Kepler BIOS Tweaker?

Does the brightness controls will work on internal display?

Is there any disadvantages besides missing brightness controls and boot screen on external display?

Sorry for my poor English.
I will keep you abreast of my results.
Thanks


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on January 08, 2017, 12:35:46 PM
Interesting. So you're saying both the first and the last entry have to be enabled to make the internal display work?
I don't think that the display actually needs LVDS and DP at the same time, but maybe there's a mismatch between the hotplug signals (either physically or in the VBIOS), so the port won't be activated unless you enable both in VBIOS.

Is the external port working?

Oh, and are you sure that both 660M cards are identical? Might also be a physical difference, so the ROM from the first card just won't work properly on the 2nd.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on January 08, 2017, 05:11:29 PM
Hi Pavel.

You have to use an nvidia command line utility called NVFLASH to actually flash the BIOS onto the card. You use Kepler BIOS Tweaker to create the right checksum after editing a BIOS only. Make sure to have VNC Software installed for remote access to the machine.

Brightness controls don't work yet and boot screen on the external display that isn't scrambled. I have been using it on my 27 and none at all. Another I believe to use OS X Sierra you have to edit some of the KEXT's, i haven't upgraded yet still using El Capitan!





Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on January 08, 2017, 05:28:32 PM
Yes for the internal to work in Windows both the LVDS and the display port had to be enabled if I disable LVDS it doesn't work in Windows at all which is very strange.

Just gone through and made the same changes to the EFI enabled BIOS you made for the 27 2011. Having done this and changed the connector index to have the LVDS enabled initially OS X booted up and the Boot menu etc and full boot loading is shown on the external display. Still no picture on the internal iMac in OS X although it did detect it in the Display Properties as an iMac display and everything. (attached picture) Loading bar etc shown on shutdown etc. How would I go about changing the hotplug signals?
Since I have now rebooted again neither display working in OS X again and just lines on the external screen. Very Strange. Tried Nvidia Drivers wouldn't boot at all. Just display iMac 1024x1028 on remote session.

The Windows boot screen is shown on the external screen but purple lined windows logo so not displaying properly but both displays work once booted.

External port is working completely and Windows worked with the default BIOS before editing anything. I believe cards are identical but have attached both BIOS's, both Alienware cards originally same model description and information in GPU-Z!

Going to try and edit some of the properties again this evening to try and get internal screen to come on in OS X. (Have also attached BIOS up to now to this post) !

EDIT: Just disabled the top LVDS line from the connector table and think i might have flashed badly, iMac just constantly chiming now :(


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Fl0r!an on January 08, 2017, 08:32:24 PM
Just had a quick look: The LVDS port doesn't specify any hotplug ID. I'm not sure if this isn't necessary for LVDS, or if it's a bug in the VBIOS...? Would have to check a Nvidia Mac ROM to be sure.
This could be changed inside the VBIOS if we knew which GPIO pin was connected to the hot plug signal.

We could search for some ROMs of older iMacs with Nvidia graphics (e.g. 7300GT or 8800M GT).

PS: Good luck getting your iMac running again...


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Pavel on January 08, 2017, 08:57:58 PM
richardhancock, thanks a lot for your answer.


You have to use an nvidia command line utility called NVFLASH to actually flash the BIOS onto the card. You use Kepler BIOS Tweaker to create the right checksum after editing a BIOS only. Make sure to have VNC Software installed for remote access to the machine.


Got it!


Brightness controls don't work yet


This is sad, i guess brightness will be at highest level and it is way too bright on internal display, but it is what it is.

Interestingly how they've implemented brightness control. I have noticed that in GPIO Assignment Table there is ability to allow brightness adjustment via PWM to the LCD pin defined in LCD ID field in Connector Table. Or it is nonsense?

Anyway i will write my results here when the card will come to me.

Appreciate your help


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: luckydip on January 15, 2017, 08:46:45 PM
Looking to give this a shot as my 6970 has died. I'm a newbie when it comes to flashing so:

When I install the alienware card into mac will the mac boot to windows from so I can use NvFlash from command prompt to flash the rom? I'm looking to put in a blank hard drive and a Windows 7 install CD or can I use a bootcamp bootable USB?

Sorry, I've searched high/low but can't find any info on this. The Mac pro seems a lot easier and is explained clearly! Thanks




Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: aurejac on January 21, 2017, 06:31:32 AM
Just had a quick look: The LVDS port doesn't specify any hotplug ID. I'm not sure if this isn't necessary for LVDS, or if it's a bug in the VBIOS...? Would have to check a Nvidia Mac ROM to be sure.
This could be changed inside the VBIOS if we knew which GPIO pin was connected to the hot plug signal.

We could search for some ROMs of older iMacs with Nvidia graphics (e.g. 7300GT or 8800M GT).

PS: Good luck getting your iMac running again...
Hi,

Just a little note about this.
While messing with a stock of original Apple 4670HD I figured there were 3 references for the same card :
  • 661-5308 which was the 4670HD that was mounted in the iMac 21" (Late 2009)
  • 661-5314 which was the 4670HD that was mounted in the iMac 27" (Late 2009)
  • 661-5539 which was the 4670HD that was mounted in the iMac 21" (Late 2010)

Luckily I was able to dump all roms of those 3 models. They don't have the same revision but maybe the comparaison could be helpfull to understand how to get internal display at boot.

What is to be noted is :
If I mount in an iMac 27" (Late 2009) a 4670HD with the rom of any iMac 21" (Late 2009 or Late 2010), the internal LCD display of the iMac isn't initialized at efi (boot) level : only the external display port work until drivers are loaded and session is openened (either on macOS or Windows side).
I was able to install in an iMac 27" (Late 2009) a GT120 card from an iMac 21" (Late 2009) and write the appropriate rom on it with Winflash to get a proper behaviour at boot.

Unfortunately I don't know any different iMac models which would share the same Nvidia MXM card so we could do the same comparaison...
I only know the Xserve GT120 and iMac 24" (early 2009) which share the same model of card

best regards

gilles


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: olimpia on January 24, 2017, 11:19:18 PM
Hi All

Could you look at bios from 870m 6GB,

I install this card on iMac 2011, iMac started but screen is black and external port without signal,
but over TeamViewer I see information about iMac

Thank


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on January 27, 2017, 02:52:45 PM
Just taken apart the iMac to attempt to do a force flash and bypass the BIOS chip being read before boot up. I am looking at the card and not too sure which chip actually is the BIOS chip! I don't know if anybody could tell from the attached photos? ( https://mega.nz/#F!QYdF1STK!Kf35JYDPYk3lClB-Jof1fw )

How would I go about finding out which GPIO is connected to what hot plug signal is a similar sort of thing to the DCB Table? Its interesting in the fact that the BIOS is the same used in the 27 inch, so possibly if this GPIO isn't specified here it wasn't in the 27 version hence the brightness etc not working properly.

I think i might try another card if I can't repair this one as it would be great use to find some sort of working solution for the 21.5 as well!


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Anekelea on January 27, 2017, 06:10:11 PM
U2


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on January 29, 2017, 08:17:33 PM
Thanks Anekelea, I have successfully shorted the BIOS Chip on the Graphics Card and reflashed back to a working ROM!

Will continue to try and change the ports around and see how it goes. Back to the original BIOS (Attached) which works with Windows 8.1 but not OS X..

Thanks


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: richardhancock on January 30, 2017, 10:54:24 PM
Do you think that the EFI & parts of the BIOS from the 8800M GTS would work? (attached) Currently running with the correct display mappings (I think) on the DCB but without any EFI at all, as this seemed to cause issues as it was the one designed for the 27 inch. I have been looking at the Nvidia spec, but not too sure exactly what I need to change with connector table entry where I think the hot plug signals are. I think it should start disabling and then enabling each one by one to find out which is which if i can do this in the same way as with the DCB section?

Any help appreciated !

EDIT: Gone back to the ROM Tried before the flash failed and booting in OS X as well again with EFI Boot on External Screen and unscrambled loading on external screen. Strangely OSX Then three quarter loads and neither screens come on but using remote access the iMac Display is detected as an iMac display however no external at all. I think as Florian suggests its the Hot Plug ID's?

EDIT: Just flashed with the below DCB Table and now OS X Works on the External Screen fully with EFI Loading Screen and when booted:

1F 0F 00 01 34 00 01 00
1F 1F 00 01 10 00 02 00
1F 2F 00 01 30 00 02 00
D6 5F 01 08 20 00 42 0F
92 5F 01 08 20 00 02 00
C6 4F 01 08 10 00 42 0F
82 4F 01 08 10 00 02 00
8F 3F 01 08 30 00 02 00
B6 8F 03 04 10 00 42 0F
72 8F 03 04 10 00 02 00
A6 7F 02 02 10 00 42 0F
62 7F 02 02 10 00 02 00
6F 6F 02 02 10 00 02 00
0F 9F 04 02 00 00 00 00

Going to try and mess with the LVDS soon and get internal as well (Hopefully)

EDIT: Rebooted and now not working again  ???


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: ironsniper on May 27, 2017, 09:00:20 PM
They already are being flashed.

All you need to know can be gleaned from images on EBay.

Some folks in China figured out which cards can be flashed. Instead of being mouthy idiots (like me) they just quietly started selling them. Since "flashed iMac video cards" isn't a thing, nobody asks or lists what they are .

I want to develop some roms, I bought 1 of each card but just haven't found the time. I also need someone in Hollywood with a 2011 iMac, preferably with an MXM cable that allows testing of cards outside machine.
sorry i did not see you reply, what is the device id i would need to look for? and where on the ebay cards would i find it or would it be listed, i want to get a cheap 6770m but all i see are ones from hp laptops and i am not sure if they would work or could be flashed to work with my 2011 27inch imac


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: alvarock on March 26, 2018, 06:53:11 PM
Hello,

some time ago the Amd Radeon HD 6970m GPU of my iMac stopped working,
the computer is an iMac mid 2011, Sandybridge i7 originally with an Ati Radeon 6970M
We tried to fix it by doing reflow but it only worked 1 start more,
so we replaced it with an NVIDIA Quadro fx2800m, but it did not work either.

the computer when starting up, makes sound the CD unit and a little hard disk, but does nothing else.

I have extracted the BIOS directly from the chip on the motherboard, with a raspberry pi3 and a SOIC8 clamp.
and the ROM I have unpacked using the CHIPSEC application, chipsec_util uefi decode rom.bin

my intention was to edit the DSDT and SSDT files extracted directly from the rom, so that it starts from the Quadro FX2800m card or even from the integrated board that carries the Intel HD3000 imac,
and then go back to include them in the rom and reflashing
but at the time of editing these files, I see that they carry many references to other elements and I do not know exactly what should be edited,

Could this method work?

I attached the extracted DSDT SSDT files in case you can help me.

on the attached DSL files only in which it refers to IGPU or GFX0.
about the AML, I attach all.

Thanks in advance


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Rominator on March 29, 2018, 08:30:52 PM
You guys should stick to known working cards or cards in same family as existing cards.

On AMD cards you need to match portmapping.

On Nvidia cards there are DCB tables. Only likely cards are Kepler using the EFI from iMac with 650.

Device id and DCB tables would need to be fixed.

None of this is easy, without ability to remotely test (MXM cable moving card outside ) and socketed EEPROM it will be extremely difficult.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: alvarock on March 29, 2018, 09:32:10 PM
Hello Rominator

and some way to disable this port - disable GPU card?
and that start only from the intel HD3000 Integrated?

I do not know if the method they use in the MacBookPro 2011 would work, since my computer is an iMac mid 2011

https://forums.macrumors.com/threads/force-2011-macbook-pro-8-2-with-failed-amd-gpu-to-always-use-intel-integrated-gpu-efi-variable-fix.2037591/

sudo nvram fa4ce28d-b62f-4c99-9cc3-6815686e30f9:gpu-power-prefs=%01%00%00%00

or from Linux

printf "\x07\x00\x00\x00\x01\x00\x00\x00"> /sys/firmware/efi/efivars/gpu-power-prefs-fa4ce28d-b62f-4c99-9cc3-6815686e30f9

the problem is that it does not start in any way, for which I can not execute any of these commands.

I have tried to edit the nvram variables of the rom, but without result, I do not know if I will be doing it correctly.

so what I've done, is to extract the rom from the computer and investigate it,
and from here I have extracted the DSDT SSDT files that I am trying to edit ...

I have seen this patch and I have adjusted it to the scheme that I have,
what I do not know if it would work,

// added to turn nvidia / radeon off
                        If (LAnd (LEqual (Arg0.3), LEqual (Arg1.1)))
                        {
                            External (\ _ SB.PCI0.P0P2.GFX0._OFF, MethodObj)
                            \ _SB.PCI0.P0P2.GFX0._OFF ()
                        }


Title: Re:Recent GPU for iMac 2011
Post by: Rominator on May 25, 2018, 07:40:28 AM
I don't know, at some point you should just yank the card out.

But you might also investigate that app that switches? If you read his notes is sounds like earlier version used power switching. So, it stands to reason that if you checked out how his older version worked you might discover how to do now.

And as to the guy working on 660M, how did that ever turn out?

Since Ebay isn't flooded with iMac 660Ms, I'm guessing it never got perfected.



Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: overshoot on August 20, 2018, 04:11:19 PM
I have a pure noobish question...

I have bought that GT660 for my iMac 2011 27".
It works great in macOS (no backlight, not boot menu as expected)

However it seems not to be working in Windows.
Is it because I haven't installed the drivers prior to swapping the GPU or it won't work out of the box?

Thanks.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: overshoot on September 27, 2018, 12:29:49 PM
Hi Folks,

I tried booting up my iMac with the GTX 660M onto macOS Mojave and got no screen at all.
I was expecting the system to show at least the Desktop as the card is a Kepler card.

Am I doing something wrong or it won't work as it is?
Thanks!

EDIT: Forgot to turn my brain on... after watching Dosdude video, I've realized there was a post install patcher for unsupported Macs. I will try that first and report.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: overshoot on October 11, 2018, 12:33:55 PM
So I now have my iMac 2011 booted to Mojave but I am getting graphic glitches using the NVidia GTX 660M.

The Nvidia GTX 660M doesn't seem to have Metal support for some reasons.

Is there a solution or do I have to wait for NVidia drivers? (I thought this card was natively supported by macOS...)


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Rominator on October 11, 2018, 10:49:05 PM
click on PCI, will show Metal status there IIRC


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: overshoot on October 14, 2018, 01:10:21 PM
Thanks for your reply.
The issue was caused by the graphic patcher. I guess it was completely disabling Metal support.
Since I do not have the Radeon graphic card, I should have skipped that one.
I did a full re-installation and selected iMac 12,2 without the graphic patcher and it worked.


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Rominator on October 26, 2018, 08:13:35 AM
if you mean the AMD patcher from dosdude, yes, it causes issues on other machines


Title: Re: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)
Post by: Synchro03andsoon on November 03, 2018, 02:00:48 PM
GTX 765M is reported to work in iMacs (without bootscreen and brightness adjustment): https://www.insanelymac.com/forum/topic/333956-gtx-765m-in-imac-111-late-2009-display-brightness-fix/

$120 : https://aliexpress.com/wholesale?catId=0&initiative_id=SB_20181103045637&SearchText=NVIDIA+GTX765M+2GB

GTX 660 $ 135 : https://www.aliexpress.com/item/Wholesales-nVidia-Geforce-GTX-660M-GTX660M-N13E-GE-A2-for-Dell-Alienware-M17X-R4-M18X-R2/32475001442.html?