Initial Deployment
Intro
This document is a guide for the initial installation of Dasharo on a supported device. It assumes some knowledge about external flashing and is primarily aimed at technicians performing the initial installation and not for end users of the devices.
Installing Dasharo
Initial Installation
Due to flash protection and Intel ME configuration present in vendor firmware, initial deployment must be performed externally (using a chip programmer like CH341a).
Preparation
On your host computer, install flashrom from sources:
Note
Building from source is required, because the latest flashrom release as of the time of writing does not have support for the flash chip model present in these devices.
-
Install build dependencies (on Ubuntu and derivatives):
apt update apt upgrade apt install git build-essential debhelper pkg-config libpci-dev libusb-1.0-0-dev libftdi1-dev meson
-
Clone the flashrom repository:
git clone https://review.coreboot.org/flashrom.git
-
Build and install flashrom:
cd flashrom meson build ninja -C build sudo ninja -C build install
EC installation
Steps for installing Dasharo Embedded Controller Firmware:
-
On the target laptop, boot into Dasharo Tools Suite from a USB stick
-
Ensure power adapter is plugged into the laptop
-
Press
S
to drop to shell -
Download the EC firmware from the Releases page for your device with
wget
-
Install the EC firmware:
flashrom -p ite_ec:boardmismatch=force,romsize=128K -w path/to/ec.rom
BIOS installation
Steps for installing Dasharo BIOS:
- Remove the bottom cover of the laptop.
- Disconnect the primary battery.
- Disconnect the CMOS battery.
- Attach a WSON-8 probe to the SPI flash chip.
-
Backup the current firmware, in case you want to be able to restore it at some point:
flashrom -p ch341a_spi -r bios_backup.rom
-
Install Dasharo BIOS, replacing
[path]
with the path to the firmware image you want to flash, e.g.novacustom_v540tu_v0.9.0.rom
:-
Step 1: Flash descriptor:
flashrom -p ch341a_spi -w [path] --ifd -i fd
-
Step 2: BIOS and CSME:
flashrom -p ch341a_spi -w [path] --ifd -i me -i bios
-
-
Detach the WSON-8 probe.
- Connect the primary battery and reconnect the CMOS battery.
- Power on the laptop. The laptop may shut down once after training the memory.
During the initial installation of Dasharo, you should deploy the supported Intel ME version (and configuration) on the device. Since vendor firmware has enabled Intel Boot Guard and BIOS Guard, it is not possible to do this from within the operating system and external flashing of the whole flash chip using a programmer like the CH341a is required.
Preparation
Install flashrom:
apt update
apt upgrade
sudo apt -y install flashrom
BIOS installation
Steps for installing Dasharo BIOS:
-
Remove the bottom cover of the laptop.
-
Disconnect the primary battery. (1)
- Disconnect the CMOS battery. (2)
-
Attach a WSON-8 probe to the SPI flash chip. (3)
For TGL devices use SOIC clip instead of WSON
-
Backup the current firmware, in case you want to be able to restore it at some point:
flashrom -p ch341a_spi -r bios_backup.rom
-
Install Dasharo BIOS, replacing
[path]
with the path to the firmware image you want to flash, e.g.novacustom_ns5x_adl_full_v1.4.0.rom
flashrom -p ch341a_spi -w [path]
-
Detach the WSON-8 probe.
- Connect the primary battery and reconnect the CMOS battery.
- Power on the laptop. The laptop may shut down once after training the memory.
EC firmware installation
Currently, the latest flashrom release lacks support for flashing ITE embedded controllers such as the ones present in NovaCustom laptops. Because of this, we need to build flashrom from source. Run the following commands on the target laptop:
-
Install build dependencies:
apt update apt upgrade apt install git build-essential debhelper pkg-config libpci-dev libusb-1.0-0-dev libftdi1-dev meson
-
Obtain source code:
git clone https://github.com/dasharo/flashrom.git cd flashrom
-
Build flashrom:
make sudo make install
-
Make a backup of the EC firmware:
Remember to store the backup on the separate device in case flashing fails.
flashrom -p ite_ec -r ec_backup.rom
-
Install the EC firmware:
Warning: After running this command, the internal keyboard and power button will stop responding until the device is power cycled (all power must be removed, including the internal battery). Be prepared to disconnect the battery after updating the EC.
Alternatively, you can boot up the laptop without the battery connected and power it from an AC adapter. Then, once the EC update is complete, disconnect the AC adapter to power off the laptop.
Run the following command, replacing
[path]
with the path to the EC firmware you want to flash, e.g.novacustom_ns5x_adl_ec_v1.4.0.rom
flashrom -p ite_ec -w [path]
Successful installation of Dasharo EC finishes the initial deployment process.
Initial deployment
To ensure a smooth deployment process, it is recommended to use the latest version of DTS available from the releases page. Once you have obtained it, you can then proceed with following the Dasharo zero-touch initial deployment section procedure. This will help you set up Dasharo effectively and without manual intervention.
If something went wrong or EC installation was not done, the firmware will print an error string during boot:
OR
In such case please follow the EC firmware update instructions for a specific board variant.
coreboot + Heads
The supported method for initial deployment of the coreboot + Heads variant is to follow installing Dasharo, and then transition from Dasharo UEFI to Heads variant.