Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
7053945
modules/dasharo-ec: new module
macpijan Feb 27, 2026
9f87d9f
toolchain: add sdcc and xxd
macpijan Feb 27, 2026
4c5748c
Prepare nix based docker image to be bumped to v0.2.9 to include mini…
tlaurion Feb 27, 2026
ff6f3a6
modules/dasharo-ec: fix build system and address review feedback
filipleple Apr 8, 2026
0735351
modules/dasharo-ec: address review feedback and add nv4x_adl/ns50 sup…
filipleple Apr 14, 2026
ca49f14
Makefile: Auto-clean board build directories when coreboot canary cha…
tlaurion Dec 4, 2025
e10bdb7
MTL release: coreboot revision and updated configs
filipleple Apr 9, 2026
3f4f40f
modules/coreboot: split dasharo base revisions
filipleple Apr 10, 2026
b031cfe
MTL: switch from Notebook to Clevo
filipleple Apr 10, 2026
864b46b
coreboot-dasharo: add https://github.com/Dasharo/coreboot/pull/847 on…
tlaurion Feb 17, 2026
223c8fc
patches: rename coreboot-dasharo-unreleased -> coreboot-dasharo_v56-u…
filipleple Apr 10, 2026
eed27c1
.circleci/: account for the dasharo refactor
filipleple Apr 10, 2026
3b28546
ADL: add updated nv4x_adl config
filipleple Apr 10, 2026
fbd7f1b
MTL: disable CMOS_ALTCENTURY
filipleple Apr 13, 2026
c78db0e
ADL: add ns50
filipleple Apr 14, 2026
382379b
modules/coreboot: remove redundant sed
filipleple Apr 14, 2026
33e8ae1
bin/fetch_source_archive.sh: log mirror fallbacks
tlaurion Apr 15, 2026
d458d14
config/coreboot-talos-2: set LOCALVERSION to v0.7.0
tlaurion Apr 15, 2026
1a661a0
MSI/Nitropad boards: add common security settings
tlaurion Apr 15, 2026
ccd02ed
Dasharo boards: update coreboot configs
tlaurion Apr 15, 2026
664c1fd
modules/coreboot: add helper to save defconfig alongside original .co…
tlaurion Apr 15, 2026
9aee3b1
config/coreboot-nitropad-ns50: account for FSP header path change fro…
tlaurion Apr 15, 2026
562f9e7
modules/coreboot: purism fork builds its own toolchain
tlaurion Apr 16, 2026
a2a027f
circleci: implement hierarchical cache model with fork-specific caches
tlaurion Apr 20, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
495 changes: 352 additions & 143 deletions .circleci/config.yml

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -25,3 +25,4 @@ crossgcc
typescript*
result
.claude/
tmpDir/
4 changes: 4 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -492,6 +492,10 @@ define define_module =
git -C "$(build)/$($1_base_dir)" submodule sync && \
echo "INFO: Updating submodules (init and checkout)" && \
git -C "$(build)/$($1_base_dir)" submodule update --init --checkout && \
echo "INFO: Cleaning board-specific build directories to prevent stale artifacts" && \
rm -rf "$(build)/$(BOARD)" "$(build)/$($1_base_dir)/$(BOARD)" && \
echo "INFO: Recreating board directories" && \
mkdir -p "$(build)/$(BOARD)" "$(build)/$($1_base_dir)/$(BOARD)" && \
Comment on lines +495 to +498
Copy link

Copilot AI Jan 4, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Makefile now removes and recreates board directories every time submodules are updated. This aggressive cleaning approach could cause issues if other build artifacts or files exist in these directories that shouldn't be removed. The cleaning happens unconditionally even when it may not be necessary (e.g., when submodules haven't actually changed). Consider making this cleaning conditional or documenting why this aggressive approach is needed.

Copilot uses AI. Check for mistakes.
echo "INFO: Updating .canary file with new repo info" && \
echo -n '$($1_repo)|$($1_commit_hash)' > "$$@" ; \
fi
Expand Down
28 changes: 17 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ Heads codebase. Start here:
| [doc/ux-patterns.md](doc/ux-patterns.md) | GUI/UX conventions: whiptail wrappers, integrity report, error flows |
| [doc/config.md](doc/config.md) | Board and user configuration system |
| [doc/docker.md](doc/docker.md) | Reproducible build workflow using Docker |
| [doc/circleci.md](doc/circleci.md) | CircleCI pipeline layout, workspace flow, and cache behavior |
| [doc/qemu.md](doc/qemu.md) | QEMU board targets for development and testing |
| [doc/wp-notes.md](doc/wp-notes.md) | Flash write-protection status per board |
| [doc/BOARDS_AND_TESTERS.md](doc/BOARDS_AND_TESTERS.md) | Supported boards and their maintainers/testers |
Expand Down Expand Up @@ -65,9 +66,15 @@ provided Docker wrappers — no host-side QEMU or swtpm installation is needed.
and QEMU runtime with software TPM (swtpm) and the bundled `canokey-qemu`
virtual OpenPGP smartcard. Build and test entirely in software before flashing real hardware.

Build targets are the directory names under `boards/`. For the current set of
tested and maintained targets, see [doc/BOARDS_AND_TESTERS.md](doc/BOARDS_AND_TESTERS.md).

For full details — wrapper scripts, Nix local dev, reproducibility verification, and
maintainer workflow — see **[doc/docker.md](doc/docker.md)**.

For CI cache/workspace behavior and the CircleCI job graph, see
**[doc/circleci.md](doc/circleci.md)**.

For QEMU board testing see **[doc/qemu.md](doc/qemu.md)**.

For troubleshooting build issues see **[doc/faq.md](doc/faq.md)** and
Expand Down Expand Up @@ -97,13 +104,11 @@ enabled by most board configs include:

* [musl-cross-make](https://github.com/richfelker/musl-cross-make) — cross-compiler toolchain
* [coreboot](https://www.coreboot.org/) — minimal firmware replacing vendor BIOS/UEFI
* [Linux](https://kernel.org) — minimal kernel payload (no built-in initramfs; boots with external initrd such as `initrd.cpio.xz`)
* [Linux](https://kernel.org) — minimal kernel payload (no built-in initrd; boots with external initrd such as `initrd.cpio.xz`)
* [busybox](https://busybox.net/) — core utilities
* [kexec](https://wiki.archlinux.org/index.php/kexec) — boot OS from /boot
* [kexec](https://wiki.archlinux.org/index.php/kexec) — Linux kernel executor (loads kernels from boot partition, USB, network)
* [tpmtotp](https://github.com/osresearch/tpmtotp) — TPM-based TOTP/HOTP one-time password generator
* [cryptsetup](https://gitlab.com/cryptsetup/cryptsetup) — LUKS disk encryption
* [GPG](https://www.gnupg.org/) — /boot signature verification
* [mbedtls](https://tls.mbed.org/) — cryptography for TPM operations
* [tpmtotp](https://trmm.net/Tpmtotp) — TPM-based TOTP/HOTP attestation

The full build also includes: lvm2, tpm2-tools, flashrom/flashprog, dropbear (SSH),
fbwhiptail (GUI), qrencode, and many others. See individual `modules/*` files and
Expand All @@ -118,12 +123,13 @@ kernel.

* Building coreboot's cross compilers can take a while. Luckily this is only done once.
* Builds are finally reproducible! The [reproduciblebuilds tag](https://github.com/osresearch/heads/issues?q=is%3Aopen+is%3Aissue+milestone%3Areproduciblebuilds) tracks any regressions.
* Currently only tested in QEMU, the Thinkpad x230, Librem series and the Chell Chromebook.
** Xen does not work in QEMU. Signing, HOTP, and TOTP do work; see below.
* Building for the Lenovo X220 requires binary blobs to be placed in the blobs/x220/ folder.
See the readme.md file in that folder
* Building for the Librem 13 v2/v3 or Librem 15 v3/v4 requires binary blobs to be placed in
the blobs/librem_skl folder. See the readme.md file in that folder
* Current tested and maintained boards are tracked in [doc/BOARDS_AND_TESTERS.md](doc/BOARDS_AND_TESTERS.md). Board targets themselves live under `boards/`.
* Xen does not work in QEMU. Signing, HOTP, and TOTP do work; see below.
* Blob requirements are board- or board-family-specific. Check the relevant documentation under `blobs/` for the target you are building.
* Purism boards use Purism-managed coreboot blob paths from the Purism fork (for example `3rdparty/purism-blobs/...` via `CONFIG_IFD_BIN_PATH` and `CONFIG_ME_BIN_PATH` in `config/coreboot-librem_*.config`). Heads should not maintain those vendor blob payloads. Runtime firmware notes for Librem blob jail are in [blobs/librem_jail/README](blobs/librem_jail/README).
* Lenovo xx20 boards such as X220 and X230 use the shared xx20 blob flow documented in [blobs/xx20/readme.md](blobs/xx20/readme.md). X220-specific notes are in [blobs/x220/readme.md](blobs/x220/readme.md).
* Other boards can source blobs from board-family directories under `blobs/` (for example xx20/xx30/xx80, t420, t440p, w541) or from fork-specific paths configured in coreboot configs (for example Dasharo boards using `3rdparty/dasharo-blobs/...`). Vendor blob payloads remain maintained by their upstream vendors/forks.
* T480 and T480s blob requirements are documented in [blobs/xx80/README.md](blobs/xx80/README.md). Other families have their own docs under `blobs/`, for example `t420/`, `t440p/`, and `w541/`.

### QEMU

Expand Down
10 changes: 9 additions & 1 deletion bin/fetch_source_archive.sh
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,11 @@ rm -f "$FILE" "$TMP_FILE"
# Try the primary source
download "$URL" && exit 0

# Log mirror fallback for developer awareness
MIRROR_LOG="${MIRROR_LOG:-build/mirror_fallbacks.log}"
mkdir -p "$(dirname "$MIRROR_LOG")"
echo "$(date -Iseconds) MIRROR_FALLBACK primary=$URL" >>"$MIRROR_LOG"

# Shuffle the mirrors so we try each equally
readarray -t BACKUP_MIRRORS < <(shuf -e "${BACKUP_MIRRORS[@]}")

Expand All @@ -86,7 +91,10 @@ archive="$(basename "$FILE")"
echo "Try mirrors for $archive" >&2

for mirror in "${BACKUP_MIRRORS[@]}"; do
download "$mirror$archive" && exit 0
if download "$mirror$archive"; then
echo "$(date -Iseconds) MIRROR_USED mirror=$mirror$archive" >>"$MIRROR_LOG"
exit 0
fi
done

# All mirrors failed
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# MSI PRO Z690-A DDR4 board configuration

export CONFIG_COREBOOT=y
export CONFIG_COREBOOT_VERSION=dasharo_msi
export CONFIG_COREBOOT_VERSION=dasharo_msi_z690
export CONFIG_LINUX_VERSION=6.1.8

CONFIG_COREBOOT_CONFIG=config/coreboot-msi_z690a_ddr4.config
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# MSI PRO Z690-A (DDR5) board configuration

export CONFIG_COREBOOT=y
export CONFIG_COREBOOT_VERSION=dasharo_msi
export CONFIG_COREBOOT_VERSION=dasharo_msi_z690
export CONFIG_LINUX_VERSION=6.1.8

CONFIG_COREBOOT_CONFIG=config/coreboot-msi_z690a_ddr5.config
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# MSI PRO Z790-P DDR4 board configuration

export CONFIG_COREBOOT=y
export CONFIG_COREBOOT_VERSION=dasharo_msi
export CONFIG_COREBOOT_VERSION=dasharo_msi_z790
export CONFIG_LINUX_VERSION=6.1.8

CONFIG_COREBOOT_CONFIG=config/coreboot-msi_z790p_ddr4.config
Expand Down
3 changes: 2 additions & 1 deletion boards/UNTESTED_nitropad-ns50/UNTESTED_nitropad-ns50.config
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@
# Dissassembly and Recovery: https://docs.dasharo.com/unified/novacustom/recovery/#ns5x7x-12th-gen

export CONFIG_COREBOOT=y
export CONFIG_COREBOOT_VERSION=dasharo
export CONFIG_COREBOOT_VERSION=dasharo_nv4x
CONFIG_DASHARO_EC=y
export CONFIG_LINUX_VERSION=6.1.8

CONFIG_COREBOOT_CONFIG=config/coreboot-nitropad-ns50.config
Expand Down
2 changes: 1 addition & 1 deletion boards/msi_z790p_ddr5/msi_z790p_ddr5.config
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# MSI PRO Z790-P (DDR5) board configuration

export CONFIG_COREBOOT=y
export CONFIG_COREBOOT_VERSION=dasharo_msi
export CONFIG_COREBOOT_VERSION=dasharo_msi_z790
export CONFIG_LINUX_VERSION=6.1.8

CONFIG_COREBOOT_CONFIG=config/coreboot-msi_z790p_ddr5.config
Expand Down
3 changes: 2 additions & 1 deletion boards/novacustom-nv4x_adl/novacustom-nv4x_adl.config
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@
# Dissassembly and Recovery: https://docs.dasharo.com/unified/novacustom/recovery/#12th-gen

export CONFIG_COREBOOT=y
export CONFIG_COREBOOT_VERSION=dasharo
export CONFIG_COREBOOT_VERSION=dasharo_nv4x
export CONFIG_DASHARO_EC=y
export CONFIG_LINUX_VERSION=6.1.8

CONFIG_COREBOOT_CONFIG=config/coreboot-novacustom-nv4x_adl.config
Expand Down
3 changes: 2 additions & 1 deletion boards/novacustom-v540tu/novacustom-v540tu.config
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@
# ME/CSME for s0ix to work (unsupported by QubesOS when writing those lines) or use Hibernate (Not supported by QubesOS either)

export CONFIG_COREBOOT=y
export CONFIG_COREBOOT_VERSION=dasharo
export CONFIG_COREBOOT_VERSION=dasharo_v56
export CONFIG_DASHARO_EC=y
export CONFIG_LINUX_VERSION=6.1.8

CONFIG_COREBOOT_CONFIG=config/coreboot-novacustom-v540tu.config
Expand Down
3 changes: 2 additions & 1 deletion boards/novacustom-v560tu/novacustom-v560tu.config
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@
# ME/CSME for s0ix to work (unsupported by QubesOS when writing those lines) or use Hibernate (Not supported by QubesOS either)

export CONFIG_COREBOOT=y
export CONFIG_COREBOOT_VERSION=dasharo
export CONFIG_COREBOOT_VERSION=dasharo_v56
export CONFIG_DASHARO_EC=y
export CONFIG_LINUX_VERSION=6.1.8

CONFIG_COREBOOT_CONFIG=config/coreboot-novacustom-v560tu.config
Expand Down
22 changes: 22 additions & 0 deletions config/coreboot-librem_11.config_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
CONFIG_BOOTSPLASH_IMAGE=y
CONFIG_BOOTSPLASH_FILE="@BRAND_DIR@/bootsplash.jpg"
CONFIG_BOOTSPLASH_CONVERT=y
CONFIG_BOOTSPLASH_CONVERT_QUALITY=70
CONFIG_VENDOR_PURISM=y
CONFIG_CBFS_SIZE=0xC00000
CONFIG_IFD_BIN_PATH="3rdparty/purism-blobs/mainboard/purism/librem_jsl/librem_11/flashdescriptor.bin"
CONFIG_ME_BIN_PATH="3rdparty/purism-blobs/mainboard/purism/librem_jsl/librem_11/me.bin"
CONFIG_HAVE_IFD_BIN=y
CONFIG_BOARD_PURISM_LIBREM_11=y
CONFIG_LINUX_COMMAND_LINE="intel_iommu=igfx_off quiet loglevel=2"
CONFIG_FSP_M_FILE="3rdparty/purism-blobs/mainboard/purism/librem_jsl/librem_11/fspm.bin"
CONFIG_FSP_S_FILE="3rdparty/purism-blobs/mainboard/purism/librem_jsl/librem_11/fsps.bin"
CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
CONFIG_CPU_UCODE_BINARIES="3rdparty/purism-blobs/mainboard/purism/librem_jsl/cpu_microcode_blob.bin"
CONFIG_HAVE_ME_BIN=y
CONFIG_BOOTSPLASH=y
CONFIG_ADD_FSP_BINARIES=y
# CONFIG_DRIVERS_MTK_WIFI is not set
CONFIG_PAYLOAD_LINUX=y
CONFIG_PAYLOAD_FILE="@BOARD_BUILD_DIR@/bzImage"
CONFIG_LINUX_INITRD="@BOARD_BUILD_DIR@/initrd.cpio.xz"
23 changes: 23 additions & 0 deletions config/coreboot-librem_13v2.config_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
CONFIG_BOOTSPLASH_IMAGE=y
CONFIG_BOOTSPLASH_FILE="@BRAND_DIR@/bootsplash.jpg"
CONFIG_BOOTSPLASH_CONVERT=y
CONFIG_BOOTSPLASH_CONVERT_QUALITY=70
CONFIG_VENDOR_PURISM=y
CONFIG_LINEAR_FRAMEBUFFER_MAX_HEIGHT=2160
CONFIG_LINEAR_FRAMEBUFFER_MAX_WIDTH=3840
# CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="3rdparty/purism-blobs/mainboard/purism/librem_skl/descriptor.bin"
CONFIG_ME_BIN_PATH="3rdparty/purism-blobs/mainboard/purism/librem_skl/me.bin"
CONFIG_HAVE_IFD_BIN=y
CONFIG_BOARD_PURISM_LIBREM13_V2=y
CONFIG_TPM_MEASURED_BOOT=y
CONFIG_LINUX_COMMAND_LINE="quiet loglevel=2"
CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
CONFIG_CPU_UCODE_BINARIES="3rdparty/purism-blobs/mainboard/purism/librem_skl/cpu_microcode_blob.bin"
CONFIG_HAVE_ME_BIN=y
CONFIG_GENERIC_LINEAR_FRAMEBUFFER=y
CONFIG_BOOTSPLASH=y
# CONFIG_DRIVERS_MTK_WIFI is not set
CONFIG_PAYLOAD_LINUX=y
CONFIG_PAYLOAD_FILE="@BOARD_BUILD_DIR@/bzImage"
CONFIG_LINUX_INITRD="@BOARD_BUILD_DIR@/initrd.cpio.xz"
23 changes: 23 additions & 0 deletions config/coreboot-librem_13v4.config_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
CONFIG_BOOTSPLASH_IMAGE=y
CONFIG_BOOTSPLASH_FILE="@BRAND_DIR@/bootsplash.jpg"
CONFIG_BOOTSPLASH_CONVERT=y
CONFIG_BOOTSPLASH_CONVERT_QUALITY=70
CONFIG_VENDOR_PURISM=y
CONFIG_LINEAR_FRAMEBUFFER_MAX_HEIGHT=2160
CONFIG_LINEAR_FRAMEBUFFER_MAX_WIDTH=3840
# CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="3rdparty/purism-blobs/mainboard/purism/librem_kbl/descriptor.bin"
CONFIG_ME_BIN_PATH="3rdparty/purism-blobs/mainboard/purism/librem_kbl/me.bin"
CONFIG_HAVE_IFD_BIN=y
CONFIG_BOARD_PURISM_LIBREM13_V4=y
CONFIG_TPM_MEASURED_BOOT=y
CONFIG_LINUX_COMMAND_LINE="quiet loglevel=2"
CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
CONFIG_CPU_UCODE_BINARIES="3rdparty/purism-blobs/mainboard/purism/librem_kbl/cpu_microcode_blob.bin"
CONFIG_HAVE_ME_BIN=y
CONFIG_GENERIC_LINEAR_FRAMEBUFFER=y
CONFIG_BOOTSPLASH=y
# CONFIG_DRIVERS_MTK_WIFI is not set
CONFIG_PAYLOAD_LINUX=y
CONFIG_PAYLOAD_FILE="@BOARD_BUILD_DIR@/bzImage"
CONFIG_LINUX_INITRD="@BOARD_BUILD_DIR@/initrd.cpio.xz"
24 changes: 24 additions & 0 deletions config/coreboot-librem_14.config_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
CONFIG_BOOTSPLASH_IMAGE=y
CONFIG_BOOTSPLASH_FILE="@BRAND_DIR@/bootsplash.jpg"
CONFIG_BOOTSPLASH_CONVERT=y
CONFIG_BOOTSPLASH_CONVERT_QUALITY=70
CONFIG_VENDOR_PURISM=y
CONFIG_CBFS_SIZE=0xC00000
CONFIG_LINEAR_FRAMEBUFFER_MAX_HEIGHT=2160
CONFIG_LINEAR_FRAMEBUFFER_MAX_WIDTH=3840
# CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="3rdparty/purism-blobs/mainboard/purism/librem_cnl/librem_14/flashdescriptor.bin"
CONFIG_ME_BIN_PATH="3rdparty/purism-blobs/mainboard/purism/librem_cnl/librem_14/me.bin"
CONFIG_HAVE_IFD_BIN=y
CONFIG_BOARD_PURISM_LIBREM_14=y
CONFIG_TPM_MEASURED_BOOT=y
CONFIG_LINUX_COMMAND_LINE="quiet loglevel=2"
CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
CONFIG_CPU_UCODE_BINARIES="3rdparty/purism-blobs/mainboard/purism/librem_cnl/cpu_microcode_blob.bin"
CONFIG_HAVE_ME_BIN=y
CONFIG_GENERIC_LINEAR_FRAMEBUFFER=y
CONFIG_BOOTSPLASH=y
# CONFIG_DRIVERS_MTK_WIFI is not set
CONFIG_PAYLOAD_LINUX=y
CONFIG_PAYLOAD_FILE="@BOARD_BUILD_DIR@/bzImage"
CONFIG_LINUX_INITRD="@BOARD_BUILD_DIR@/initrd.cpio.xz"
23 changes: 23 additions & 0 deletions config/coreboot-librem_15v3.config_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
CONFIG_BOOTSPLASH_IMAGE=y
CONFIG_BOOTSPLASH_FILE="@BRAND_DIR@/bootsplash.jpg"
CONFIG_BOOTSPLASH_CONVERT=y
CONFIG_BOOTSPLASH_CONVERT_QUALITY=70
CONFIG_VENDOR_PURISM=y
CONFIG_LINEAR_FRAMEBUFFER_MAX_HEIGHT=2160
CONFIG_LINEAR_FRAMEBUFFER_MAX_WIDTH=3840
# CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="3rdparty/purism-blobs/mainboard/purism/librem_skl/descriptor.bin"
CONFIG_ME_BIN_PATH="3rdparty/purism-blobs/mainboard/purism/librem_skl/me.bin"
CONFIG_HAVE_IFD_BIN=y
CONFIG_BOARD_PURISM_LIBREM15_V3=y
CONFIG_TPM_MEASURED_BOOT=y
CONFIG_LINUX_COMMAND_LINE="quiet loglevel=2"
CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
CONFIG_CPU_UCODE_BINARIES="3rdparty/purism-blobs/mainboard/purism/librem_skl/cpu_microcode_blob.bin"
CONFIG_HAVE_ME_BIN=y
CONFIG_GENERIC_LINEAR_FRAMEBUFFER=y
CONFIG_BOOTSPLASH=y
# CONFIG_DRIVERS_MTK_WIFI is not set
CONFIG_PAYLOAD_LINUX=y
CONFIG_PAYLOAD_FILE="@BOARD_BUILD_DIR@/bzImage"
CONFIG_LINUX_INITRD="@BOARD_BUILD_DIR@/initrd.cpio.xz"
23 changes: 23 additions & 0 deletions config/coreboot-librem_15v4.config_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
CONFIG_BOOTSPLASH_IMAGE=y
CONFIG_BOOTSPLASH_FILE="@BRAND_DIR@/bootsplash.jpg"
CONFIG_BOOTSPLASH_CONVERT=y
CONFIG_BOOTSPLASH_CONVERT_QUALITY=70
CONFIG_VENDOR_PURISM=y
CONFIG_LINEAR_FRAMEBUFFER_MAX_HEIGHT=2160
CONFIG_LINEAR_FRAMEBUFFER_MAX_WIDTH=3840
# CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="3rdparty/purism-blobs/mainboard/purism/librem_kbl/descriptor.bin"
CONFIG_ME_BIN_PATH="3rdparty/purism-blobs/mainboard/purism/librem_kbl/me.bin"
CONFIG_HAVE_IFD_BIN=y
CONFIG_BOARD_PURISM_LIBREM15_V4=y
CONFIG_TPM_MEASURED_BOOT=y
CONFIG_LINUX_COMMAND_LINE="quiet loglevel=2"
CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
CONFIG_CPU_UCODE_BINARIES="3rdparty/purism-blobs/mainboard/purism/librem_kbl/cpu_microcode_blob.bin"
CONFIG_HAVE_ME_BIN=y
CONFIG_GENERIC_LINEAR_FRAMEBUFFER=y
CONFIG_BOOTSPLASH=y
# CONFIG_DRIVERS_MTK_WIFI is not set
CONFIG_PAYLOAD_LINUX=y
CONFIG_PAYLOAD_FILE="@BOARD_BUILD_DIR@/bzImage"
CONFIG_LINUX_INITRD="@BOARD_BUILD_DIR@/initrd.cpio.xz"
25 changes: 25 additions & 0 deletions config/coreboot-librem_l1um.config_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
CONFIG_USE_BLOBS=y
CONFIG_MEASURED_BOOT=y
CONFIG_VENDOR_PURISM=y
CONFIG_CBFS_SIZE=0xC00000
# CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_MAINBOARD_SMBIOS_PRODUCT_NAME="Librem Server L1UM"
CONFIG_IFD_BIN_PATH="3rdparty/purism-blobs/mainboard/purism/librem_l1um/flashdescriptor.bin"
CONFIG_ME_BIN_PATH="3rdparty/purism-blobs/mainboard/purism/librem_l1um/me.bin"
CONFIG_HAVE_IFD_BIN=y
CONFIG_BOARD_PURISM_LIBREM_L1UM=y
CONFIG_NO_POST=y
CONFIG_LINUX_COMMAND_LINE="quiet loglevel=3"
CONFIG_PCIEXP_COMMON_CLOCK=y
CONFIG_FSP_EHCI1_ENABLE=y
CONFIG_FSP_EHCI2_ENABLE=y
CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
CONFIG_CPU_UCODE_BINARIES="3rdparty/purism-blobs/mainboard/purism/librem_l1um/cpu_microcode_blob.bin"
CONFIG_HAVE_ME_BIN=y
CONFIG_NO_GFX_INIT=y
CONFIG_DRIVERS_GENERIC_CBFS_SERIAL=y
CONFIG_USER_TPM1=y
# CONFIG_CONSOLE_SERIAL is not set
CONFIG_PAYLOAD_LINUX=y
CONFIG_PAYLOAD_FILE="@BOARD_BUILD_DIR@/bzImage"
CONFIG_LINUX_INITRD="@BOARD_BUILD_DIR@/initrd.cpio.xz"
22 changes: 22 additions & 0 deletions config/coreboot-librem_l1um_v2.config_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
CONFIG_BOOTSPLASH_IMAGE=y
CONFIG_BOOTSPLASH_FILE="@BRAND_DIR@/bootsplash.jpg"
CONFIG_BOOTSPLASH_CONVERT=y
CONFIG_BOOTSPLASH_CONVERT_QUALITY=70
CONFIG_VENDOR_PURISM=y
# CONFIG_CONSOLE_SERIAL is not set
# CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="3rdparty/purism-blobs/mainboard/purism/librem_l1um_v2/flashdescriptor.bin"
CONFIG_ME_BIN_PATH="3rdparty/purism-blobs/mainboard/purism/librem_l1um_v2/me.bin"
CONFIG_HAVE_IFD_BIN=y
CONFIG_BOARD_PURISM_LIBREM_L1UM_V2=y
CONFIG_TPM_MEASURED_BOOT=y
CONFIG_LINUX_COMMAND_LINE="quiet loglevel=2"
CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
CONFIG_CPU_UCODE_BINARIES="3rdparty/purism-blobs/mainboard/purism/librem_l1um_v2/cpu_microcode_blob.bin"
CONFIG_HAVE_ME_BIN=y
CONFIG_GENERIC_LINEAR_FRAMEBUFFER=y
CONFIG_BOOTSPLASH=y
# CONFIG_DRIVERS_MTK_WIFI is not set
CONFIG_PAYLOAD_LINUX=y
CONFIG_PAYLOAD_FILE="@BOARD_BUILD_DIR@/bzImage"
CONFIG_LINUX_INITRD="@BOARD_BUILD_DIR@/initrd.cpio.xz"
23 changes: 23 additions & 0 deletions config/coreboot-librem_mini.config_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
CONFIG_USE_OPTION_TABLE=y
CONFIG_BOOTSPLASH_IMAGE=y
CONFIG_BOOTSPLASH_FILE="@BRAND_DIR@/bootsplash.jpg"
CONFIG_BOOTSPLASH_CONVERT=y
CONFIG_BOOTSPLASH_CONVERT_QUALITY=70
CONFIG_VENDOR_PURISM=y
CONFIG_CBFS_SIZE=0xC00000
CONFIG_INTEL_GMA_VBT_FILE="3rdparty/purism-blobs/mainboard/purism/librem_cnl/mini/vbt.bin"
# CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_IFD_BIN_PATH="3rdparty/purism-blobs/mainboard/purism/librem_cnl/mini/flashdescriptor.bin"
CONFIG_ME_BIN_PATH="3rdparty/purism-blobs/mainboard/purism/librem_cnl/mini/me.bin"
CONFIG_HAVE_IFD_BIN=y
CONFIG_BOARD_PURISM_LIBREM_MINI=y
CONFIG_LINUX_COMMAND_LINE="quiet loglevel=2"
CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
CONFIG_CPU_UCODE_BINARIES="3rdparty/purism-blobs/mainboard/purism/librem_cnl/cpu_microcode_blob.bin"
CONFIG_HAVE_ME_BIN=y
CONFIG_GENERIC_LINEAR_FRAMEBUFFER=y
CONFIG_BOOTSPLASH=y
# CONFIG_DRIVERS_MTK_WIFI is not set
CONFIG_PAYLOAD_LINUX=y
CONFIG_PAYLOAD_FILE="@BOARD_BUILD_DIR@/bzImage"
CONFIG_LINUX_INITRD="@BOARD_BUILD_DIR@/initrd.cpio.xz"
Loading