Archive 2020


What features PCIe has?

Published at October 8, 2020 · Marek Kasiewicz ·  7 min read

Introductory blog post to PCIe features. In this article you can read what PCIe capability is and see examples of such capabilities....

Categories: firmware





TrenchBoot: Open Source DRTM. Multiboot2 support.

Published at September 7, 2020 · Krystian Hebel ·  11 min read

This month we will show that not only Linux kernel can be started by TrenchBoot. We also did some drastic changes to the bootloader data format, so if you try to redo some older posts in the future and they do not seem to work, this is probably the place to look for hints....

Categories: firmware security


3mdeb contribution 2020'Q2

Published at September 3, 2020 · Kamila Banecka ·  4 min read

The second post on 3mdeb contribution summary! The second quarter of 2020 has brought new merged patches. Check the samples of code that we succesfully contributed and feel free to use them in your own projects....

Categories: miscellaneous


Booting coreboot on Intel Comet Lake S RVP8

Published at August 31, 2020 · Michał Żygowski ·  10 min read

This blog post shows the procedure of building coreboot for a Comet Lake S platform. Also it describes problems occurred when building and booting the image. As a bonus, few tips and tricks will be shown how to fix/workaround these kind of problems....

Categories: firmware security




coreboot Fundamentals Training

Published at August 9, 2020 · Kamila Banecka ·  4 min read

coreboot Fundamentals Training is the first step of 3mdeb Firmware Training path. It provides solid grounds for further development towards proficiency in coreboot firmware platform enginering. With this blogpost we are starting coreboot fundamentals mini-course....

Categories: firmware miscellaneous






Dell OptiPlex and coreboot - a story about porting cursed hardware (part 1)

Published at June 24, 2020 · Michał Żygowski ·  7 min read

This post begins a new series telling a story of a stubborn firmware engineer who overcame never-ending amount of obstacles to create a Dell OptiPlex 9010 workstation as open as possible. In this series, you will not only read about the adventures which accompanied the work on the hardware but also you will have a chance to learn the way of BIOS developer....

Categories: firmware
















Trying to fix ESXi 6.7.0 boot issue, part one

Published at March 4, 2020 · Krystian Hebel ·  14 min read

First mentions that updated versions of VMware's ESXi 6.7.0 installer doesn't start on PC Engines platforms come from the beginning of 2019. Older versions of ESXi worked fine. 'Shutting down firmware services...' is the last line printed before hang or reboot....

Categories: firmware os-dev


Boot Guard - pre-execution firmware verification on Protectli FW6

Published at February 21, 2020 · Michał Żygowski ·  9 min read

This post will not describe how to guard your shoes. However, will definitely introduce you to Boot Guard feature present on Intel processors which allows firmware verification before the first instruction executes. One may call it pre-execution firmware verification. The post will also show you how Boot Guard can work well with coreboot based firmware on an example of Protectli FW6....

Categories: firmware security


GRUB2 and 3mdeb minisummit 2019

Published at February 19, 2020 · Piotr Król ·  7 min read

In December 2019 we had pleasure to meet Daniel Kiper #GRUB2 maintanaer in 3mdeb office in Gdańsk. We dicussed various #GRUB2, #Xen, #firmware, #coreboot, #security and #TPM related topics. Results of that "minisummit" was presented in following blog post in form of presentations and videos....

Categories: firmware os-dev security



VMX exit reasons and handlers

Published at January 23, 2020 · Krystian Hebel ·  14 min read

After long break, this is the third post in the hypervisor series. We will see how VMX helps with virtualization of restricted instructions and how Bareflank allows for implementation of handlers for them. At the end we will show how to write and add our own handler....

Categories: firmware


How L4 Genode hypervisor stands against proprietary RTOS solution

Published at January 10, 2020 · Krystian Hebel ·  5 min read

A microkernel is a minimal computer operating system kernel which provides no operating system services at all, only the mechanisms needed to implement such services. A concept is tolerated inside the μ-kernel only if moving it outside the kernel would prevent the implementation of the system’s required functionality. In this article we will show our considerations on using L4 microkernels on VM....

Categories: os-dev