From coreboot
Revision as of 21:50, 18 July 2016 by Nico (talk | contribs) (fix typo)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Flashing your own coreboot-version and Payload onto your device is do-able, but requires some hardware preparation and ignorance in warning messages.


A good place to start is the Chromium site. They have guides howto set your Chromebook into developer-mode and howto disassemble your device.

Both things will be necessary, if you want to flash your own version of coreboot onto your Chromebook (in-system). It is necessary to close a circuit on the motherboard via either a switch, jumper or screw to disable the write-protection of the spi chip. And to use the flashing tool flashrom in Chrome OS, you have to be in the developer-mode. If you already installed a Gnu/Linux-system or likely you can also use the flashrom from there (but then you would be in developer-mode anyway).

Note: The first three Chromebooks that were made are not supported by coreboot, but flashrom should be working. Mario, Alex and ZGB are running Insyde H2C UEFI. Snow has das U-Boot natively installed, but a coreboot port is available. All the others come shipped with coreboot.

Release date Manufacturer Model Project Code Name Close cicuit via Location for Jumper/Screw SPI-Chip
May 2012 Samsung Series 3 Chromebox Stumpy Jumper between the Battery and Ram
May 2012 Samsung Series 550 Chromebook: Lumpy Jumper between the Battery and Ram
October 2012 Samsung ARM Chromebook Snow (aka Daisy) Screw next to usb3.0-port
November 2012 Acer C7 Chromebook Parrot Jumper between CPU and Fan under plastic
January 2013 Lenovo Thinkpad X131e Chromebook Stout  ?
February 2013 HP Pavilion 14 Chromebook Butterfly Switch rightside behind the usb-ports
February 2013 Google Chromebook Pixel Link Screw next to front-most USB connector
September 2014 Toshiba Chromebook 2 Swanky Screw + Heat shield Remove screw and prevent heat shield from completing short as well.

Images: (1) and (2)

Winbond "W25Q64.W"

General Hardware Preperation

Use the disassembly guides to disassemble your Chromebook till you see the place were you can put on a jumper, screw in a bolt or flip a switch. Check out the pictures in the disassembly guides to find the right spot. Either screw, switch or plug on now. For example in Lumpy and Stumpy you have to put a jumper on place between the Battery and Ram next to the Keyboard-Connector. Now assemble again (follow the guide). Now you are ready to flash your own coreboot-version onto your Chromebook.

Building your own coreboot-version and Payload

First, you cannot do that inside the Chrome OS. Use your GNU/Linux-system and follow the Build HOWTO. There is also a model specific 550 Chromebook Build HOWTO.

Firmware Chips

The firmware ROMs are highlighted on the pictures of the disassembly guides:

Series 5 550 Chromebook (Lumpy) - Two firmware ROMs (one for EC, one for CPU+PCH) are located next to where the heat pipe meets the exhaust manifold. CPU+PCH firmware ROM is 8MB, EC firmware ROM is 256KB.

Samsung XE303CE ARM Chromebook (snow) - AP firmware ROM is located next next to USB 2.0 port. The EC firmware ROM is embedded in the EC itself and can only be accessed through the mainboard debug port. AP firmware ROM is 4MB.

Acer C7 Chromebook (parrot) - Firmware ROMs are underneath the keyboard, left of the touchpad. CPU+PCH firmware ROM is 8MB, EC firmware ROM is 256KB.

Lenovo X131E (Stout) - CPU+PCH actually has two firmware ROMs, but only one is used. The are located next to the DRAM slots on the bottom of the board. The one which is used is 8MB, the unused one is 4MB. The EC ROM is on the top-side next to the EC (underneath the keyboard, to the right of where the touchpad sits) and is 1MB.

HP Pavillion 14 (Butterfly) - CPU+PCH firmware ROM is on the bottom near the SD card slot and is 8MB. The EC firmware ROM is next to the EC, which is on the top side to the right of where the touchpad sits. The EC firmware ROM is 512KB.

Chromebook Pixel (Link) - CPU+PCH firmware ROM next to mini-displayport connector. The EC firmware ROM is embedded in the EC itself and can only be accessed through the mainboard debug port. CPU+PCH firmware ROM is 8MB.

Recovery / External Programming

Ok, you got your Chromebook into a messed up state somehow, but on the other hand this will give you the opportunity to learn external chip-programming, so cheer-up. First you will need to locate the SPI-Chip. If you done that you will need an external flashrom programmer (for example the open-hardware tool Bus Pirate). At the moment ask at the coreboot/flashrom mailing list for further details.