Difference between revisions of "Firmware"

From GalliumOS Wiki
Jump to: navigation, search
Line 1: Line 1:
 
The stock/factory firmware on some Chromebooks and Chromeboxes contains a legacy boot payload (RW_LEGACY) capable of running Linux out of the box; however, many ChromeOS devices, particularly those with BayTrail/Braswell CPUs, do not include this capability stock and must use a 3rd party firmware update in order to run GalliumOS (or any other OS).
 
The stock/factory firmware on some Chromebooks and Chromeboxes contains a legacy boot payload (RW_LEGACY) capable of running Linux out of the box; however, many ChromeOS devices, particularly those with BayTrail/Braswell CPUs, do not include this capability stock and must use a 3rd party firmware update in order to run GalliumOS (or any other OS).
  
Three types of custom firmware updates are available, which can fix factory firmware bugs and/or add the ability to boot Linux to those models that otherwise cannot:  
+
Three types of custom firmware updates are available (though not all types are available for every device):  
  
 
# '''RW_LEGACY'''
 
# '''RW_LEGACY'''
#* Updates/replaces the stock legacy boot payload (SeaBIOS) included on many models that supplements the ChromeOS / secure boot payload
+
#* Updates/replaces the stock legacy boot payload (SeaBIOS) included on many models; supplements the ChromeOS / secure boot payload (BOOT_STUB)
#* Leaves all stock functionality intact, including the white "OS verification is OFF" screen
+
#* Leaves all stock functionality intact, including the developer mode boot (white "OS verification is OFF") screen
 
#* Allows device to dual-boot GalliumOS alongside ChromeOS
 
#* Allows device to dual-boot GalliumOS alongside ChromeOS
 
#* Does not require disabling the firmware write-protect
 
#* Does not require disabling the firmware write-protect
Line 11: Line 11:
 
#* On some models, includes bugfixes and enables additional functionality
 
#* On some models, includes bugfixes and enables additional functionality
 
# '''BOOT_STUB'''
 
# '''BOOT_STUB'''
#* Replaces the ChromeOS payload with a legacy boot payload (SeaBIOS)
+
#* Replaces the ChromeOS verified boot payload with a legacy boot payload (SeaBIOS)
#* Bypasses the white "OS verification is OFF" screen
+
#* Removes the developer mode boot (white "OS verification is OFF") screen
 
#* Requires the firmware write-protect screw to be removed
 
#* Requires the firmware write-protect screw to be removed
#* Removes the ability to run ChromeOS natively, creating a small risk of bricking your device  
+
#* Removes the ability to run ChromeOS, creating a small risk of bricking your device  
#* Leaves the “REFRESH + POWER” functionality of the stock ROM intact
+
#* Leaves the recovery mode (REFRESH + POWER) functionality of the stock ROM intact
 
#** If you engage this key sequence, device will reboot and try to run ChromeOS Recovery (which will fail)
 
#** If you engage this key sequence, device will reboot and try to run ChromeOS Recovery (which will fail)
 
#** This process will repeat on every boot until you disassemble the device and briefly disconnect the battery
 
#** This process will repeat on every boot until you disassemble the device and briefly disconnect the battery
 
# '''Full Firmware / ROM'''
 
# '''Full Firmware / ROM'''
 
#* A complete firmware image which replaces the hardware init component (coreboot) and payload components (BOOT_STUB, RW_LEGACY) of the stock firmware with updated and/or customized versions of coreboot and SeaBIOS
 
#* A complete firmware image which replaces the hardware init component (coreboot) and payload components (BOOT_STUB, RW_LEGACY) of the stock firmware with updated and/or customized versions of coreboot and SeaBIOS
#* Removes the white "OS verification is OFF" screen
+
#* Removes the developer mode boot (white "OS verification is OFF") screen
#* Removes the ability to run ChromeOS natively, creating a small risk of bricking your device
+
#* Removes the ability to run ChromeOS, creating a small risk of bricking your device
 
#* Offers the best support for booting all OSes besides ChromeOS (including Windows).
 
#* Offers the best support for booting all OSes besides ChromeOS (including Windows).
 
#* On many models, adds full hardware support for virtualization (vmx / VT-x)
 
#* On many models, adds full hardware support for virtualization (vmx / VT-x)
#* Fixes many bugs and/or idiosyncrasies associated with the stock firmware (but potentially adds new ones)
+
#* Fixes many bugs and/or idiosyncrasies associated with the stock firmware (but could potentially add new ones)
 +
#* Essentially turns your ChromeOS device into a "regular" PC / laptop
  
  

Revision as of 16:11, 19 March 2016

The stock/factory firmware on some Chromebooks and Chromeboxes contains a legacy boot payload (RW_LEGACY) capable of running Linux out of the box; however, many ChromeOS devices, particularly those with BayTrail/Braswell CPUs, do not include this capability stock and must use a 3rd party firmware update in order to run GalliumOS (or any other OS).

Three types of custom firmware updates are available (though not all types are available for every device):

  1. RW_LEGACY
    • Updates/replaces the stock legacy boot payload (SeaBIOS) included on many models; supplements the ChromeOS / secure boot payload (BOOT_STUB)
    • Leaves all stock functionality intact, including the developer mode boot (white "OS verification is OFF") screen
    • Allows device to dual-boot GalliumOS alongside ChromeOS
    • Does not require disabling the firmware write-protect
    • Carries zero risk of bricking the device
    • On some models, includes bugfixes and enables additional functionality
  2. BOOT_STUB
    • Replaces the ChromeOS verified boot payload with a legacy boot payload (SeaBIOS)
    • Removes the developer mode boot (white "OS verification is OFF") screen
    • Requires the firmware write-protect screw to be removed
    • Removes the ability to run ChromeOS, creating a small risk of bricking your device
    • Leaves the recovery mode (REFRESH + POWER) functionality of the stock ROM intact
      • If you engage this key sequence, device will reboot and try to run ChromeOS Recovery (which will fail)
      • This process will repeat on every boot until you disassemble the device and briefly disconnect the battery
  3. Full Firmware / ROM
    • A complete firmware image which replaces the hardware init component (coreboot) and payload components (BOOT_STUB, RW_LEGACY) of the stock firmware with updated and/or customized versions of coreboot and SeaBIOS
    • Removes the developer mode boot (white "OS verification is OFF") screen
    • Removes the ability to run ChromeOS, creating a small risk of bricking your device
    • Offers the best support for booting all OSes besides ChromeOS (including Windows).
    • On many models, adds full hardware support for virtualization (vmx / VT-x)
    • Fixes many bugs and/or idiosyncrasies associated with the stock firmware (but could potentially add new ones)
    • Essentially turns your ChromeOS device into a "regular" PC / laptop


Check Hardware Compatibility and the appropriate Support page to determine the status of your model.

There are several custom firmware options available, depending on your Chromebook/box model class, and the features you require:

Firmware Provider / Link ARM Pineview Sandy/Ivy Bridge Haswell Broadwell Bay Trail Braswell notes
CoolStar No No No Full Firmware (Chromebooks) Full Firmware (Chromebooks) No No • Fixes factory firmware bugs
• Boots Linux, Mac OS X, and Windows!
• Install Guide: Haswell, Broadwell
Firmware build scripts
johnlewis.ie No No Full Firmware, BOOT_STUB (all) Full Firmware, BOOT_STUB, RW_LEGACY (all) RW_LEGACY (all) BOOT_STUB (all) No • Fixes factory firmware bugs
• General purpose firmware for Linux
• Single script works for all supported models
• Firmware build scripts/configs not published
MattDevo
(MrChromebox)
No No Full Firmware (Chromeboxes) Full Firmware (Chromeboxes), RW_LEGACY (all) Full Firmware (Chromeboxes), RW_LEGACY (all) RW_LEGACY (all) No • Fixes factory firmware bugs
• Headless boot support for servers
• PXE booting support
• Supports integration of Kodi Media Center
Firmware source/build scripts and payload source

Additions and corrections, please let us know: contact@galliumos.org