[Guide] Transfer of specific Intel OROM VBIOS and GOP VBT settings by using Intel BMP tool

@lfb6 - Yes, it’s from that thread! Thanks for checking stock BIOS, I did not think to even check that, and had only been using his dumped BIOS contents at post #9 (Which has the GOP info I posted above)
And in that BIOS, he flashed in unconfigured ME FW, so I can see he probably flashed in incorrect GOP too for some reason! In regards to ME, yes, first BIOS I never looked at anyway, corrupted dump.
Using BIOS from post #9, with unconfigured ME FW, which I already fixed (Post #10), updated and he programmed back in now.

Guess I better have him flash stock BIOS and make a new dump, so I’m not working on top of such a mess!
Or, maybe I’ll just swap back in correct stuff from stock region for this, that way he does not have to reflash stock BIOS and dump again!

So, once GOP is SKL-KBL - 9.0.1045 and then just need VBT that is Kaby compatible, do you know which is first one for that?
Or which GOP/VBT combo I need to upgrade this to for Sky/Kaby compatibility, since it looks like 203 only goes with 1045

@Lost_N_BIOS Well, what do I know? You can get a lot of quotes, finding latest seems difficult, after just having read this I’d go for 9.0.1080 + 221, seems to be safest?

@lfb6 - Thank you! I thought I commented back to you the other day, but I see I didn’t!
But, what if I don’t upgrade GOP, leave stock - 9.0.1045, what VBT goes with that, which is also Sky/Kaby compatible? That’s what I’m really after here.
If I do both 9.0.1080 + 221, I have to update both, and neither of those I’m comfortable updating, only vBIOS I can comfortably update
So, I’d prefer to leave GOP as it is, since it’s already SKY/Kaby ready, and just update VBT to make it compatible too

I see SoniX commented this, that you quoted above >> 9.0.1080 latest stable version for SKL/KBL, not requiring updating GOP VBT.
But there is no context there, “Not require update GOP VBT” from what to what VBT version does that apply to, surely not "Any VBT is OK w/ 9.0.1080"
Anyway, I’d rather leave GOP As it is, so I need to know what VBT is Sky/Kaby compatible and works with 9.0.1045 (This is mobile for anyone else looking to help, thanks)

@Lost_N_BIOS That’s the only table I have.

table.jpg



I don’t know for sure which version would be first one supporting KBL. Checked some bioses, earliest VBT was I could find was for Asrock H11STX_1.50 announced as first bios supporting Kaby Lake:
2 - Video OnBoard
EFI GOP Driver SKL-KBL - 9.0.1046
RAW GOP VBT SKYLAKE - 205
OROM VBIOS SKL-KBL - 1039

http://www.asrock.com/mb/intel/H110M-STX/#CPU

Though more common were
EFI GOP Driver SKL-KBL - 9.0.1052
EFI GOP Driver SKL-KBL - 9.0.1051
RAW GOP VBT SKYLAKE - 207
OROM VBIOS SKL-KBL - 1046

EFI GOP Driver SKL-KBL - 9.0.1056
EFI GOP Driver SKL-KBL - 9.0.1060
RAW GOP VBT SKYLAKE - 209
OROM VBIOS SKL-KBL - 1049

@lfb6 - Thanks… Hmmmmmmm… I see ALL of those, still say SKYLAKE only for VBT.
So, maybe it’s OK 203 too, especially since 1045 matching GOP says SKY/KBL?? And only ME/microcode was the hold-up?
I think I will have user test that theory, then update VBT/GOP to 207-209/1052-1063 if needed [wink
Thanks again for your time to check and your thoughts on this, I hate GOP/VBT

@Lost_N_BIOS At least Intel BMC does see a difference from 203 to 205:

203_205.jpg



But probably that’s just the text in the bsf. On the other hand there’s a lot of differences / different settings from 203 to 205 and almost identical from 205 to 207… (209 first to have Thunderbolt named in bsf)

Thanks! So maybe 205 is first one I would at least have to use.
I wonder if UBU shows Sky/Kaby for 205?

UBU shows what drvver shows and I assume? that it just reads what comes after $VBT and that seems to be always SKYLAKE. Otherwise there should be a logic inside drvver.exe, and I doubt that (but source isn’t public afaik).

Thanks, I’ll do some testing maybe and see, but sadly it looks like I should at least update VBT to 205 and GOP to whatever matches.
I was hoping to avoid that, because then if any issues with the BIOS, I wont know if it’s due to fail mod in general, or due to VBT/GOP update

Long time lurker without an account.(Found this forum when I was poking around OROMs on old motherboards.) Thanks for the tutorials with fantastic details.
Right now I would like to have a question regarding the “Raw VBT”.

Here I’m playing around on GB-BX-4570R, a Haswell based mini PC.(desktop/mobile hybrid platform)
I’ve followed the tutorial on “OROM VBIOS” side and finished that part but stuck on “RAW GOP VBT” side.

Here’s what UBU displays for my specific BIOS without any changes(HM85P.F7):
EFI GOP Driver HSW-BDW - 5.0.1029
RAW GOP VBT HASWELL - 170
OROM VBIOS Haswell - 2173


I have exported the raw gop vbt module with UEFITool and double checked the version, the Version VBT indeed is 170(AA in hex).

According to the procedure, you need THE corresponding .BSF script for the .dat/bin module that you wanted to open in iBMP. Right now the “Intel_GOP_VBT_r4” for HSW contains 165/177/184/189, with “170” missing. So that means I’m out of luck, no way to update the VBT from the current tools, am I correct?

Thanks.

Edit:Unable to start a Secure Flash with AFUDOS, looks like I need to get a set of CH341A with IC clamp, not in a hurry to get this flashed then.

Hello there. I have a Lenovo V570c notebook and the VBIOS version is 2108.5. I want to upgrade to 2170 version and insert GOP driver. How am I going to do this? Thank you to everyone who helped. :slight_smile:

Files:

44CN43WW.zip (2.24 MB)

2170_SNB_IVB.zip (91.7 KB)

IMG_20210206_125813.jpg


I have replaced orom vbios 1049 to 1059 and the uefi does not recognize 1059 just 1047.

IMG_20210206_130254.jpg



How should i do to fix that.
Im succesfull replace my gop intel from 9.1056 to 9.1102

IMG_20210206_130332.jpg



When i check my bios version on intel using gpu z he showing PC 1070.

How to find this guid using uefitool?
Im done replaced all the raw gop vbt, gop, vbios orom and test using ubu the information is correct, but after flashing using fpt the vbios doesnt changed.

I have done updated from raw gop vbt from 209 to 228 but im not sure how to check the detailed on actual bios.
The information on ubu tools just corrected using sonix guide’s
Thanks in advance.

Hello and thanks for the guide.

I am trying to update Coffelake VBIOS from 1008 to 1019

VBT version is D1/2.09 and size of VBT is 109C/4252 so from the included table these are correct.

On the guide it says this.



On the "Table VBT OROM VBIOS Version and Size" there is a note



I haven’t understood the CloneVBT part. From what i understand I will use CloneVBT.exe like this

1
2
3
4
5
6
7
8
 
c:\>CloneVBT.exe biosv.dat cfl_1019.dat
| $VBT Name | Version | Size | Type | Build |
-------+-----------------+---------+------------+------+-------+
Source | COFFEELAKE | D1 209 | 109C 4252 | OROM | 1008 |
Target | COFFEELAKE | D1 209 | 109C 4252 | OROM | 1019 |
Cloning...
Done.
Press any key to continue . . .
 


After doing this I have the cln_vbios.bin file. Continuing that part needs bsf file but in the given Intel_VBIOS_and_BSF_r3\CFL\1019 (VBIOS 1019) folder there are none...

For the above guide next step of 4) I install the program. On the 5th step I still don't have a bsf script file how will i use the IBMP program without the script because it asks on launch.
Thanks for your time :)

@berkkocaturk

If you use CloneVBT, then all settings will be transferred 1 to 1 and nothing else needs to be done, just replace the VBIOS in the BIOS.

That certainly makes it easier I though about that but wasn’t sure.

Thanks a lot for the programs and the guide.

I’m sorry to bother you, but I’m a little confused about GOP-VBT updating.
My motherboard is ASRock B360M (OEM customized) and I am trying to update GOP-VBT with the BIOS file dumped from the mobo.
The figure below shows it’s <1>“VBIOS.dat”(OROM) extracted by MMTool based on your 2) explanation, and <2>“old_vbt.dat” extracted by UEFITool(alpha 58) based on your explanation 2) in “Alternative method”.

VBT_ver_of verChng.png


<1> said that the chipset seriese is “COFFEELAKE”, VBT version is “D1”(=209), size is “109C”(=4252 byte), and OROM version is 1008.
And (this may not be relevant), <2> showed “SKYLAKE”, “D4”(=212), size:1128(=4392).
Then I searched for “COFFEELAKE” in the original dumed BIOS, but I couldn’t find the word, but “SKYLAKE” was found instead.
Where did the “COFFEELAKE” in “VBIOS.dat” come from?
In any case, I tried both CFL / 212 > 228 and SKL_KBL / 209 > 228 to convert with iBMP following your instruction.
As a result, the following warning was displayed and the conversion could not be performed.:

IBMP_error.png


In the case of this motherboard, what file should I choose and what steps should I take to process it?
Reading #453 post, I also tried using clonevbt following your “Alternative method” explanation, but it didn’t output any files.
I have been suffering from this for over a week already.
Thank you for any help.

Not new, seems that from 221 to 228 several settings disappeared, or syntax was changed, see:
[Guide] Transfer of specific Intel OROM VBIOS and GOP VBT settings by using Intel BMP tool (30)

I think Lost_N_BIOS stayed at 221 this time, but I’m not completely sure. If you want to build 228 you’d have to check for every error displayed if it’s a new syntax ot if this setting no longer exists. Not clear if result will work though.

Thanks for your prompt comment.
As you say, SKL_KBL\209 > 221 was able to convert without any error.
So I compared both script files (* .bsf).
As a result, I found that some of the symbols defined in 209 where the error occurred are absent or "SKIP" in 228.

BSF_def.png


Perhaps copying this bit to copy (the line “$ PM_DPST_Enable” in the example figure) might solve this problem with this symbol.
The bit position of all error symbols is “SKIP” and I hope it can be replaced.
Also, just because I transferred a symbol that doesn’t exist in the 228 * .bsf file, it’s likely that it won’t be used in the actual BIOS.
(That is, I think I can delete all error-corresponding lines in the original 209 .bsf file.
I will check this matter (delete all corresponding line) later.)
Does anyone know or already try how to handle such cases?
Anyway, I got the BIOS file with the VBT updated to 221 (the PC that wrote the BIOS is working fine now), so I’m very grateful to you for this.



I tried to verify yesterday’s my idea.
Based on the error information, I copied the lines of all the error symbols in the 209 .bsf file to 228, and ran iBMP.
(I found there is a comment "; Obsolete." in a part of the error line, which indicates that it is no longer used.)
As a result, the conversion was successful without any errors.
However, I have one new question.
Where should the updated VBT file and VBIOS (OROM) file be placed in the UBU folder to run UBU.bat?
In Sonix’s description
"5) Put these files’vbioshsw.dat’ and’vbthsw.ffs’ in a folder Modules\VGA" says "Modules\VGA",
but I can’t find this folder in my environment.
Should I create a new folder under "C: \ UBU \ Files \ intel \ GOP_VBT"?

I think Sonix changed structure in files folder a little. Look into the folders \Files\intel\VBIOS, \Files\intel\GOP_VBT and Files\intel\GOP\Usr_GOP, there’s a _readme with naming convention, try what UBU says.

(In my opinion tt would be more interesting to see what happens if one just deletes the obsolete lines.)

But is this the board?
https://www.asrock.com/mb/Intel/B360M-ITX/index.asp#BIOS

If so: Latest bios has GOP 228, it’s just to compare which settings ASrock used?

22.jpg