libreboot

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

commit 6be3490d4d751eaa4af3823d3fd6eacb55a4b9bf
parent 4d81de68316cae4d91050b829e8a795cefbfebc7
Author: Paul Kocialkowski <contact@paulk.fr>
Date:   Fri,  6 Nov 2015 19:10:44 +0100

Replace Chromebook mentions with CrOS, that is more generic

Not all CrOS devices are Chromebooks (laptops) or run on ARM, not all RK3288
CrOS devices are Chromebooks, either.

We want to support more CrOS devices, including some that are not Chromebooks,
such as the ASUS Chromebit!

Signed-off-by: Paul Kocialkowski <contact@paulk.fr>

Diffstat:
docs/depthcharge/index.html | 10+++++-----
docs/gnulinux/grub_boot_installer.html | 2+-
docs/hcl/c201.html | 22+++++++++++-----------
docs/install/c201.html | 2+-
docs/tasks.html | 4++--
resources/libreboot/install/depthcharge/chromebook-flash-replace | 96-------------------------------------------------------------------------------
resources/libreboot/install/depthcharge/cros-flash-replace | 96+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
resources/libreboot/patch/chromebook/0001-chromeos-Allow-disabling-vboot-firmware-verification.patch | 98-------------------------------------------------------------------------------
resources/libreboot/patch/cros/0001-chromeos-Allow-disabling-vboot-firmware-verification.patch | 98+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
resources/scripts/helpers/build/roms/withdepthcharge | 2+-
resources/scripts/helpers/download/coreboot | 4++--
11 files changed, 217 insertions(+), 217 deletions(-)

diff --git a/docs/depthcharge/index.html b/docs/depthcharge/index.html @@ -26,7 +26,7 @@ </p> <ul> - <li><a href="#chromebook_security_model">Chromebook security model</a></li> + <li><a href="#cros_security_model">CrOS security model</a></li> <li><a href="#developer_mode_screen">Developer mode screen</a> <ul> <li><a href="#holding_developer_mode_screen">Holding the developer mode screen</li> @@ -49,18 +49,18 @@ <div class="section"> - <h1 id="chromebook_security_model">Chromebook security model</h1> + <h1 id="cros_security_model">CrOS security model</h1> <p> - Chromebooks implement a strict security model to ensure that these devices do not become compromised, + CrOS (Chromium OS/Chrome OS) devices such as Chromebooks implement a strict security model to ensure that these devices do not become compromised, that is implemented as the verified boot (vboot) reference, most of which is executed within depthcharge. - A detailed overview of the Chromebook security model is available on the dedicated page. + A detailed overview of the CrOS security model is available on the dedicated page. </p> <div class="subsection"> <p> - In spite of the Chromebook security model, depthcharge won't allow booting kernels without verifying their signature and booting from external media or legacy payload unless explicitly allowed: see <a href="#configuring_verified_boot_parameters">configuring verified boot parameters</a>. + In spite of the CrOS security model, depthcharge won't allow booting kernels without verifying their signature and booting from external media or legacy payload unless explicitly allowed: see <a href="#configuring_verified_boot_parameters">configuring verified boot parameters</a>. </p> </div> diff --git a/docs/gnulinux/grub_boot_installer.html b/docs/gnulinux/grub_boot_installer.html @@ -34,7 +34,7 @@ <div class="section"> <p> - <b>This section is only for the *GRUB* payload. For depthcharge (used on ARM chromebooks in libreboot), instructions + <b>This section is only for the GRUB payload. For depthcharge (used on CrOS devices in libreboot), instructions have yet to be written in the libreboot documentation.</b> </p> </div> diff --git a/docs/hcl/c201.html b/docs/hcl/c201.html @@ -17,7 +17,7 @@ <h1 id="pagetop">ASUS Chromebook C201</h1> <p> - This is a chromebook, using the Rockchip RK3288 SoC. It uses + This is a Chromebook, using the Rockchip RK3288 SoC. It uses an ARM CPU, and has free EC firmware (unlike some other laptops). More RK3288-based laptops will be added to libreboot at a later date. </p> @@ -51,7 +51,7 @@ <div class="section"> <ul> - <li><a href="#googlesintent">Google's intent with Chromebooks</a></li> + <li><a href="#googlesintent">Google's intent with CrOS devices</a></li> <li><a href="#os">Considerations about ChromeOS and free operating systems</a></li> <li><a href="#videoblobs">Caution: Video acceleration requires a non-free blob, software rendering can be used instead.</a></li> <li><a href="#wifiblobs">Caution: WiFi requires a non-free blob, a USB dongle can be used instead.</a></li> @@ -63,17 +63,17 @@ </div> <div class="section"> - <h1 id="googlesintent">Google's intent with Chromebooks</h1> + <h1 id="googlesintent">Google's intent with CrOS devices</h1> <p> - Chromebooks were not designed with the intent of bringing more freedom to users. - However, Chromebooks run with a lot of free software at the boot software and embedded controller levels, + CrOS (Chromium OS/Chrome OS) devices, such as Chromebooks, were not designed with the intent of bringing more freedom to users. + However, they run with a lot of free software at the boot software and embedded controller levels, since free software gives Google enough flexibility to optimize various aspects such as boot time - and most importantly, to implement the Chromebook security system, that involves various aspects of the software. + and most importantly, to implement the CrOS security system, that involves various aspects of the software. Google does hire a lot of Coreboot developers, who are generally friendly to the free software movement and try to be good members of the free software community, by contributing code back. </p> <p> - Chromebooks are designed (from the factory) to actually coax the user into using + CrOS devices are designed (from the factory) to actually coax the user into using <a href="https://www.gnu.org/philosophy/who-does-that-server-really-serve.en.html">proprietary web services</a> (SaaSS) that invade the user's privacy (ChromeOS is literally just the Google Chrome browser when you boot up, itself proprietary and comes with proprietary add-ons like flash. It's only intended for SaaSS, not actual, real computing). @@ -101,7 +101,7 @@ <h2>No FSF-endorsed distros available</h2> <p> The FSF has a <a href="https://www.gnu.org/distros/free-distros.html">list of distributions</a> that are 100% free software. None of these - are confirmed to work on ARM chromebooks yet. Parabola looks hopeful: + are confirmed to work on ARM CrOS devices yet. Parabola looks hopeful: <a href="https://www.parabola.nu/news/parabola-supports-armv7/">https://www.parabola.nu/news/parabola-supports-armv7/</a> </p> <p> @@ -199,7 +199,7 @@ <h1 id="depthcharge">Depthcharge payload</h1> <p> These systems do not use the GRUB payload. Instead, they use a payload called depthcharge, - which is common on Chromebooks. This is free software, maintained by Google. + which is common on CrOS devices. This is free software, maintained by Google. </p> </div> @@ -219,8 +219,8 @@ <p> Write protection is useful, because it prevents the firmware from being re-flashed by any malicious software that might become executed on your GNU/Linux system, as root. In other words, it can prevent a firmware-level <i>evil maid</i> attack. It's - possible to write protect on all current libreboot systems, but chromebooks make it easy. The screw is such a stupidly - simple idea, which all laptop designs should implement. + possible to write protect on all current libreboot systems, but CrOS devices make it easy. The screw is such a stupidly + simple idea, which all designs should implement. </p> </div> diff --git a/docs/install/c201.html b/docs/install/c201.html @@ -158,7 +158,7 @@ <h1 id="installing_libreboot_spi_flash">Installing Libreboot to the SPI flash</h1> <p> - The SPI flash (that holds Libreboot) is divided into various partitions that are used to implement parts of the Chromebook security system. + The SPI flash (that holds Libreboot) is divided into various partitions that are used to implement parts of the CrOS security system. Libreboot is installed in the <i>read-only</i> coreboot partition, that becomes writable after removing the write-protect screw. </p> diff --git a/docs/tasks.html b/docs/tasks.html @@ -102,7 +102,7 @@ </li> <li> <ul> - <li>ASUS Chromebook C201 was added, but there are also other RK3288 based laptops in coreboot. Port them all!</li> + <li>ASUS Chromebook C201 was added, but there are also other RK3288 based devices in coreboot. Port them all!</li> <li>Other ARM based systems; tegra124 chromebooks, Jetson TK1 (non-free GPU microcode in kernel needs replacing. also xhci firmware, but optional (can still use ehci, we think))</li> </ul> </li> @@ -442,7 +442,7 @@ have EC in the main chip, some don't use SPI flash at all but have the firmware inside the EC chip itself. If the EC has integrated flash then you need to be able to get to the pins on the chip or be able to program them over LPC or SPI (if they have that feature). The lenovo laptops currently supported in libreboot all use H8 EC chips (contains flash inside the chip). - Read the datasheets on how to externally flash the EC. Chromebooks seem to have free EC + Read the datasheets on how to externally flash the EC. Most CrOS devices run with a free EC firmware (<a href="https://chromium.googlesource.com/chromiumos/platform/ec/+/master/chip/">https://chromium.googlesource.com/chromiumos/platform/ec/+/master/chip/</a>). - see <a href="http://blogs.coreboot.org/blog/2015/05/28/progress-gsoc-week-1/">http://blogs.coreboot.org/blog/2015/05/28/progress-gsoc-week-1/</a> (H8S EC, applies to thinkpads) diff --git a/resources/libreboot/install/depthcharge/chromebook-flash-replace b/resources/libreboot/install/depthcharge/chromebook-flash-replace @@ -1,96 +0,0 @@ -#!/bin/bash - -# replace the requested parts in the flash image with separate parts images -# -# Copyright (C) 2015 Paul Kocialkowski <contact@paulk.fr> -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. -# - -[ "x${DEBUG+set}" = 'xset' ] && set -v - -regex="\([0-9a-fA-F]*\):\([0-9a-fA-F]*\)[[:space:]]*\(.*\)" -block=256 -layout="layout.txt" -flash=$1 - -shift 1 - -if [ ! -f "$flash" ] -then - echo "Usage: $0 [flash image] [image] ..." - exit 1 -fi - -if [ ! -f "$layout" ] -then - echo "Missing layout file: $layout" - exit 1 -fi - -flashsize=$( stat $flash -c "%s" ) - -for image in $@; do - range=$( grep "$image" "$layout" ) - name=$( echo "$range" | sed "s/$regex/\3/g" ) - file="$name.img" - - if [ -z "$range" ] || [ ! -f "$file" ] - then - echo "Invalid image name: $name" - continue - fi - - start=$( echo "$range" | sed "s/$regex/\1/g" ) - start=$( printf "%d\n" "0x$start" ) - stop=$( echo "$range" | sed "s/$regex/\2/g" ) - stop=$( printf "%d\n" "0x$stop" ) - - size=$(( $stop - $start + 1 )) - filesize=$( stat $file -c "%s" ) - - if [ $size -ne $filesize ] - then - echo "Invalid file size: expected $size, read $filesize" - continue - fi - - if [ $size -gt $flashsize ] - then - echo "Image size too big for flash" - continue - fi - - printf "Replacing $image in $flash\n\n" - - if [ $start -gt 0 ] - then - dd if=$flash of=before.img bs=$block count=$(( $start / $block )) - else - touch before.img - fi - - if [ $(( $stop + 1 )) -lt $flashsize ] - then - dd if=$flash of=after.img skip=$(( ($stop + 1) / $block )) bs=$block count=$(( ($flashsize - $stop - 1) / $block )) - else - touch after.img - fi - - cat before.img $file after.img > $flash - - rm before.img after.img - - printf "\n" -done diff --git a/resources/libreboot/install/depthcharge/cros-flash-replace b/resources/libreboot/install/depthcharge/cros-flash-replace @@ -0,0 +1,96 @@ +#!/bin/bash + +# replace the requested parts in the flash image with separate parts images +# +# Copyright (C) 2015 Paul Kocialkowski <contact@paulk.fr> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# + +[ "x${DEBUG+set}" = 'xset' ] && set -v + +regex="\([0-9a-fA-F]*\):\([0-9a-fA-F]*\)[[:space:]]*\(.*\)" +block=256 +layout="layout.txt" +flash=$1 + +shift 1 + +if [ ! -f "$flash" ] +then + echo "Usage: $0 [flash image] [image] ..." + exit 1 +fi + +if [ ! -f "$layout" ] +then + echo "Missing layout file: $layout" + exit 1 +fi + +flashsize=$( stat $flash -c "%s" ) + +for image in $@; do + range=$( grep "$image" "$layout" ) + name=$( echo "$range" | sed "s/$regex/\3/g" ) + file="$name.img" + + if [ -z "$range" ] || [ ! -f "$file" ] + then + echo "Invalid image name: $name" + continue + fi + + start=$( echo "$range" | sed "s/$regex/\1/g" ) + start=$( printf "%d\n" "0x$start" ) + stop=$( echo "$range" | sed "s/$regex/\2/g" ) + stop=$( printf "%d\n" "0x$stop" ) + + size=$(( $stop - $start + 1 )) + filesize=$( stat $file -c "%s" ) + + if [ $size -ne $filesize ] + then + echo "Invalid file size: expected $size, read $filesize" + continue + fi + + if [ $size -gt $flashsize ] + then + echo "Image size too big for flash" + continue + fi + + printf "Replacing $image in $flash\n\n" + + if [ $start -gt 0 ] + then + dd if=$flash of=before.img bs=$block count=$(( $start / $block )) + else + touch before.img + fi + + if [ $(( $stop + 1 )) -lt $flashsize ] + then + dd if=$flash of=after.img skip=$(( ($stop + 1) / $block )) bs=$block count=$(( ($flashsize - $stop - 1) / $block )) + else + touch after.img + fi + + cat before.img $file after.img > $flash + + rm before.img after.img + + printf "\n" +done diff --git a/resources/libreboot/patch/chromebook/0001-chromeos-Allow-disabling-vboot-firmware-verification.patch b/resources/libreboot/patch/chromebook/0001-chromeos-Allow-disabling-vboot-firmware-verification.patch @@ -1,98 +0,0 @@ -From 2178bea1fbef28afbb9ffa2d95673407fac1907e Mon Sep 17 00:00:00 2001 -From: Paul Kocialkowski <contact@paulk.fr> -Date: Sun, 9 Aug 2015 10:23:38 +0200 -Subject: [PATCH] chromeos: Allow disabling vboot firmware verification when - ChromeOS is enabled - -Some ChromeOS bindings might be wanted without using vboot verification, for -instance to boot up depthcharge from the version of Coreboot installed in the -write-protected part of the SPI flash (without jumping to a RW firmware). - -Vboot firmware verification is still selected by default when ChromeOS is -enabled, but this allows more flexibility since vboot firmware verification is -no longer a hard requirement for ChromeOS (that this particular use case still -allows booting ChromeOS). - -In the future, it would make sense to have all the separate components that -CONFIG_CHROMEOS enables have their own config options, so that they can be -enabled separately. - -Change-Id: Ia4057a56838aa05dcf3cb250ae1a27fd91402ddb -Signed-off-by: Paul Kocialkowski <contact@paulk.fr> ---- - src/lib/bootmode.c | 2 ++ - src/soc/rockchip/rk3288/Kconfig | 2 +- - src/vendorcode/google/chromeos/Kconfig | 2 +- - src/vendorcode/google/chromeos/vboot2/Kconfig | 4 ++++ - 4 files changed, 8 insertions(+), 2 deletions(-) - -diff --git a/src/lib/bootmode.c b/src/lib/bootmode.c -index f2ff72a..13c0130 100644 ---- a/src/lib/bootmode.c -+++ b/src/lib/bootmode.c -@@ -80,8 +80,10 @@ void gfx_set_init_done(int done) - int display_init_required(void) - { - /* For Chrome OS always honor vboot_skip_display_init(). */ -+#if CONFIG_VBOOT_VERIFY_FIRMWARE - if (IS_ENABLED(CONFIG_CHROMEOS)) - return !vboot_skip_display_init(); -+#endif - - /* By default always initialize display. */ - return 1; -diff --git a/src/soc/rockchip/rk3288/Kconfig b/src/soc/rockchip/rk3288/Kconfig -index bc484e3..74a63e7 100644 ---- a/src/soc/rockchip/rk3288/Kconfig -+++ b/src/soc/rockchip/rk3288/Kconfig -@@ -35,7 +35,7 @@ config SOC_ROCKCHIP_RK3288 - - if SOC_ROCKCHIP_RK3288 - --config CHROMEOS -+config VBOOT_VERIFY_FIRMWARE - select VBOOT_STARTS_IN_BOOTBLOCK - select SEPARATE_VERSTAGE - select RETURN_FROM_VERSTAGE -diff --git a/src/vendorcode/google/chromeos/Kconfig b/src/vendorcode/google/chromeos/Kconfig -index 8309d19..694e0d7 100644 ---- a/src/vendorcode/google/chromeos/Kconfig -+++ b/src/vendorcode/google/chromeos/Kconfig -@@ -31,7 +31,6 @@ config CHROMEOS - select BOOTMODE_STRAPS - select ELOG - select COLLECT_TIMESTAMPS -- select VBOOT_VERIFY_FIRMWARE - help - Enable ChromeOS specific features like the GPIO sub table in - the coreboot table. NOTE: Enabling this option on an unsupported -@@ -129,6 +128,7 @@ config VIRTUAL_DEV_SWITCH - - config VBOOT_VERIFY_FIRMWARE - bool "Verify firmware with vboot." -+ default y if CHROMEOS - default n - depends on HAVE_HARD_RESET - help -diff --git a/src/vendorcode/google/chromeos/vboot2/Kconfig b/src/vendorcode/google/chromeos/vboot2/Kconfig -index 930b009..610a847 100644 ---- a/src/vendorcode/google/chromeos/vboot2/Kconfig -+++ b/src/vendorcode/google/chromeos/vboot2/Kconfig -@@ -16,6 +16,8 @@ - ## Foundation, Inc. - ## - -+if VBOOT_VERIFY_FIRMWARE -+ - config VBOOT_STARTS_IN_BOOTBLOCK - bool "Vboot starts verifying in bootblock" - default n -@@ -133,3 +135,5 @@ config VBOOT_DYNAMIC_WORK_BUFFER - ram to allocate the vboot work buffer. That means vboot verification - is after memory init and requires main memory to back the work - buffer. -+ -+endif # VBOOT_VERIFY_FIRMWARE --- -1.9.1 - diff --git a/resources/libreboot/patch/cros/0001-chromeos-Allow-disabling-vboot-firmware-verification.patch b/resources/libreboot/patch/cros/0001-chromeos-Allow-disabling-vboot-firmware-verification.patch @@ -0,0 +1,98 @@ +From 2178bea1fbef28afbb9ffa2d95673407fac1907e Mon Sep 17 00:00:00 2001 +From: Paul Kocialkowski <contact@paulk.fr> +Date: Sun, 9 Aug 2015 10:23:38 +0200 +Subject: [PATCH] chromeos: Allow disabling vboot firmware verification when + ChromeOS is enabled + +Some ChromeOS bindings might be wanted without using vboot verification, for +instance to boot up depthcharge from the version of Coreboot installed in the +write-protected part of the SPI flash (without jumping to a RW firmware). + +Vboot firmware verification is still selected by default when ChromeOS is +enabled, but this allows more flexibility since vboot firmware verification is +no longer a hard requirement for ChromeOS (that this particular use case still +allows booting ChromeOS). + +In the future, it would make sense to have all the separate components that +CONFIG_CHROMEOS enables have their own config options, so that they can be +enabled separately. + +Change-Id: Ia4057a56838aa05dcf3cb250ae1a27fd91402ddb +Signed-off-by: Paul Kocialkowski <contact@paulk.fr> +--- + src/lib/bootmode.c | 2 ++ + src/soc/rockchip/rk3288/Kconfig | 2 +- + src/vendorcode/google/chromeos/Kconfig | 2 +- + src/vendorcode/google/chromeos/vboot2/Kconfig | 4 ++++ + 4 files changed, 8 insertions(+), 2 deletions(-) + +diff --git a/src/lib/bootmode.c b/src/lib/bootmode.c +index f2ff72a..13c0130 100644 +--- a/src/lib/bootmode.c ++++ b/src/lib/bootmode.c +@@ -80,8 +80,10 @@ void gfx_set_init_done(int done) + int display_init_required(void) + { + /* For Chrome OS always honor vboot_skip_display_init(). */ ++#if CONFIG_VBOOT_VERIFY_FIRMWARE + if (IS_ENABLED(CONFIG_CHROMEOS)) + return !vboot_skip_display_init(); ++#endif + + /* By default always initialize display. */ + return 1; +diff --git a/src/soc/rockchip/rk3288/Kconfig b/src/soc/rockchip/rk3288/Kconfig +index bc484e3..74a63e7 100644 +--- a/src/soc/rockchip/rk3288/Kconfig ++++ b/src/soc/rockchip/rk3288/Kconfig +@@ -35,7 +35,7 @@ config SOC_ROCKCHIP_RK3288 + + if SOC_ROCKCHIP_RK3288 + +-config CHROMEOS ++config VBOOT_VERIFY_FIRMWARE + select VBOOT_STARTS_IN_BOOTBLOCK + select SEPARATE_VERSTAGE + select RETURN_FROM_VERSTAGE +diff --git a/src/vendorcode/google/chromeos/Kconfig b/src/vendorcode/google/chromeos/Kconfig +index 8309d19..694e0d7 100644 +--- a/src/vendorcode/google/chromeos/Kconfig ++++ b/src/vendorcode/google/chromeos/Kconfig +@@ -31,7 +31,6 @@ config CHROMEOS + select BOOTMODE_STRAPS + select ELOG + select COLLECT_TIMESTAMPS +- select VBOOT_VERIFY_FIRMWARE + help + Enable ChromeOS specific features like the GPIO sub table in + the coreboot table. NOTE: Enabling this option on an unsupported +@@ -129,6 +128,7 @@ config VIRTUAL_DEV_SWITCH + + config VBOOT_VERIFY_FIRMWARE + bool "Verify firmware with vboot." ++ default y if CHROMEOS + default n + depends on HAVE_HARD_RESET + help +diff --git a/src/vendorcode/google/chromeos/vboot2/Kconfig b/src/vendorcode/google/chromeos/vboot2/Kconfig +index 930b009..610a847 100644 +--- a/src/vendorcode/google/chromeos/vboot2/Kconfig ++++ b/src/vendorcode/google/chromeos/vboot2/Kconfig +@@ -16,6 +16,8 @@ + ## Foundation, Inc. + ## + ++if VBOOT_VERIFY_FIRMWARE ++ + config VBOOT_STARTS_IN_BOOTBLOCK + bool "Vboot starts verifying in bootblock" + default n +@@ -133,3 +135,5 @@ config VBOOT_DYNAMIC_WORK_BUFFER + ram to allocate the vboot work buffer. That means vboot verification + is after memory init and requires main memory to back the work + buffer. ++ ++endif # VBOOT_VERIFY_FIRMWARE +-- +1.9.1 + diff --git a/resources/scripts/helpers/build/roms/withdepthcharge b/resources/scripts/helpers/build/roms/withdepthcharge @@ -112,7 +112,7 @@ buildcoreboot() { mv "coreboot.img" "$board/" mv "ro-frid.img" "$board/" # copy the scripts too - cp "../resources/libreboot/install/depthcharge/chromebook-flash-replace" "$board/" + cp "../resources/libreboot/install/depthcharge/cros-flash-replace" "$board/" cp "../resources/libreboot/install/depthcharge/${board}/layout.txt" "$board/" # delete the old images from ../bin rm -Rf "../bin/depthcharge/${board}/" diff --git a/resources/scripts/helpers/download/coreboot b/resources/scripts/helpers/download/coreboot @@ -128,10 +128,10 @@ printf "ThinkPad T500 (depends on T400 patch)\n" git am "../resources/libreboot/patch/misc/0008-lenovo-t500-Add-clone-of-Lenovo-T400.patch" # git fetch http://review.coreboot.org/coreboot refs/changes/45/10545/1 && git cherry-pick FETCH_HEAD -# Chromebook: +# CrOS: printf "chromeos: Allow disabling vboot firmware verification when ChromeOS is enabled\n" -git am "../resources/libreboot/patch/chromebook/0001-chromeos-Allow-disabling-vboot-firmware-verification.patch" +git am "../resources/libreboot/patch/cros/0001-chromeos-Allow-disabling-vboot-firmware-verification.patch" # KGPE-D16 patches # new versions can be found at https://raptorengineeringinc.com/coreboot/kgpe-d16-status.php