Lenovo M700/M900 BIOS mod to Coffee Lake CPUs

thetoad

Active Member
Feb 10, 2021
236
97
28
trying to understand the point of this thread. Is it to be able to replace a kaby lake cpu with a coffee lake cpu? (i.e. the successor to kaby lake)

From many of the comments, it seems the point is to get improved quicksync decoding. Which is where I get lost. I thought when it came do codec support kaby lake and coffee lake were the exact same? so anything that works in coffee lake should work in kaby lake (and vice versa). I know from experience with gemini lake that I'm able to decode everything I throw at it with HEVC (HEVC Main10, HDR10, tone mapping....) and its all hardware handled and I thought that it's a cut down kaby lake part.

now, I still get the desire to have faster/newer CPUs, but the discussion of improved quicksync is what has thrown me for a loop.

just figure someone can fill me in and explain what I'm missing.
 

mobilenvidia

Moderator
Sep 25, 2011
1,918
184
63
New Zealand
Kaby Lake decodes HEVC in 4k just fine, all CPUs from Kaby Lake to and including 10th Gen have the same UHD 6x0, so all have same Quicksync
Sky Lake does not, and freaks out at anything past 1080p
This is where I started (Sky Lake 6500T), so first I'd thought I'd got to Kaby Lake, then discovered CoffeeTime app
Coffee Lake CPUs at the time were not much more than Kay Lake, so I splashed out keen to give it ago
Rest is history

But moral of story, if you have a Kaby Lake CPU, don't bother going to Coffee Lake, waste of time and money, start looking at 11th Gen
Unless you want HW spectre fix (9th Gen only) and slightly more efficient CPU
The 9100/9300T having Turbo boost is a plus though, and my reason for going this route
Sky Lake to Kaby/Coffee Lake for 4k HEVC by all means

This post is here to show it can be done, 6th Gen Mobo with a 9th Gen CPU, whether you do it or not is up to you
 

deb0ro

New Member
Mar 4, 2022
1
0
1
Hi all,

I just registered to let you know Im kinda amazed by this thread! :) These machines are getting pretty cheap now so ability to put there 9th gen CPU is kinda nice!

I scored a M910x with 6th gen i5, would like to put there i9-9900 (when I will be able to find one) and make it a really nice ESXi host :) I read throught this thread and also on laptopvideo2go forum and what I get is that:
- have external flasher ready and make a backup of the latest BIOS from the chip itself (will do the update from Lenovo site before)
- then just run CofeeTime 0.99 over the dumped BIOS and voila, it can boot all CPUs from 6th gen to 9th gen

Is the last statement correct? Or do I need to modify MAC, ME, LAN, etc? I guess not since I will be modifying my own dumped BIOS?

PS: to boot up the 8+ thread CPUs I read I need to do pads modification like below, right? (credits for the picture to itsakjt from techpowerup forum).
P_20210710_075733_1.jpg

Thanks!
 

mobilenvidia

Moderator
Sep 25, 2011
1,918
184
63
New Zealand
Hi all,

I just registered to let you know Im kinda amazed by this thread! :) These machines are getting pretty cheap now so ability to put there 9th gen CPU is kinda nice!

I scored a M910x with 6th gen i5, would like to put there i9-9900 (when I will be able to find one) and make it a really nice ESXi host :) I read throught this thread and also on laptopvideo2go forum and what I get is that:
- have external flasher ready and make a backup of the latest BIOS from the chip itself (will do the update from Lenovo site before)
- then just run CofeeTime 0.99 over the dumped BIOS and voila, it can boot all CPUs from 6th gen to 9th gen

Is the last statement correct? Or do I need to modify MAC, ME, LAN, etc? I guess not since I will be modifying my own dumped BIOS?

PS: to boot up the 8+ thread CPUs I read I need to do pads modification like below, right? (credits for the picture to itsakjt from techpowerup forum).


Thanks!
You should be able to just run CoffeeTime to enable CF CPU support
If you want full MAC and device IDs you should write these down from BIOS page, and may need to run other apps to get these back
Here's the Pin mods for various Mobo's none of course a Lenovo
You could do them all for best chance of success as too little may mean trouble
With the price of a 9900(T) it may be worthwhile to test on a a say a 9400(T) to not turn to ash hard earned $$$
A non T CPU will probably spin up the fans under load,be aware you may not have machine you want to sleep beside

But BACKUP your entire BIOS (external flasher) before doing anything

pinwork_map.png
 
  • Like
Reactions: Aluminat

userwithname

New Member
Jun 11, 2022
2
0
1
Hello All :)

Apologies if I'm waking up an old-ish thread.

I've been gifted a M700 with an unmodded BIOS. The original i7-6700T was removed and a i3-7100T cpu was put in its place. Obviously, the stock BIOS wont recognise the Kaby Lake CPU. At this point I do not have access to a 6th gen CPU so the M700 is effectively a brick.

Here's what I've done so far:

0. I've downloaded the BIOS and tool package kindly provided by @mobilenvidia
1. I've acquired the EEPROM programmer mentioned in this thread.
2. After some messing around with attaching the clip to the BIOS chip, I think I've succeeded in backing up the current stock bios with AsProgrammer 2.1.0.13
3. I've loaded the resulting ROM image into CoffeeTime 0.99 and have sort of understaood that I need to add the relevant Microcode for the kaby lake CPU's and possibly activate some of the patches.

I'm assuming that once I add the Microcode, I need to flash that image back to the BIOS chip. Fair enough. I'll cross my fingers and pray.

However, what I do not quite understand (yet) is...

0. Do I mod the BIOS I pulled from the unit or do I need to replace the M700 BIOS ROM with a M710 BIOS ROM?
1. If I'm supposed to replace the original M700 BIOS ROM, how does one backup or insert any Windows keys etc. into the modded BIOS with the additional microcode.

Many thanks!
 

mobilenvidia

Moderator
Sep 25, 2011
1,918
184
63
New Zealand
Hello All :)

Apologies if I'm waking up an old-ish thread.

I've been gifted a M700 with an unmodded BIOS. The original i7-6700T was removed and a i3-7100T cpu was put in its place. Obviously, the stock BIOS wont recognise the Kaby Lake CPU. At this point I do not have access to a 6th gen CPU so the M700 is effectively a brick.

Here's what I've done so far:

0. I've downloaded the BIOS and tool package kindly provided by @mobilenvidia
1. I've acquired the EEPROM programmer mentioned in this thread.
2. After some messing around with attaching the clip to the BIOS chip, I think I've succeeded in backing up the current stock bios with AsProgrammer 2.1.0.13
3. I've loaded the resulting ROM image into CoffeeTime 0.99 and have sort of understaood that I need to add the relevant Microcode for the kaby lake CPU's and possibly activate some of the patches.

I'm assuming that once I add the Microcode, I need to flash that image back to the BIOS chip. Fair enough. I'll cross my fingers and pray.

However, what I do not quite understand (yet) is...

0. Do I mod the BIOS I pulled from the unit or do I need to replace the M700 BIOS ROM with a M710 BIOS ROM?
1. If I'm supposed to replace the original M700 BIOS ROM, how does one backup or insert any Windows keys etc. into the modded BIOS with the additional microcode.

Many thanks!
0 - Good
1 - Good
2 - Good, file should be 16MB exactly (16384KB)
3 - Not needed for going to Kaby Lake (7xxxT), BUT you need to first insert the BIOS ROM from Lenovo for M710 into the backup ROM
Instructions near beginnng of all this
Going straight to Coffeelake won't work
After the M710 BIOS insert you can then do the Coffeetime routine to future proof if going to a 8000 or 9000 CPU but not needed with a 7000
 

userwithname

New Member
Jun 11, 2022
2
0
1
@mobilenvidia - thanks for your response. I plugged my brain back in and like you suggested then added the M710 BIOS with HxW and flashed the IC. Worked first time round :)

The M700 with the i3-7100T is now unbricked. Booted straight into xubuntu. I noticed that the SATA drive wasn't recognised in the BIOS by name or anything, but it did 'just work'. I'll be doing a bunch of further tests when I have more time.

Once again many thanks for your efforts and the guidance in this thread!
 

Blubster

New Member
Feb 25, 2014
28
4
3
36
Hey guys!
I also managed to flash an M700 with a slow G4400T to the latest M710q bios by using the trick mentionned here, copying it to the second half of the dump made using a CH341, then modifying with coffeetime, and finally flashing it without the clock battery plugged in. It works great with a cheap 8100T! :)
Same as everyone SATA is not recognized but boot fine without doing anything. I juste disabled pxe boot so that i could speed up a bit the starting of the device.
I would advise to make a manual dump of all SMBIOS/DMI data BEFORE flashing though, as this way you know exactly what to write to it after the bios mod (especially if you have an embedded win8+ key in an MSDM table). The way to do it is using AMIDEwinx64.exe located inside the folder where the stock bios is extracted (i used latest M700 bios update before any mod, in my case it was extracted to : C:\SWTOOLS\FLASH\FWJYBFUSA)
in a cmd shell : AMIDEwinx64.exe /ALL origvalues.txt
Inside the resulting txt file, you will find all values and their corresponding switches to be entered using the same utility. Most important switches, as far as i can tell, are :
- /SP
- /SV
- /SS
- /SU
- /SF
- /BV
You can do the same using the efi version of the utility, which i did, but i don't know where one could get officially (i found it on github in a repository about "lenovo golden key", i wish i could get my hands on the full version of this utility!).
This way, no error on boot, serial/uuid/product name are all the same as before, windows is still activated... However i lost the OA2.1 marker, and i have no idea how to reenable it. I don't have any plan to install win7 on it though... Anyone have any idea about this?
Another oddity, after the bios mod, in the bios there is an option to set the discrete tpm module as 2.0, this does not work and the discrete tpm module stays at 1.2 level. But you can enable the firmware tpm module inside the cpu, and this works at 2.0 level, so win11 is now *officially* compatible.
Thanks a lot everyone and especially @mobilenvidia for all of these great findings!!!
 
  • Like
Reactions: mobilenvidia