[ARCHIVE] Outdated UBU Tool related Questions, Reports and Suggestions

@Sylar76 What is proper procedure?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
 
         MC Extractor v1.20.0 r76         
# CPUID Platform ID Revision Date Type Size Offset Last
1 306C3 32 (1,4,5) 24 2018-01-21 PRD 0x5C00 0x385020 No
2 306C2 32 (1,4,5) FFFF0006 2012-10-17 PRE 0x5800 0x38AC20 Yes
3 306C1 32 (1,4,5) FFFF0013 2012-06-14 PRE 0x6000 0x390420 No
Microcodes GUID 17088572-377F-44EF-8F4E-B09FFF46A070
 
[Update Intel CPU MicroCode]
C - Create FFS with MicroCodes
E - View/Edit MCUpdate.txt
M - User Select only 1 Microcode File
[MCExtractor]
X - Extract all CPU Microcodes
S - Search for available microcode in DB.
0 - Exit to Main Menu
Choice:c
CPUID 306C3 found.
Files\Intel\mcode\1150\cpu306C3_plat32_ver00000025_2018-04-02_PRD_5F430452.bin
Checksum correct.
CPUID 306C2 found.
Files\Intel\mcode\1150\cpu306C2_plat32_verFFFF0006_2012-10-17_PRE_30531EB4.bin
Checksum correct.
CPUID 306C1 found.
Files\Intel\mcode\1150\cpu306C1_plat32_verFFFF0014_2012-07-25_PRE_E86E3EB1.bin
Checksum correct.
Generate FFS with Microcode
 

MC Extractor v1.20.0 r76
# CPUID Platform ID Revision Date Type Size Offset Last
1 306C3 32 (1,4,5) 25 2018-04-02 PRD 0x5C00 0x18 Yes
2 306C2 32 (1,4,5) FFFF0006 2012-10-17 PRE 0x5800 0x5C18 Yes
3 306C1 32 (1,4,5) FFFF0014 2012-07-25 PRE 0x6000 0xB418 Yes
 

U - Used UEFIReplace
M - Used MMTool
(Asus x299 or if previous option patchVTF or makes a brick)
 
[Only MSI x299 Seties TEST]
M1 -- Method 1 - Replace "Empty" - Please report
M2 -- Method 2 - Delete/Insert mCode
0 - Cancel
Choice:M2
Cancel! Is there something wrong!
Press any key to continue . . .
 


[spoiler] MC Extractor v1.20.0 r76
#CPUID Platform ID Revision Date Type Size Offset Last
1 306C3 32 (1,4,5) 24 2018-01-21 PRD 0x5C00 0x385020 No
2 306C2 32 (1,4,5) FFFF0006 2012-10-17 PRE 0x5800 0x38AC20 Yes
3 306C1 32 (1,4,5) FFFF0013 2012-06-14 PRE 0x6000 0x390420 No
Microcodes GUID 17088572-377F-44EF-8F4E-B09FFF46A070

[Update Intel CPU MicroCode]
C - Create FFS with MicroCodes
E - View/Edit MCUpdate.txt
M - User Select only 1 Microcode File
[MCExtractor]
X - Extract all CPU Microcodes
S - Search for available microcode in DB.
0 - Exit to Main Menu
Choice:e
Choice:c
CPUID 306C3 found.
Files\Intel\mcode\1150\cpu306C3_plat32_ver00000025_2018-04-02_PRD_5F430452.bin
Checksum correct.
CPUID 306C2 found.
Files\Intel\mcode\1150\cpu306C2_plat32_verFFFF0006_2012-10-17_PRE_30531EB4.bin
Checksum correct.
Generate FFS with Microcode

[Preview update]
MC Extractor v1.20.0 r76
# CPUID Platform ID Revision Date Type Size Offset Last
1 306C3 32 (1,4,5) 25 2018-04-02 PRD 0x5C00 0x18 Yes
2 306C2 32 (1,4,5) FFFF0006 2012-10-17 PRE 0x5800 0x5C18 Yes

U - Used UEFIReplace
M - Used MMTool
(Asus x299 or if previous option patchVTF or makes a brick)

[Only MSI x299 Seties TEST]
M1 -- Method 1 - Replace "Empty" - Please report
M2 -- Method 2 - Delete/Insert mCode
0 - Cancel
Choice:u
[Preparing for replacement]
Empty GUID: File replaced
mCode GUID: File replaced
mCode GUID: patchVtf: PEI Core entry point can't be found in VTF. VTF not patched.
File replaced
[Replacement]
mCode FFS: reconstructVolume: root volume can't be grown
Error ☼
BIOS file restored
Press any key to continue . . .[/code]

I use the hex editing for inserting microcodes and fixing FIT

Please can you recommend me a guide? I don’t have any experience with fixing FIT.

I’m sorry mate but I don’t follow a specific guide. What I can suggest you is to choose a microcode you don’t use it and replace it
with the one you want to use (i.e. the Xeon for example). This can be done extracting with UefiTool NE A51 the Microcode body file,
editing with an Hex editor, and replacing. Then you have to fix FIT opening the whole bios with UefiTool NE and take care of the
lenght of each specific CPU Microcode, in order to fix hex values of the FIT itself.

It seems complicated but it’s more easier to see than to do.

@JanCerny - here is BIOS with updated microcodes (@ ALL x4) - rest you can update with UBU. You mentioned vBIOS, you have to transfer settings first from old vBIOS to new vBIOS

Microcodes-Updated-FDUnlocked.png


https://www.sendspace.com/file/ias3wb

As for correcting FIT manually, these two pages helped me learn
[GUIDE] AMI INTEL CPU Microcode Update Guide (3) - Post #35 on page three, of same guide link below
[GUIDE] AMI INTEL CPU Microcode Update Guide

@Sylar76 What’s next? I want to learn how do it.

Snap1.png




@Lost_N_BIOS Thank you!
edit:
I just update VBIOS and EFI GOP. ‘vbioshsw.dat’ and 'vbthsw.ffs files are extracted from ASRock H97 Anniversary. This guide from @SoniX was helpfull (ASRock motherboard owners, please read note “OROM VBIOS 2166”).

mod_H81PBC21.40M3-modules.png



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
 
Scanning BIOS. Please wait...
Define BIOS platform - AMI Aptio 4
Manufacturer - ASRock
Model - H81 Pro BTC R2.0
 
[EFI Drivers - Find and Extract]
Intel GOP GUID 5BBA83E6-F027-4CA7-BFD0-16358CC9E123
AMI NVMe GUID 634E8DB5-C432-43BE-A653-9CA2922CC458
Realtek Undi GUID EB53FCAD-3071-4BAB-980C-6E4A379255F3
 
[OROM - Find and Extract]
VBIOS in GUID A062CF1F-8473-4AA3-8793-600BC4FFE9A8
OROM in GUID A062CF1F-8473-4AA3-8793-600BC4FFE9A8
Press any key to continue . . .
 
--------------------------------------------------------------------------------
Main Menu
[Current version in BIOS file]
1 - Disk Controller
EFI AMI NVMe Driver present
2 - Video OnBoard
EFI GOP Driver Haswell - 5.0.1023
OROM VBIOS Haswell - 2166
3 - Network
EFI Realtek UNDI - 2.021
OROM Realtek Boot Agent GE - 2.58
4 - Other SATA Controller
5 - CPU MicroCode
View/Extract/Search/Update
================================================================================
Video OnBoard
[Current version]
EFI GOP Driver Haswell - 5.0.1023
OROM VBIOS Haswell - 2166
 
[Available version]
EFI GOP Driver HSW-BDW - 5.5.1034
OROM VBIOS HSW-BDW - 1038
 
1 - Update GOP Driver
2 - Update OROM VBIOS
0 - Exit to Main Menu
--------------------------------------------------------------------------------
Choice:1
EFI GOP Driver GUID 5BBA83E6-F027-4CA7-BFD0-16358CC9E123
File replaced
 
EFI GOP Driver HSW-BDW - 5.5.1034
OROM VBIOS Haswell - 2166
--------------------------------------------------------------------------------
Choice:2
OROM VBIOS DevID 402
File replaced
 
EFI GOP Driver HSW-BDW - 5.5.1034
OROM VBIOS HSW-BDW - 1038
================================================================================
 
Main Menu
[Current version in BIOS file]
1 - Disk Controller
EFI AMI NVMe Driver present
2 - Video OnBoard
EFI GOP Driver HSW-BDW - 5.5.1034
OROM VBIOS HSW-BDW - 1038
3 - Network
EFI Realtek UNDI - 2.021
OROM Realtek Boot Agent GE - 2.58
4 - Other SATA Controller
5 - CPU MicroCode
View/Extract/Search/Update
 
MC Extractor v1.20.0 r77
 
# CPUID Platform ID Revision Date Type Size Offset Last
1 306C1 32 (1,4,5) FFFF0014 2012-07-25 PRE 0x6000 0x385020 Yes
2 306C2 32 (1,4,5) FFFF0006 2012-10-17 PRE 0x5800 0x38B020 Yes
3 306C3 32 (1,4,5) 25 2018-04-02 PRD 0x5C00 0x390820 Yes
4 40671 22 (1,5) 1E 2018-04-03 PRD 0x3400 0x396420 Yes
 
Microcodes GUID 17088572-377F-44EF-8F4E-B09FFF46A070
 

 

@JanCerny

It seems, according to UBU log, that you’ve already added 40671 microcode or am I wrong ?

Anyway, after extracted microcode file, you have to insert/replace new microcodes via hex editing (I suggest you WinHEX)
and fix length with the help of Uefi Tool NE Alpha.

@JanCerny - Looks good, did you test yet?

Yes, @Sylar76 , I added the ucode for him on previous page. I think he was asking you for in-depth guidance on how to do manually (The hex and FIT correction I assume), in case he want’s to do later or re-do himself now and not use the file I posted
I posted links about FIT correction on my reply on previous page, maybe he missed those?

There is a discrepancy between last 2 screens, as UefiTool only sees 3 microcodes added, while UBU shows 4 (the latter is the new 40671 microcode).

So I think that one microcode has to be removed in order to gain space for adding the 40671 one.

Good eye, but he posted that first image and question to you by itself, long time before editing and adding second image and note to me. I assume first was original BIOS, then second image my BIOS mod later when the post was edited.
Yes, this is it, I just checked and see it’s all old versions so this is why it looks strange. BIOS is fine, check the file on previous page. No need for removing one code to add another in this instance.

Yes you’re right.


Not yet. I have ordered one. I am curious about crypto mining. L4 cache is supposedly efficient for mining Monero.

I need to flash the new micro-codes for my z97 asrock anniversary.
I used the latest ubu tool 1.70 rc3 without mtool because it not needs it.
Is this OK?

U - Used UEFIReplace
0 - Cancel
Choice:u
[Preparing for replacement]
Empty GUID: File replaced
mCode GUID: File replaced
mCode GUID: patchVtf: PEI Core entry point can’t be found in VTF. VTF not patched.
File replaced
[Replacement]
mCode FFS: File replaced
mCode FFS: patchVtf: PEI Core entry point can’t be found in VTF. VTF not patched.
File replaced
Empty FFS: File replaced
Real FIT
01 mCode Offset - FFF373F8 != FFF37410
Fixed - FFF373F8
mCode Size - 3400
02 mCode Offset - FFF3A7F8 != FFF3A410
Fixed - FFF3A7F8
mCode Size - 5C00
03 mCode Offset - FFF403F8 != FFF40010
Fixed - FFF403F8
mCode Size - 5800
04 mCode Offset - FFF45BF8 != FFF45810
Fixed - FFF45BF8
mCode Size - 6000
Backup FIT with Offset
Press any key to continue . . .


and with uefi tool ne alpha 51 i see this:

http://i65.tinypic.com/21bm4rd.jpg

What is the pei core not found?



In this case, use only MMTool.

In a post where Fernado explains how to use ubu tool he has the photo(he use a z97 asrock):



so he must use also MMTool?


With the new UBU 1.70 rc3 (instead of rc1) it correctly detects this very same BIOS as UEFI capable and lets me update the included ROMs. So this was really a problem with UBU 1.70 rc1?

I am trying again to update the bios of a Z97 motherboard and I am looking for the latest vbios/bsf files. I am also a little confused about the procedure that I need to follow. Can anyone help?

I cannot understand in my asrock z97 if i use mtool it says no enough space… if i use the new uefi replace i take mCode GUID: patchVtf: PEI Core entry point can’t be found in VTF. VTF not patched.
So i am stuck…

When I updated my Disk Controller using UBUTool, I get this:

https://www.dropbox.com/s/0jzxncwfvkmmzmq/UBU1.PNG?dl=0

Do I have to worry about the “ubutool parseFile: non-empty pad-file contents will be destroyed after volume modifications” message there?

I then get this when I update my NIC:

https://www.dropbox.com/s/tc5jnk9p5yd0igu/UBU2.PNG?dl=0

Do I have to worry about that “it is possible to install up to versions…” message?

Goodmorning,

i used UBU to modify a BIOS for my HP 3520 aio desktop pc, modified seems to be ok, but when i try to load with safuwin update procedure not start. if i test bios file with same safuwin all controlls are passed done. Why?

This is the screen:
±--------------------------------------------------------------------------+
| AMI Firmware Update Utility(APTIO) v2.38_HP_v04_B04 |
| Copyright (C)2011 American Megatrends Inc. All Rights Reserved. |
±--------------------------------------------------------------------------+
Reading file … done
FFS checksums … ok
- Incorrect BIOS for the system.

C:\Users\posto5\Desktop\vvvvvvvvvv\bios\sp70066>

This is the screen test BIOS FILE:

C:\Users\posto5\Desktop\vvvvvvvvvv\bios\sp70066>safuwin LEE_817.rom /d
±--------------------------------------------------------------------------+
| AMI Firmware Update Utility(APTIO) v2.38_HP_v04_B04 |
| Copyright (C)2011 American Megatrends Inc. All Rights Reserved. |
±--------------------------------------------------------------------------+
Reading file … done
FFS checksums … ok
- ROM File Size checking … ok
- ROM ID checking … ok
- ROM File verification status … ok

C:\Users\posto5\Desktop\vvvvvvvvvv\bios\sp70066>

NEW: Linux* Processor Microcode Data File Version: 20180807 released… (UBU needs an update!)

There is the Microcode Update Guidance 08-August-2018 → https://www.intel.com/content/dam/www/pu…te-guidance.pdf


== 20180807 Release ==
– Updates upon 20180703 release –
Processor Identifier Version Products
Model Stepping F-MO-S/PI Old->New
---- new platforms ----------------------------------------
WSM-EP/WS U1 6-2c-2/03 0000001f Xeon E/L/X56xx, W36xx
NHM-EX D0 6-2e-6/04 0000000d Xeon E/L/X65xx/75xx
BXT C0 6-5c-2/01 00000014 Atom T5500/5700
APL E0 6-5c-a/03 0000000c Atom x5-E39xx
DVN B0 6-5f-1/01 00000024 Atom C3xxx
---- updated platforms ------------------------------------
NHM-EP/WS D0 6-1a-5/03 00000019->0000001d Xeon E/L/X/W55xx
NHM B1 6-1e-5/13 00000007->0000000a Core i7-8xx, i5-7xx; Xeon \
L3426, X24xx
WSM B1 6-25-2/12 0000000e->00000011 Core i7-6xx, i5-6xx/4xxM, \
i3-5xx/3xxM, Pentium G69xx, Celeon P45xx; Xeon L3406
WSM K0 6-25-5/92 00000004->00000007 Core i7-6xx, \
i5-6xx/5xx/4xx, i3-5xx/3xx, Pentium G69xx/P6xxx/U5xxx, Celeron P4xxx/U3xxx
SNB D2 6-2a-7/12 0000002d->0000002e Core Gen2; Xeon E3
WSM-EX A2 6-2f-2/05 00000037->0000003b Xeon E7
IVB E2 6-3a-9/12 0000001f->00000020 Core Gen3 Mobile
HSW-H/S/E3 Cx/Dx 6-3c-3/32 00000024->00000025 Core Gen4 Desktop; Xeon E3 v3
BDW-U/Y E/F 6-3d-4/c0 0000002a->0000002b Core Gen5 Mobile
HSW-ULT Cx/Dx 6-45-1/72 00000023->00000024 Core Gen4 Mobile and \
derived Pentium/Celeron
HSW-H Cx 6-46-1/32 00000019->0000001a Core Extreme i7-5xxxX
BDW-H/E3 E/G 6-47-1/22 0000001d->0000001e Core i5-5xxxR/C, \
i7-5xxxHQ/EQ; Xeon E3 v4
SKL-U/Y D0 6-4e-3/c0 000000c2->000000c6 Core Gen6 Mobile
BDX-DE V1 6-56-2/10 00000015->00000017 Xeon D-1520/40
BDX-DE V2/3 6-56-3/10 07000012->07000013 Xeon \
D-1518/19/21/27/28/31/33/37/41/48, Pentium D1507/08/09/17/19
BDX-DE Y0 6-56-4/10 0f000011->0f000012 Xeon D-1557/59/67/71/77/81/87
APL D0 6-5c-9/03 0000002c->00000032 Pentium N/J4xxx, Celeron \
N/J3xxx, Atom x5/7-E39xx
SKL-H/S/E3 R0 6-5e-3/36 000000c2->000000c6 Core Gen6; Xeon E3 v5
GLK B0 6-7a-1/01 00000022->00000028 Pentium Silver N/J5xxx, \
Celeron N/J4xxx
KBL-U/Y H0 6-8e-9/c0 00000084->0000008e Core Gen7 Mobile
CFL-U43e D0 6-8e-a/c0 00000084->00000096 Core Gen8 Mobile
KBL-H/S/E3 B0 6-9e-9/2a 00000084->0000008e Core Gen7; Xeon E3 v6
CFL-H/S/E3 U0 6-9e-a/22 00000084->00000096 Core Gen8
CFL-H/S/E3 B0 6-9e-b/02 00000084->0000008e Core Gen8 Desktop