Tim Crawford 43af66c388 docs: Extra info for flashing
- Add note why first boot after flashing takes so long
- Add note about power off when flashing EC
- Add note on identifying the BIOS chip
2020-08-31 11:19:27 -06:00
2020-08-13 13:00:47 -06:00
2020-08-24 14:49:18 -06:00
2020-08-31 11:19:27 -06:00
2020-08-19 13:10:22 -06:00
2020-08-13 13:00:47 -06:00
2020-01-23 12:27:15 -07:00
2019-10-10 21:15:03 -06:00
2020-06-11 13:06:27 -06:00
2020-06-26 11:36:20 -06:00
2020-08-14 10:19:49 -06:00
2020-08-13 13:00:47 -06:00
2020-08-13 13:00:47 -06:00
2019-10-04 17:28:41 -06:00
2020-04-07 14:45:01 -06:00
2020-08-05 14:59:20 -06:00
2019-11-04 15:44:41 -07:00

System76 Open Firmware

An open source distribution of firmware utilizing coreboot, EDK2, and System76 firmware applications.

Supported models

These models are supported and will receive updates through the firmware manager:

  • bonw14
  • darp6
  • galp4
  • lemp9
  • oryp6

Other models may be in development or available without support, and can be seen in the models/ directory.

If the device becomes bricked it will require restoring the current firmware using an external programmer. See flashing for details.

Schematics

Board schematics can be provided on request by sending an email to firmware@system76.com with the subject line "Schematics for model", where model is the name of a directory in the models/ directory, such as darp6.

You may not share these without explicit permission from System76.

Dependencies

Install toolchain

./scripts/deps.sh

Load Rust environment (or optionally reboot)

source ~/.cargo/env

Build firmware, replace qemu with your model (look in the models directory for examples)

./scripts/build.sh qemu

Emulate firmware, only available after building the qemu model

./scripts/qemu.sh

Intel Management Engine

The IME is present, but disabled. This is accomplished by sending a HECI command on boot, before RAM is initalized. This puts the IME in a state similar to setting the HAP bit on earlier platforms. me_cleaner is not used as it does not support IME version 14.0.

Contents

Description
Languages
C 93.5%
Shell 5.7%
Rust 0.5%
Dockerfile 0.3%