netkas.org forum
May 26, 2017, 12:18:36 PM *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News: Information for registering users http://forum.netkas.org/index.php/topic,2246.0.html
 
   Home   Help Search Login Register  
Pages: 1 [2] 3 4 ... 7
  Print  
Author Topic: iMac 2011: Recent GPU for iMac 2011 needed; flashing? (replacing failed 6970m)  (Read 13591 times)
richardhancock
Newbie

Offline Offline

Posts: 41


« Reply #15 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?
Logged
richardhancock
Newbie

Offline Offline

Posts: 41


« Reply #16 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

* 134317 (2).rom (159 KB - downloaded 76 times.)
Logged
Fl0r!an
Sr. Member
****
Offline Offline

Posts: 345


« Reply #17 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.
Logged
richardhancock
Newbie

Offline Offline

Posts: 41


« Reply #18 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

* 134317 (2).rom (159 KB - downloaded 72 times.)
« Last Edit: August 19, 2016, 05:37:18 PM by richardhancock » Logged
Rominator
Hero Member
*****
Offline Offline

Posts: 2117



« Reply #19 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.
Logged

Before asking a question, check your "Personal Settings" and be sure that you have "Brain Services" set to "On".
richardhancock
Newbie

Offline Offline

Posts: 41


« Reply #20 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?
Logged
Fl0r!an
Sr. Member
****
Offline Offline

Posts: 345


« Reply #21 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  Wink
Logged
richardhancock
Newbie

Offline Offline

Posts: 41


« Reply #22 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 Sad

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.

« Last Edit: August 20, 2016, 10:35:36 PM by richardhancock » Logged
Fl0r!an
Sr. Member
****
Offline Offline

Posts: 345


« Reply #23 on: August 21, 2016, 11:17:13 AM »

Okay, so I guess this means the internal display isn't connected through LVDS but DisplayPort?  Huh

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.
Logged
richardhancock
Newbie

Offline Offline

Posts: 41


« Reply #24 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?


* Capture.PNG (13.99 KB, 457x204 - viewed 190 times.)
« Last Edit: August 21, 2016, 12:02:31 PM by richardhancock » Logged
Fl0r!an
Sr. Member
****
Offline Offline

Posts: 345


« Reply #25 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!!  Smiley
« Last Edit: August 21, 2016, 04:35:10 PM by Fl0r!an » Logged
richardhancock
Newbie

Offline Offline

Posts: 41


« Reply #26 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  Grin 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

* Dell.GTX660M.2048.120308 (2).rom (89.25 KB - downloaded 84 times.)
« Last Edit: August 21, 2016, 07:52:34 PM by richardhancock » Logged
Fl0r!an
Sr. Member
****
Offline Offline

Posts: 345


« Reply #27 on: August 21, 2016, 08:42:04 PM »

Nice! Smiley 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.
Logged
richardhancock
Newbie

Offline Offline

Posts: 41


« Reply #28 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  Embarrassed 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'. !

* GTX660M.ROM (88.03 KB - downloaded 79 times.)
Logged
Fl0r!an
Sr. Member
****
Offline Offline

Posts: 345


« Reply #29 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.
Logged
Pages: 1 [2] 3 4 ... 7
  Print  
 
Jump to:  

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