Skip to content

Dasharo (coreboot + Heads) firmware variant

Heads-based variant of Dasharo firmware compatible with MSI PRO Z790-P boards is offered as a Technology Preview Release.

Please consider to support the project financially by purchasing the Dasharo Heads Subscription for Desktop. With this subscription, you will get access to the Transition from Dasharo UEFI to Heads variant feature in Dasharo Tools Suite and support from Dasharo directly via Matrix. The subscription is not automatically renewed.

Releases

Following Release Notes describe status of Dasharo (coreboot + Heads) firmware development compatible with MSI PRO Z790-P boards.

v0.9.0 - 2024-03-21

Test results for this release can be found here.

Added

Changed

Known issues

Binaries

sha256 sha256.sig

sha256 sha256.sig

This is a Dasharo Entry Subscription Release. To obtain access to the pre-built binaries you will have to become the Dasharo Entry Subscription subscriber. You will get the access to all of the firmware updates for the duration of the subscription via Dasharo Entry Subscription newsletter.

To verify binary integrity with hash and signature please follow the instructions in Dasharo release signature verification using this key

SBOM (Software Bill of Materials)

Hardware Configuration Matrix

Generally, the same hardware configuration as for the UEFI variant applies.

A notable addition is usage of the Nitrokey 3A Mini USB device, which is required for Heads installation and usage.

Test Matrix

Please refer to the tests results spreadsheet.

Building manual

This section presents the crucial steps required to build the Dasharo Heads firmware. For more information, you may also refer to the official Heads building documentation.

Requirements

This guide was verified on Ubuntu 22.04. In practice, any Linux distribution with Docker support should be enough to complete it.

Make sure that you have following packages installed:

Building

  1. Clone Dasharo Heads repository

     git clone https://github.com/Dasharo/heads.git
    
  2. Navigate to the source code directory and checkout to the desired revision:

    cd heads
    git checkout msi_ms7e06_v0.9.0
    
  3. Start docker container:

    docker run --rm -it -v $PWD:$PWD -w $PWD \
      3mdeb/heads-docker:3.0.0 /bin/bash
    
  4. Inside of the container, start the build process:

BOARD=msi_z790p_ddr4 make

This will produce a Dasharo binary placed in build/x86/msi_z790p_ddr4/dasharo-msi_z790p_ddr4-*.rom.

BOARD=msi_z790p_ddr5 make

This will produce a Dasharo binary placed in build/x86/msi_z790p_ddr5/dasharo-msi_z790p_ddr5-*.rom.

Transition from Dasharo UEFI to Heads variant

Recommended

Please use Dasharo Tools Suite with Heads subscription credentials to transition to Heads.

Manual

Use FlashBIOS method (recommended) or flash with flashrom in OS. To use FlashBIOS we recommend to switch back to MSI UEFI firmware (if you don't have the desktop Dasharo Entry Subscription or not running Dasharo v0.9.1) and then use FlashBIOS with heads binary.

To transition to heads firmware with flashrom, whole binary has to be flashed:

flashrom -p internal -w <heads_fw_file>

Warning

ME has to be disabled and descriptor unlocked to flash full file. MSI firmware began to ship the platforms with ME and flash descriptor regions read-only. Unlocking the descriptor is possible using Firmware Update Mode on Dasharo v0.9.1.

Transition from Dasharo Heads back to UEFI

At the moment, Dasharo Tools Suite does not support switching from Heads back to UEFI-based firmware. Use FlashBIOS to restore a saved backup, stock, or Dasharo UEFI firmware.

Warning for Qubes OS users

If you installed Qubes OS under Heads, it has been installed in legacy BIOS boot mode and will not be bootable under UEFI. You will likely need to install Qubes OS again.

Users who installed Qubes OS before switching to Heads are not affected.

Logo customization

To replace the logo, one must rebuild the firmware. Other methods are not supported as of now. You would need to replace the branding/Dasharo/bootsplash.jpg in the heads repository with your own, and proceed with the Building manual.

Initial deployment

The supported method is to follow the initial deployment, and then the Transition from Dasharo UEFI to Heads variant.

Firmware update

Build or download Dasharo Heads firmware, and proceed with the official Heads update documentation.