Jump to content

Lenovo W700 overclocking BIOS? (as in the Sony overclocking BIOS series)


GFORCE100

Recommended Posts

Hi all,

Not sure where to post this so svl7 and others with the right knowledge can read and possibly comment.

Basically is a overclocking mod possible for a Lenovo W700 in the same way it is for some newer Sony laptops with Nvidia GPU's?

Basically the W700 has a Quadro FX3700M with GDDR3 at 1.6GHz. Upon close inspection of the IC's they're rated for 1.8GHz yet downclocked to suit Nvidia's 1.6GHz memory spec for all Quadro FX3700M's.

I tried flashing the VBIOS and while the flash is fine there must be a 2nd VBIOS in the System BIOS firmware as the clocks don't change when Windows starts. The only way to change them is to wait until Windows loads and then override the forced System VBIOS with an application like EVGA Precision or RivaTuner etc.

In other words my question is can the VBIOS within the System BIOS be edited to reflect the 1.8GHz GDDR3 memory frequency rather than having to use 3rd party software, essentially the same mod as in the Sony overclocking BIOS's which also have a intergrated VBIOS within their System BIOS?

The latest System BIOS for W700's is version 2.17 and can be downloaded here: http://download.lenovo.com/ibmdl/pub/pc/pccbbs/mobiles/7zuj23u6.exe

Could someone knowledgeable please comment?

Many thanks,

Link to comment
Share on other sites

Hi, and welcome to T|I,

Yes, should be possible, however I though that the W700 came with a MXM 2.1 card, thus if you modify the vbios and flash it, it should work... MXM cards have the vbios rom on the module, not in the BIOS (for obvious reasons... else the you couldn't change the GPU without a BIOS update). Still, it's possible that Lenovo restricted this somehow...

Regarding the VRAM frequency, do you know what kind of vram modules are used on the card? Most vram modules aren't only rated for one speed, but for several, depending on the voltage. So it might be possible that your vram modules are rated 900MHz @ 1.5V and 800MHz @ 1.4V... for example.

Link to comment
Share on other sites

Thanks for your comment svl7.

Yes, from everything I know and having seen the MXM in front of me before it was installed it's a MXM 2.1 Type III-HE card. As for whether it has its own VBIOS, yes. I flashed it many times using NVFlash after saving then modyfing it via NiBiTor and the flash process goes fine every time, the laptop can then be rebooted, the System BIOS does its bootstrapping and Windows loads as normal. Then when I fire up GPU-Z the GPU clocks (in this case the memory frequency) do not change, they stay at 800MHz (1600MHz) despite me editing the VBIOS for 900MHz (1800MHz) prior to flashing.

I am 99.9% certain that Lenovo given it's a Thinkpad have duplicated the VBIOS in the System BIOS as a ROM that the System BIOS loads anyway, this in turn overriding anything that the MXM's VBIOS sets itself. I'm not even sure the MXM VBIOS has any role to play and the System BIOS VBIOS takes over from the moment the laptop is turned on/rebooted making the MXM BIOS redundant (hence why the clocks don't stick after a MXM BIOS flash via NVFlash).

What I also know is that the FX3700M works fine at 1.8GHz without any afterfacting so the voltage and timings are probably unchanged and all Nvidia did in their reference design is downlock the frequency.

I will have to find out what GDDR3 it uses but it's either Qimonda or Samsung as I remember. I recall looking at its PDF's at some time. I think it's the same IC's as used in other similar Nvidia mobile GPU's such as the Geforce 280M (i.e. those that use the Nvidia G92M core)

According to here How to find your real GDDR frequency it's either Qimonda or Samsung 800/900MHz. Obviosly the card is installed now but I have pretty sure I saw -11 Qimonda IC's on the four FX3700M that passed my inspection, all from Lenovo. Maybe they're all the same and some are just marked -10 -11 and -12 as a way to comfirm they've been validated to run at CL10, CL11 and CL12 thus at the various frequencies up to 2000MHz? The part number stays constant, just the -10 -11 or -12 at the end of the part number.

If it's indeed this Qimonda GDDR3 then they're all 1.8V it seems HYB18H1G321AF pdf, HYB18H1G321AF description, HYB18H1G321AF datasheets, HYB18H1G321AF view ::: ALLDATASHEET :::

When doing an image search on Google for the FX3700M I'm coming across parts with either Qimonda IC's as above or Samsung IC's.

Do you see anything peculiar/proprietary in the above Lenovo W700 System BIOS files, which I assume must also hide within them the VBIOS?

Link to comment
Share on other sites

In my quest to find a fairly accurate image of a FX3700M with the Qimonda -11 memory IC's I've come accross this thus far: http://i.ebayimg.com/t/Nvidia-Quadro-FX3700-FX-3700-FX-3700M-MXM-HE-IBM-W700-/04/!B0,cye!EGk~$(KGrHqIOKkIE)M)DpOI5BM,PGjjsYg~~_3.JPG

And here's a photo of a FX3800M that seems to be using the same memory despite running it at 2000MHz?

http://i1086.photobucket.com/albums/j447/DGDXGDG/DSC01836ok.jpg

While here is a FX3700M yet with Samsung IC's:

http://i00.i.aliimg.com/img/pb/848/122/329/329122848_049.jpg

Here is another FX3700M with Samsung IC's that can be used to make out the IC model number if the image is turned over:

http://i01.i.aliimg.com/img/pb/843/122/329/329122843_689.jpg

Link to comment
Share on other sites

Furthermore to the above PDF for HYB18H1G321AF-10/11/14 if you look at page 39 at table 5.2 where it prints System Frequency for the -11 variant then min is 400MHz while max is 900MHz. Given the DDR nature of this IC this gives us a maximum thus rated speed for Qimonda HYB18H1G321AF-11 or 1.8GHz (2x 900MHz). From what I can make out all variants 10/11/14 operate at a fixed 1.8V.

Link to comment
Share on other sites

Lenovo packed their above EXE using Inno Setup so I've extracted it, zipped it up plain vanilla style and uploaded it at the link below.

http://www.filedropper.com/w700217biosextractedexe

I tried searching for "Nvidia" using a Hex editor in the files that seemed to contain the BIOS image and couldn't find anything but maybe I was doing it wrong.

Could there be no Nvidia BIOS within the System BIOS?

Could Lenovo be forcing the core/memory GPU frequencies via their ThinkVantage software? Would seem strange given it's generic for all ThinkPad models.

Could the FX3700M have a double BIOS?

Could Lenovo's Windows installation be tweaked?

Not sure what to think.

Link to comment
Share on other sites

Hello svl7,

Pretty strange you ask as I attached the G92M FX3700M VBIOS last week in my previous response. Can't you see it in this thread? I can download the attachment so you should be able to as well, especially as you're a mod?

If not then let me know and I'll upload it to somewhere online.

Weird.

Link to comment
Share on other sites

:smug: Not to worry.

Here's a screenshot of GPUZ taken just now at your request. Note that this is with the VBIOS flashed back on the MXM to its standard frequencies hence both the bottom rows in GPUZ display 550/799/1375MHz for the core/memory/shaders respectively. Otherwise the "Default Clock" row would display the modded frequencies (i.e. 550/900/1375MHz) while the top row "GPU Clock" would still display 550/799/1375MHz. It's my understanding that "Default Clock" is what GPUZ reads from the MXM VBIOS while "GPU Clock" are the current (thus actual) frequencies (in this case forced by the System VBIOS or otherwise).

post-4650-14494993473173_thumb.png

- - - Updated - - -

Just a further comment that may help.

The W700 series was offered with a choice of two graphics cards, the FX2700M and FX3700M. Given this you may notice two different BIOS's inside the System BIOS image. The FX2700M has 512MB GDDR3 so should be easy to differentiate. Unfortunately I'm not sure if the FX2700 was also identified as a G92M core though it has 48 Vs 128 shaders.

Link to comment
Share on other sites

Are you already on the latest BIOS, i.e. the BIOS you posted earlier?

I'm asking because the vbios reported in your GPU-Z screenshot is older than the one in the BIOS.

Link to comment
Share on other sites

The MXM VBIOS is the one that originally came with the MXM card. Any modification was performed on the same VBIOS version via first doing an image dump via GPUZ, then modding it via NiBiTor and then flashing it back to the MXM via NVFlash.

As for the the VBIOS in the System BIOS. Well I don't know as I'm not as intelligent as you (hehe) but I do know that the System BIOS version 2.17 is the latest and dates back to January 16th 2012. Given this it could be that Lenovo updated the VBIOS in their System BIOS to the latest version? Just a suggestion...

From what I comprehend regarding your comments within this thread step by step it's becoming clearer in my mind (perhaps yours too) than the MXM VBIOS in the W700 is only there as a dummy VBIOS as it doesn't control how the MXM card is setup. It's purpose is solely to exist in compliance with the MXM standard because as far as I know all MXM cards are required to include their own VBIOS and I also have a feeling this MXM card is a generic Nvidia design (i.e. it would work in a different MXM II Type III-HE compatible laptop), which would only confirm why the MXM VBIOS is there (even if its role is just a dummy BIOS when the card is installed in a W700).

My understanding is therefore that the System VBIOS controls the MXM setup while the MXM VBIOS should be flashed to the same specification as the System VBIOS purely to keep the results reported by GPUZ (and others) inline with the actual System VBIOS configuration.

Seems logical though my thinking could be wrong, like I say you're the smart one :unconscious:

To summarise. My System BIOS is now 2.17 (the latest official version). My MXM VBIOS is the same that came with the MXM card and I never tried flashing (via NVFlash) a newer version whether the same as in the System BIOS 2.17 or other. Lenovo ThinkVantage Toolbox also comfirms my System BIOS is 2.17.

Link to comment
Share on other sites

Alright, you're on the latest BIOS, that's what I wanted to know. Flash the attached vbios and see whether it helps, if not I put it back in the BIOS and then you can try this.

I recommend using nvflash (DOS version). Ignore the subsystem warnings, use -4 -5 -6

Btw, regarding MXM... OEM modules aren't required to come with an on-board ROM, but in there's one on the module it must be preferred to the vbios in the bios. If the vbios in the sbios gets preferred, then it's against the MXM specs. That's why I want to make sure that the vbios on the module really doesn't have an effect.

FX3700M - 69.92.5C.00.07 - 900mem.zip

Link to comment
Share on other sites

Hi svl7,

Thanks for your efforts thus far.

I've flashed the VBIOS you attached via the latest version of NVFlash using -4 -5 -6 parameters. Unfortunately while the flash is successful the issue as described previously reoccurs. The MXM must be booting off the VBIOS within the System BIOS and not the MXM BIOS. As a result, GPUZ reports the correct memory frequency however the actual memory frequency stays at 799MHz.

post-4650-14494993473821_thumb.gif

It would seem that the only way to make this work would be to modify the System VBIOS then repackage all the BIOS files back into an Inno Setup EXE file to then allow the BIOS to be flashed from Windows as is the normal procedure for Thinkpads. ...or could I be wrong?

Link to comment
Share on other sites

Hmm, interesting... in several ways. GPU-Z behaves weirdly, as well as the SBIOS isn't acting as it is supposed to. That's against the MXM standard.

Anyway, here's a BIOS, flash it with your favorite tool, you don't necessarily need to repack it, you can for example grab the latest Phoenix DOS flasher, or whatever you prefer.

I only touched the most recent vbios in there.

EDIT: File removed

Link to comment
Share on other sites

Thanks again.

I'm a little confused. The ZIP file you attached contains only one file with the name $01BB000.ROM

When I look at the Lenovo W700 BIOS version 2.17 unpacked EXE in the 7ZETB7WW folder I can see that the W700 BIOS is made up of two identically named files with .FL1 and .FL2 file extensions. See the attached image. Given this my questions are:

1) Are you sure it's okay just to update via your single file on its own without the other BIOS file alongside?

2) Your file is 8.04MB in size whereas the unmodified two are 3.95MB and 4.04MB in size respectively. Have you merged these two files into your single file?

3) Are we okay in as far as CRC checks or doesn't it matter in this case? Just confirming as a precautionary measure to avoid a corrupt BIOS flash.

4) So the only tweak inside the ROM file you provided above is the memory frequency setting inside the 62.92.5C.00.07 G92M VBIOS?

5) So nothing needs to be updated inside the .hsh files inside the 7ZETB7WW folder?

6) Do you have a .FL1 and .FL2 two file version on hand so I can also try the WINUPTP.exe flash method (see below)?

As for the Pheonix flasher. I've never used it before so somewhat of a virgin as to how to make sure I do it correctly. I see that the Lenovo W700 BIOS version 2.17 unpacked EXE contains WinPhlash64.exe which when I run looks to be the Windows Pheonix flasher utility (64 bit version). Do I just select your ROM file and flash manually? I also see there's a Setup.bat batch file which has a command inside to run WINUPTP.exe which is the Lenovo BIOS update utility which then run WinPhlash64.exe from the looks of things.

I've also downloaded and installed the Inno Setup but see that in order to recompile everything with the modded file(s) back into an EXE as Lenovo provides on their webste I need the script file they used (.iss file extention). I guess I could make a new script though this would take longer if my thinking is correct. I realise the WinPlash Phoenix flasher method is the easiest for more experienced hardcore users, I'm just rather thinking how to make this user friendly so that if we can get this to work perhaps a sticky thread could be started so other W700 FX3700M owners can also benefit.

post-4650-14494993474028_thumb.png

post-4650-14494993474213_thumb.png

Link to comment
Share on other sites

Damn, you're right, I uploaded the decompressed ROM. It's a Phoenix BIOS, I forgot to rebuild it, sorry. Wouldn't have let you flash anyway.

EDIT: I can't rebuild the BIOS without corrupting it, I think I know a solution, I'll post it later.

Link to comment
Share on other sites

Damn, you're right, I uploaded the decompressed ROM. It's a Phoenix BIOS, I forgot to rebuild it, sorry. Wouldn't have let you flash anyway.

EDIT: I can't rebuild the BIOS without corrupting it, I think I know a solution, I'll post it later.

Okay, no problem. Best to take things slowly to avoid errors and/or problems.

  • Thumbs Up 1
Link to comment
Share on other sites

  • 2 weeks later...

Hi svl7,

Not to rush you along or anything of that nature, it's just that a week or so has passed since you last updated this thread...

Did you figure out a way to recompile the Lenovo W700 System version 2.17 BIOS containing the modified Quadro FX3700M 62.92.5C.00.07 VBIOS so that the BIOS image doesn't get corrupted and is safe to flash?

Link to comment
Share on other sites

Sorry, completely forgot about this. Too much going on...

I'm not sure whether the tool will allow you to flash the BIOS, but it's definitely valid. I thought I found a different way, but I need to check again, I guess it won't work for this kind of BIOS.

  • Thumbs Up 1
Link to comment
Share on other sites

Sorry, completely forgot about this. Too much going on...

I'm not sure whether the tool will allow you to flash the BIOS, but it's definitely valid. I thought I found a different way, but I need to check again, I guess it won't work for this kind of BIOS.

Hi svl7,

Thanks for your reply.

Not sure if I fully follow you. About two weeks ago you said that the tool (i.e. Phoenix Winplash that is included in the Lenovo W700 2.17 BIOS EXE when extracted) won't allow me to flash because it's a raw BIOS file. You also said that when you tried to produce the correct .FL1 and .FL2 files with the newly updated Quadro FX3700M 550/1375/900 BIOS file you (i.e. I assume you mean Phoenix BIOS Editor) couldn't produce the files without it corrupting the BIOS image.

Yesterday you write that you thought you found a way but need to check but also that you guess it won't work as Lenovo has implemented some CRC checks or similar?

If I'm correct you're saying that so far no go but you'll re-think and see if another option would work? In essence that you still consider this work in progress and we can't say 100% that we've hit a brick wall?

Link to comment
Share on other sites

  • 1 month later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.