The wiki is being retired!
Documentation is now handled by the same processes we use for code: Add something to the Documentation/ directory in the coreboot repo, and it will be rendered to https://doc.coreboot.org/. Contributions welcome!
The Chrome EC is used in almost all Chrome OS devices, and an increasing number of accessories, like Google's Type C chargers. It is based on the Chromium EC code base.
Building the Chrome EC
Building in the ChromiumOS environment
Building outside of the ChromiumOS chroot
You will need:
- GNU Make 4.1 (older versions are having trouble with the Makefiles)
- an ARM cross compiler (I used coreboot's armv7-a-eabi- toolchain)
Patching up the code:
$ sudo aptitude install libftdi-dev $ git clone https://chromium.googlesource.com/chromiumos/platform/vboot_reference $ cd vboot_reference $ make [..] $ cp build/futility/futility ~/bin $ cd .. $ git clone https://chromium.googlesource.com/chromiumos/platform/ec [..] $ cd ec $ CROSS_COMPILE=armv7-a-eabi- HOST_CROSS_COMPILE= make BOARD=chell [..] $
Build all boards:
ls -1 board/ | grep -v OWNERS | grep -v host | \ while read n; do echo "**************** $n" CROSS_COMPILE=armv7-a-eabi- HOST_CROSS_COMPILE= make BOARD=$n -j done
Targets not building
- cr50 (make issue with -C)
- glados,kunimitsu,wheatley: `memset' referenced in section `.text' of /tmp/cc3Dv6dh.ltrans2.ltrans.o: defined in discarded section `.text' of build/wheatley/RO/common/util.o (symbol from plugin)
- it8380dev: armv7-a-eabi-gcc: error: unrecognized argument in option '-march=v3m'
- Not real targets, but in board/: host, OWNERS