• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.
  • The forums have been upgraded with support for dark mode. By default it will follow the setting on your system/browser. You may override it by scrolling to the end of the page and clicking the gears icon.

Flashed Quadro won't POST,but works under Windows/Linux

YDDS

New Member
Joined
Mar 3, 2019
Messages
6 (0.00/day)
Hello everyone. I have a Quadro M6000 which had a pre-production firmware until yesterday. I wasn't that bothered(outside the odd "Graphics Device" showing up here&there instead of the card's name)up until now,because I was able to install(GeForce)drivers through modified .inf and disabling driver signature.

Then,with drivers newer than 388.71,the card would not start under any OS(getting code 43 under Windows and "RmInitAdapter Failed" under Linux). I kept the old 388.71 drivers,as they were working fine,even though I was deprived from CUDA updates and stuck on 9.1. After Battlefield V came out,and required the latest drivers(effectively locking this card out of the game,which was a pity,as its 12GB could come in handy),I decided it was time to find a solution to that problem,and flash the original M6000 BIOS onto my card, so that newer drivers could work. I looked for that BIOS everywhere on the Internet,to no avail. All I could find was some HP firmware update for Linux,and an unverified PNY M6000 12GB BIOS on this site,which had the correct 17F0 Quadro M6000 Device ID I so desperately wanted to flash onto my card.

After backing the original pre-production BIOS with nvflash,I tried the HP update 1st. Even with the "force" option,it just would not flash(basically telling me "This is not a Quadro,so we won't let you flash even if you want to"). Back under Windows,I went through a 1000 versions of nvflash,all failing with the "GPU mismatch" error,even the "bypassed checks" ones,even with the -6 option. The Vipeax one for Turing also choked. The last DOS version of nvflash doesn't support Maxwell. I finally got a hold of version 5.206.1,the last one that could really bypass that "GPU mismatch" block("bypassed checks" version). I ran it,the override FINALLY took,and after countless hours of frustration,victory was mine... Or so I thought.

Upon rebooting,nothing showed on my screen. I was like,Ok,cool,flash did not work,lemme use my other card to get into Windows or Linux and reflash with saved BIOS. Then,to my displeasure,I saw that nvflash 5.206.1 would not see the card. I was wondering if it got properly fried or something,when I saw the card detected in Device Manager. I looked at the properties,and the device ID change did take,but instead of the 17F0 that the PNY BIOS was supposed to bear,I saw a 17C0 device ID... Still,I modified the lastest drivers' .inf to replace 17F0 with 17C0,and unlike previous BIOS,it worked,and card could use the latest drivers.

So,you could say it was a semi-success... Card won't POST(I tried on another computer with the same result),BUT it does work properly with latest drivers once another card is used to boot Windows/Linux. I thought that maybe the PNY BIOS was UEFI-only,so should reflash original BIOS then post a request for Founder Edition Quadro M6000 12GB original firmware(with the correct 17F0 device ID). But lo and behold,the only version of nvflash that could effectively bypass the "GPU mismatch" block,can't see the card! Only the newer versions,with which it is not possible to bypass the "GPU mismatch" block on my Maxwell card,can see it. And without fail,they prevent me from reflashing the original pre-production BIOS, because of the device ID change.

So,my question is this:is there some hex-editing I can do(not an expert in this though,but can try if guided)to allow this rollback to previous BIOS to happen? Either the BIOS or the version 5.206.1 of nvflash(or even other versions)? Or,is there some newer nvflash version somewhere that effectively bypasses the "GPU mismatch" block on Maxwell cards? Is the PNY BIOS available on this site,UEFI-only? Thanks in advance for your help.
 
Low quality post by eidairaman1
TL;DR version:

Could not use drivers newer than 388.71 with pre-production firmware initially present on the card,so flashed Quadro M6000 with unverified PNY BIOS found on techpowerup.com(only one available on the Internet for this card, outside that HP update)after backing up initial one. Could only go past the "GPU mismatch" block with version 5.206.1 of nvflash(all others, even the Joe Dirt ones, and Vipeax' Turing version, choked on this error), which successfully changed the device ID to 17C0, and now allows me to use the newest drivers.

Problem is, card doesn't POST. Nothing comes on the screen when trying to boot. It does work 100% within the OS(Windows or Linux), if another card is used to boot the computer. And now, with the new device ID, nvflash v5.206.1 doesn't recognize the card, so can't flash previous BIOS back, because versions newer than 5.206.1 do see the card, but refuse to go past the "GPU mismatch" error.

So, what can I do to flash previous BIOS back? Is there some hex-editing I can do? Either the BIOS or the 5.206.1 version of nvflash(or even other versions)? Or,is there some newer nvflash version somewhere that effectively bypasses the "GPU mismatch" block on Maxwell cards? Is the PNY BIOS available on this site,UEFI-only? Also, where do I request the Founder Edition BIOS file for this card? Can't see any guideline on the site about this.
 
Edit the bios if you can to change the device id, flash the original bios back and leave it alone with the old drivers.
 
Edit the bios if you can to change the device id, flash the original bios back and leave it alone with the old drivers.

Thanks for your reply. Only way to do that is through hex-editing. Is there any guide for nVidia BIOS hex-editing? MBT doesn't allow the edition of device IDs. And how does one request a BIOS upload?
 
I know there is nibitor, not sure if that works with quadro or if there is another tool you can use to edit the bios, google is your friend. Only way to do that is through hex editing, how did you come to this conclusion, what are you cyurrently using to view the bios hex data?
 
Like you said, Google is my friend. I usually do extensive research and try stuff on my own before asking anything on a forum(which is partially the cause of my current predicament:)).

Used Nibitor aeons ago, to edit vBios of GTX 260m, so thought about that 1st thing. It can't parse the BIOS(maybe I downloaded a bunk version? ). Maxwell BIOS Tweaker only does clocks and stuff like that, you can't touch anything else. I found no other tool, that is how I came to this conclusion. In the case I am mistaken, I am open to suggestions.

Prior to forcing the PNY flash, I just wanted to edit original BIOS and put the correct 17F0 device ID. I use HxD and could not find anything in the decoded text related to device ID. Hence why I'd like the guidance of someone well versed in this. The card doesn't POST, but it still lives through some workarounds and allows me to use latest drivers. I do want it to POST again, but don't want to totally brick it this time, through some reckless hex-editing.
 
SPI flasher seems like your best bet at this point, not helped by the fact it's a quadro card and so bios modding/editing and flashing is less common than on Geforce cards so there are likely less people with similar experience who can help you further :wtf:
 
Yeah, thought about that too, that it might require direct hardware connection to the BIOS' pins to force a flash. I was just hoping that maybe someone would know a way to hex-edit an nVidia BIOS in general(I don't think Quadro and GeForce BIOSes are THAT different, specially when it comes to stuff like PCI Device ID)OR point me towards a newer version of nvflash that would allow to override the GPU mismatch error like the 5.206.1 version does, or maybe even a patched version 5.206.1 that does see my card with its new device ID. If I can't get any help, I'll just wait until I can get my hands on an SPI flasher. Either way, thanks for your help:).
 
If you were looking in the text, you were probably looking in the wrong place. Search for it in the hex. It'll likely be in little endian. So C017.

EDIT: It's odd that the 10DE 17F0 Device ID shows up three times. But somehow it got stuck with 17C0. Which doesn't appear with 10DE next to it(like a Device ID would be shown). :wtf:

According to the internet, 17C0 isn't even a valid Device ID.

EDIT 2: Forgot to mention there's no such thing as a UEFI-only BIOS. If it's got a BIOS with UEFI support it's what's called a hybrid BIOS. Which has both Legacy and UEFI images. For compatibility purposes. Meaning, you don't need a motherboard with a UEFI BIOS, or to have the motherboard's UEFI functions(fast boot, secure boot, etc.) enabled to run the card.
 
Last edited:
If you were looking in the text, you were probably looking in the wrong place. Search for it in the hex. It'll likely be in little endian. So C017.

EDIT: It's odd that the 10DE 17F0 Device ID shows up three times. But somehow it got stuck with 17C0. Which doesn't appear with 10DE next to it(like a Device ID would be shown). :wtf:

According to the internet, 17C0 isn't even a valid Device ID.

EDIT 2: Forgot to mention there's no such thing as a UEFI-only BIOS. If it's got a BIOS with UEFI support it's what's called a hybrid BIOS. Which has both Legacy and UEFI images. For compatibility purposes. Meaning, you don't need a motherboard with a UEFI BIOS, or to have the motherboard's UEFI functions(fast boot, secure boot, etc.) enabled to run the card.

Just saw the edits to your post. The device ID on this card not being valid, is where all the problems started(pre-production firware). Could get away with it so far because a simple .inf modification from 17F0 to invalid ID number, allowed the drivers to install. Then all of a sudden, after 388.71, drivers would refuse to load on the card. As more and more applications were requesting newer drivers to function(including Battlefield V),I needed to change the device ID for the card to accept those. It would have been best if I found the original nVidia firmware for the 12GB Quadro M6000, but could only find this PNY one.

Speaking of your 17F0/17C0 discovery, yes, I can confirm this oddity even with nvflash. When trying to flash the card, it is deemed a 17C0 device... It shows up as 17C0 in GPU-Z,Properties in Device Manager, etc. BUT when I use nvflash --version on it? This is an excerpt of what I get:

Product Name : GM200 Board
Device Name(s) : Quadro M6000
Board ID : 0xEA01
Vendor ID : 0x10DE
Device ID : 0x17F0
Hierarchy ID : Normal Board

So I myself don't understand what is going on. As for the UEFI, I suspected something like this, but was just trying to understand why the card would not POST, but otherwise works fine. Any idea why that is the case?
 
Back
Top