Skip to content

system76/ec

Repository files navigation

System76 EC

System76 EC is a GPLv3 licensed embedded controller firmware for System76 laptops.

Documentation

Quickstart

Install dependencies using the provided script.

./scripts/deps.sh

If rustup was installed as part of this, then the correct cargo will not be available in the running session. Start a new shell session or source the env file to update PATH.

source $HOME/.cargo/env

Then build the firmware for your laptop model.

make BOARD=system76/<model>

See Flashing for how to use the new firmware image.

Releases

The EC firmware itself does not have tagged releases. Any commit of this repo may be used as a part of a System76 Open Firmware release.

In official releases the EC shares the same version as the BIOS firmware. Run the follow command from firmware-open to determine the corresponding EC commit for a release.

git ls-tree <release_hash> ec

Legal

System76 EC is copyright System76 and contributors.

System76 EC firmware is made available under the terms of the GNU General Public License, version 3. See LICENSE for details.

  • firmware: GPL-3.0-only
  • ecflash: LGPL-2.1-or-later
  • ecsim: MIT
  • ectool: MIT

Datasheets for the ITE embedded controllers used in System76 laptops cannot be shared outside of company. (However, the IT81202E datasheet is publicly available. While it uses a different core, a significant portion of the register information is the same as IT85878E/IT5570E.)