MC Extractor: Intel, AMD, VIA & Freescale Microcode Extraction Tool Discussion

Does anyone have latest version of these microcodes? I will update my collection.

1
2
3
4
5
6
7
8
9
10
11
12
13
 

+-------+-----------------------+---------+------------+---------+--------+----------+---------+--------+
| 1067A | 44 [2, 6] | A0B | 2010-09-28 | PRD | 0x2000 | B007E7B0 | 0xB6020 | No |
+-------+-----------------------+---------+------------+---------+--------+----------+---------+--------+
| 10671 | 04 [2] | 106 | 2007-03-29 | PRD | 0x1000 | 80731BA9 | 0xBB020 | No |
+-------+-----------------------+---------+------------+---------+--------+----------+---------+--------+
| 10671 | 40 [6] | 106 | 2007-03-29 | PRD | 0x1000 | 80731B6D | 0xBD020 | No |
+-------+-----------------------+---------+------------+---------+--------+----------+---------+--------+
| 10674 | 04 [2] | 404 | 2007-06-08 | PRD | 0x1000 | F9DEC4BD | 0xBF020 | No |
+-------+-----------------------+---------+------------+---------+--------+----------+---------+--------+
| 10674 | 40 [6] | 404 | 2007-06-08 | PRD | 0x1000 | F9DEC481 | 0xC1020 | No |
+-------+-----------------------+---------+------------+---------+--------+----------+---------+--------+
 
 


//edit: uploaded new microcodes extracted from mcupdate_GenuineIntel.dll (W10 1709 20th December 2017)
1
2
 
!New_cpu50671_plat78_ver000001AE_2017-09-08_PRD_45B014CA.bin
!New_cpu80650_plat08_ver0000000E_2017-09-13_PRD_BC0B9463.bin
 

Intel.zip (52.5 KB)

@ JanCerny:

Thank you for the extracted microcodes which were not in the DB. In the future, please use the Intel, AMD & VIA CPU Microcode Repositories Discussion thread for such reports. You’ll also find the github link to the latest microcodes there.

Thank you @Gorbush for clarification.

No, but it was my fault: i’ve incorrectly downloaded the microcode from https://github.com/platomav/CPUMicrocodes/
The two microcode have the same size actually!

!New_cpu50654_platB7_ver02000043_2018-01-26_PRD_4840163E

!New_cpu50654_platB7_ver02000043_2018-01-26_PRD_4840163E.zip (28.2 KB)


Yes, already found yesterday here but thank you a lot for the report regardless.

Hi, looking at your database the uCode for my CPU (20655) have the file “cpu20655_plat92_ver00000005_2015-06-30_PRD_470D62E6” (2015) but in the Intel Microcode Package for Linux is still “cpu00020655_plat00000092_ver00000004_date20130628” (2013), do you know why? There’s another package on Intel website?
Thanks.



This is one reason having a database of the micro-codes with all information listed would be nice



I saw a Haswell one as well, version 24 released, but no Intel package has this. Where did it come from? You can see the thread here about it.

Standing at the information in the attached PDF (Page 3, Arrandale) they could be pre-beta (from 2015? maybe buggy and rolled back to 2013’s).
I’m testing it.

microcode-update-guidance.pdf (357 KB)

Those are production microcodes (not beta or anything) that are supposed to be issued along with BIOS updates of other modules in some cases. So, they are not distributed to the general public, but are available to OEMs without restriction (other than whatever NDAs are required to be a member of the developers area).

The wiki article on the Intel Extra Undocumented Header makes several references to a unique pre-production microcode patch with null sections. I’m interested in firmware formats and would very much like to see it. Is it possible for someone to upload it?

@plutomaniac

Hello! :slight_smile:
Are you sure that 1A microcode is newer than 1E?

scr1.jpg



PRE of 1A and PRD of 1E, and the date 10-03 vs 18-03

It’s not. You are comparing PRD vs PRE which is wrong. MCE shows different Last status for PRD and PRE. The last PRD for that CPUID & Platform is 2A and the last PRE is 1A. Both will be shown as Last because they have different release types.

Well. But I do not quite understand what revision of the microcode is the last for CPUID 506E1?

Add:
Sorry. Understood. :))

If i use MC-Extractor, i can see which Microcode is up to date and which one could be upgraded. Should i have to search and download the shown upgradable Microcodes manually(1), or is it possible to directly extract it with MC-Extractor(2)?

If (1), how do i know what Version of Microcode i have to download?

For example:

I would like to upgrade the Microcodes for the EP45UD3P (Socket 775). The following Microcodes are upgradable:

(1) cpu1067A_plat11_ver00000A07_2008-04-09_PRD_83067F5A.bin
(2) cpu10676_plat01_ver0000060C_2008-01-19_PRD_FBAC0F6C.bin
(3) cpu10676_plat10_ver0000060C_2008-01-19_PRD_FBAC0F5D.bin

There are the following upgrades at https://github.com/platomav/CPUMicrocodes/tree/master/Intel:

Upgrade (1):

(A) cpu1067A_plat44_ver00000A0E_2015-07-29_PRD_A3107D75.bin
(B) cpu1067A_platB1_ver00000A0E_2015-07-29_PRD_59BF808E.bin

Upgrade (2) & Upgrade (3):

(A) cpu10676_plat04_ver00000612_2015-08-02_PRD_AEAA6CC1.bin
(B) cpu10676_plat40_ver00000612_2015-08-02_PRD_B6F50E9C.bin
(C) cpu10676_plat44_ver0000060F_2010-09-29_PRD_8FE1A203.bin
(D) cpu10676_plat54_ver0000060C_2008-01-19_PRD_FBAC0F19.bin
(E) cpu10676_plat91_ver00000612_2015-08-02_PRD_1750A2A6.bin

Q(1): How do i know which Microcode to use?

In order for MC-Extractor to work, it must rely on a database and know which upgrade will work.

Q(2): Can this database be viewed manually for a manual search?

Thanks for your help.

You cannot extract upgrades with MC Extractor, only download manually from the site you mentioned.
Or you can update all at once with UBU tool - [Tool Guide+News] “UEFI BIOS Updater” (UBU)

For question #1 - To know which microcode to use, look at the platform second value (Like platform 11 2, 5 - random example)
Even if there is no platform 11 in the updated version, you want the microcode that has the 2, 5 or if necessary two microcodes to cover all the originally included ones.

Specific example for 1067A - original BIOS has platform 11 (0,4) - so you need update that covers both 0 and 4 = cpu1067A_platB1_ver00000A0E_2015-07-29_PRD_59BF808E.bin since this one covers 0,4,5,7
To see what each covers, you can drag and drop single microcode files onto MC Extractor

I am unsure about the answer to your second question, or what you mean


The DB is a normal SQLite one which can be easily browsed via DB Browser for SQLite or similar. Alternatively, you can use MCE -search parameter.

Thank you very much for this information. I didn’t know anymore how to see the ID’s of the supported Platforms in the Microcode file.

About the second question.

MC-Extractor is able to show the Microcodes of a system BIOS and wether it can be upgraded or not.

What would be very useful were the direct display of the upgrade file, so you won’t have to search for it manually. Or there would have to be other useful tools to facilitate the search for the upgrade.

So you understood what I meant, and now know how to check each single microcode for what platforms it supports correct? If not, I will add image and show you what I mean.

Yes, i understood. Thank you. :wink:

Perhaps it is worth considering upgrading the MC Extractor (as mentioned above).

Thank you for using MC Extractor. Such functionality is kind of out-of-scope for MCE. Following the instructions at the CPU Microcode Repositories at github is fairly straight forward though so there is no need to serve everything on a silver platter.