Fixing PCI-Express for Coffee Lake CPUs on Sky/Kaby Lake non-Asrock(and some new Asrock) motherboards

This patch intended for non-Asrock motherboards on 110/150/170/250/270 chipsets, it changes 7(or 8) modules in bios. Also a patch is needed for some new Asrock motherboards with kaby chipset like B250/Z270 or even with sky chipset too.

Main idea is removing check device_id of host bridge (pci 0/0/0, located inside CPU), i named it "asrock-way". Combination of cpu_family & device_id means some of one of 4 type pci bridges,in Z370 bioses for kaby/coffe exist type "1" for device_id of host bridge = 3e0f,3e1f,3e30,3ec2,590f,591f and type "3" for 5900/5908/5910/5918, type "0" and "2" i think for mobile/server CPUs. Procedure in pre-Z370 bioses set type to "unknow" if detect unknow device_id. That’s the problem.
Patch always set type to "1" for kaby/coffe regardless of device_id, asrock does same thing.
For Gigabyte H110M-HD2 in addition to PCI-E i also received CPU Voltage fix.

Fix for EXPERTS only ! You must have SPI programmer for restoring bios as recovery option !

Gigabyte H110/i3 8100 - Confirmed (my pc)
MSI Z170/i3 8100 - Confirmed
ASRock B250 - Confirmed (forums)
MSI B150 - Confirmed (forums)
Gigabyte Z270 - Confirmed (forums)
ASUS - Not Tested (you need search way to flash modded bios)

What you need:
1. Check "reserved" pins on cpu socket.…heet-vol-1.html, part 9. Processor Land Information.
All of these pins should not be connected to anything on motherboard, according to some forums, there is a small chance that the manufacturer of the motherboard could connect them somewhere. If some pins connected, you need isolate them at cpu side.
1.1. On some MBs need reroute SKTOCC(SocKeT OCCupied) pin from AC38 pin (coffe) to AB35 pin (sky/kaby), shorting AB35 to GND(AC35 for example) we simulate SKTOCC signal for pre z370 motherboards. More info at

2. Download last or one of last bios with KABY Lake support from vendor site

3. Check Management Engine version with uefitool/me analyzer/etc
ME versions 11.8.x.xxxx and 11.7.x.3xxx block coffee CPUs on pre-z370 motherboards, downgrade ME partition to 11.6.x.xxxx/11.7.x.1xxx or look for "pre me11.8" version of bios on vendor site.
Keep in mind that versions below 11.8.x.xxxx have a vulnerabilities.

4. Prepare BIOS with GOP/VBIOS/Microcodes from [GUIDE] Coffee Lake CPUs on Skylake and Kaby Lake motherboards or other guide
You must have at least two microcodes: for you current sky/kaby lake(506E3/906E9) and for planned coffe lake(906EB/906EA)

After step 4 you must flash bios and check what motherboard starts with coffe CPU on integrated VGA ! If it fails, do nothing more steps, you have some other noboot issue.

5. Run "pcie_patcher.cmd biosname" from command line
check output like:

6. Flash complete patched bios

Thanks to CodeRush & LS_29 for great tools !
Discord discussions: #english

1.4 - cleanup / added clevo patterns
1.3 - added asus z270 patterns
1.2 - added asus ddr3 patterns
1.1 - changed msys-1 to msys-2 .dll & .exe
1.0 - Initial

Download Link: VER 1.4 (pass 12345678) / mirror

Great,thank you for sharing this tool.
but I can’t downdload it. because it request registe by a credit card.
I don’t have a abroad credit card.
can you share it another way?

added mirror

You awesome !
Thanks !

All MSI LGA1151 boards can work with 6-core cpu.
Use Intel Flash Image Tool and decomp original BIOS image.
Then extract vbios and upgrade to 1054.
For coffee lake 6-core,you need change sku (at the top of Flash Image Tool window )to Z370.
And ME FW Version is not important here.
Replace BIOS Region.bin to a MSI Z370 one.And replace Z370’s vbios to the one we upgraded.
Build image and flash via SPI Programmer( may be need to change 8M Flash chip to 16M)
Last isolate 2 pins on cpu and you can power on.

according to my test
if you modify a 100/200 seriers motherboard
me fw version last 4 numbers is 1xxx all can work with coffee lake i3
when it is 3xxx it can not boot

if you modify a z370 motherboard
downgrade me fw to 1xxx and add microcode , you can boot skylake and kabylake

and i have a question
how can i to add kaby lake support to bios
i have clevo laptop p775dm with z170 and i want to play with i7 7700
but clevo didn’t release new bios to support kaby lake

great work!

too hard work, you need manualy rewrite some asm parts in about 15-20 pei&dxe modules in uefi, add new cpuid/logic and etc.

too hard work, you need manualy rewrite some asm parts in about 15-20 pei&dxe modules in uefi, add new cpuid/logic and etc.

my laptop have new editon p775dm2 and it support kaby lake
i can flash its bios to my device but got only 2 problems.
1. can not power off ,after shutdown it wil automatic boot up.
2.speakers and audio jacks can’t work.
in this case , can i get all things work?

too hard work, you need manualy rewrite some asm parts in about 15-20 pei&dxe modules in uefi, add new cpuid/logic and etc.

why is it so easy to get coffee lake work with kaby lake bios?

because they have one cpuid family 906Ex, pre 3xx bioses can’t distinguish kaby&coffee, if they can kaby, they can coffee too.
on z370 i seen in some modules special logic for cpuid = 906EB (4 cores coffee), so z370 knows about some coffes

what pins do you meen ?

what pins do you meen ?

what pins do you meen ?

2 selected rsvd pins out of 20 rsvd pins
what is point ?

what pins do you meen ?

2 selected rsvd pins out of 20 rsvd pins
what is point ?

someone didn’t isolate the pins and he got these 2 pins in socket melt down.

Thanks for sharing info!

hello fellow tieba user
lanceliuqg here

Patched B250M-HDV is also working fine.
Thank you!

Gigabyte Z170X gaming 7 is ok, thx!



Hi, thanks @Mov_AX_0xDEAD for putting this together.

MSI B150 BAZOOKA PLUS confirmed.
In the attachment:
1) i included the bios file with microcode for i3-8100.
2) reverse engineered pinout of this board so you do not have to desolder the bios chip from board. (Mine had MX25L6473E chip, but even with different chip should be the same.)
note: I have used "ELNEC MEMprog2" to flash this.
3) Also change in OS after pcie fix.
4) added while board photo for anyone using the bios file to be sure he has the same board

Going to test ASUS Z170 further more.

MSI-B150-bazooka-plus_i3-8100-support.bios.rar (5 MB)







how did you flash the BIOS? Gigabyte EEPROM is soldered, so no SPI flashing is easily possible.
Or did you use modified efiflash to get it flashed to the Board?

anyone knows if 6-Core are already tested successfully on the z170 Boards?