Skip to content

Dasharo firmware building guide

Intro

This guide shows how to build Dasharo firmware for Hardkernel devices.

Requirements

Building

To build Dasharo (coreboot+UEFI) firmware image, first clone the coreboot repository:

git clone https://github.com/Dasharo/coreboot.git

then follow the steps below:

  1. To build a specific version checkout to the version's tag. Skip this step otherwise.

    cd coreboot
    git checkout hardkernel_odroid_h4_<version>
    

    For example

    git checkout hardkernel_odroid_h4_v0.9.0
    
  2. Checkout submodules:

    git submodule update --init --checkout
    
  3. Build the firmware:

    ./build.sh odroid_h4
    

    The resulting coreboot image will be placed in the coreboot directory as hardkernel_odroid_h4_<version>.rom.

Building Slim Bootloader

To build Dasharo (Slim Bootloader + UEFI) firmware image, first clone and enter Slim Bootloader repository:

git clone https://github.com/Dasharo/slimbootloader.git
cd slimbootloader

then follow the steps below:

  1. To build a specific version, checkout to the version's tag. Skip this step otherwise.

    git checkout hardkernel_odroid_h4_<version>
    

    For example

    git checkout hardkernel_odroid_h4_v0.9.0
    
  2. Build UEFI Payload and Slim BootLoader

    ./build.sh odroid_h4
    

Note

If you wish to build Slim Bootloader with your own keys, run SBL_KEY_DIR=<path_to_keys> ./build.sh odroid_h4 instead, where the <path_to_keys> is the path to the directory with keys generated with python BootloaderCorePkg\Tools\GenerateKeys.py -k <path_to_keys> from the clone Slim Bootloader directory. <path_to_keys> may be an absolute path or path relative to Slim Bootloader repository directory.

The resulting Slim Bootloader image will be placed in the Slim Bootloader directory as Outputs/odroid_h4/ifwi-release.bin.