2014-10-10 19:51:06 +02:00
|
|
|
## This file is part of the coreboot project.
|
|
|
|
##
|
|
|
|
## Copyright (C) 2014 The ChromiumOS Authors. All rights reserved.
|
|
|
|
##
|
|
|
|
## 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; version 2 of the License.
|
|
|
|
##
|
|
|
|
## 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.
|
|
|
|
##
|
|
|
|
|
2016-07-25 20:48:03 +02:00
|
|
|
config VBOOT_VBNV_OFFSET
|
|
|
|
hex
|
|
|
|
default 0x26
|
|
|
|
depends on PC80_SYSTEM
|
|
|
|
help
|
|
|
|
CMOS offset for VbNv data. This value must match cmos.layout
|
|
|
|
in the mainboard directory, minus 14 bytes for the RTC.
|
|
|
|
|
|
|
|
config VBOOT_VBNV_CMOS
|
|
|
|
bool "Vboot non-volatile storage in CMOS."
|
|
|
|
default n
|
|
|
|
help
|
|
|
|
VBNV is stored in CMOS
|
|
|
|
|
|
|
|
config VBOOT_VBNV_CMOS_BACKUP_TO_FLASH
|
|
|
|
bool "Back up Vboot non-volatile storage from CMOS to flash."
|
|
|
|
default n
|
2016-08-12 19:48:58 +02:00
|
|
|
depends on VBOOT_VBNV_CMOS && BOOT_DEVICE_SUPPORTS_WRITES
|
2016-07-25 20:48:03 +02:00
|
|
|
help
|
|
|
|
Vboot non-volatile storage data will be backed up from CMOS to flash
|
|
|
|
and restored from flash if the CMOS is invalid due to power loss.
|
|
|
|
|
|
|
|
config VBOOT_VBNV_EC
|
|
|
|
bool "Vboot non-volatile storage in EC."
|
|
|
|
default n
|
|
|
|
help
|
|
|
|
VBNV is stored in EC
|
|
|
|
|
|
|
|
config VBOOT_VBNV_FLASH
|
|
|
|
def_bool n
|
2016-08-12 19:48:58 +02:00
|
|
|
depends on BOOT_DEVICE_SUPPORTS_WRITES
|
2016-07-25 20:48:03 +02:00
|
|
|
help
|
|
|
|
VBNV is stored in flash storage
|
|
|
|
|
2015-04-28 23:17:25 +02:00
|
|
|
config VBOOT_STARTS_IN_BOOTBLOCK
|
2015-05-08 23:01:31 +02:00
|
|
|
bool "Vboot starts verifying in bootblock"
|
2015-04-28 23:17:25 +02:00
|
|
|
default n
|
2016-07-25 20:48:03 +02:00
|
|
|
depends on VBOOT
|
2015-04-28 23:17:25 +02:00
|
|
|
help
|
|
|
|
Firmware verification happens during or at the end of bootblock.
|
|
|
|
|
|
|
|
config VBOOT_STARTS_IN_ROMSTAGE
|
2015-05-08 23:01:31 +02:00
|
|
|
bool "Vboot starts verifying in romstage"
|
2015-04-28 23:17:25 +02:00
|
|
|
default n
|
2016-07-25 20:48:03 +02:00
|
|
|
depends on VBOOT && !VBOOT_STARTS_IN_BOOTBLOCK
|
2015-04-28 23:17:25 +02:00
|
|
|
help
|
|
|
|
Firmware verification happens during or at the end of romstage.
|
|
|
|
|
2016-07-25 20:48:03 +02:00
|
|
|
config VBOOT_MOCK_SECDATA
|
2015-04-09 17:18:22 +02:00
|
|
|
bool "Mock secdata for firmware verification"
|
|
|
|
default n
|
2016-07-25 20:48:03 +02:00
|
|
|
depends on VBOOT
|
2015-04-09 17:18:22 +02:00
|
|
|
help
|
2016-07-25 20:48:03 +02:00
|
|
|
Enabling VBOOT_MOCK_SECDATA will mock secdata for the firmware
|
2015-04-09 17:18:22 +02:00
|
|
|
verification to avoid access to a secdata storage (typically TPM).
|
|
|
|
All operations for a secdata storage will be successful. This option
|
|
|
|
can be used during development when a TPM is not present or broken.
|
|
|
|
THIS SHOULD NOT BE LEFT ON FOR PRODUCTION DEVICES.
|
|
|
|
|
2015-03-21 00:11:13 +01:00
|
|
|
config VBOOT_DISABLE_DEV_ON_RECOVERY
|
|
|
|
bool "Disable dev mode on recovery requests"
|
|
|
|
default n
|
2016-07-25 20:48:03 +02:00
|
|
|
depends on VBOOT
|
2015-03-21 00:11:13 +01:00
|
|
|
help
|
|
|
|
When this option is enabled, the Chrome OS device leaves the
|
|
|
|
developer mode as soon as recovery request is detected. This is
|
|
|
|
handy on embedded devices with limited input capabilities.
|
2015-04-27 18:13:50 +02:00
|
|
|
|
2015-04-28 23:17:25 +02:00
|
|
|
config SEPARATE_VERSTAGE
|
2015-05-08 23:01:31 +02:00
|
|
|
bool "Vboot verification is built into a separate stage"
|
2015-04-27 18:13:50 +02:00
|
|
|
default n
|
2016-07-25 20:48:03 +02:00
|
|
|
depends on VBOOT
|
2015-04-27 18:13:50 +02:00
|
|
|
|
2015-04-28 23:17:25 +02:00
|
|
|
config RETURN_FROM_VERSTAGE
|
2015-05-08 23:01:31 +02:00
|
|
|
bool "The separate verification stage returns to its caller"
|
2015-04-28 23:17:25 +02:00
|
|
|
default n
|
|
|
|
depends on SEPARATE_VERSTAGE
|
|
|
|
help
|
|
|
|
If this is set, the verstage returns back to the calling stage instead
|
|
|
|
of exiting to the succeeding stage so that the verstage space can be
|
2016-07-30 16:18:46 +02:00
|
|
|
reused by the succeeding stage. This is useful if a RAM space is too
|
2015-04-28 23:17:25 +02:00
|
|
|
small to fit both the verstage and the succeeding stage.
|
2015-04-28 23:02:17 +02:00
|
|
|
|
2016-07-22 17:56:43 +02:00
|
|
|
config VBOOT_SAVE_RECOVERY_REASON_ON_REBOOT
|
|
|
|
bool
|
|
|
|
default n
|
2016-07-25 20:48:03 +02:00
|
|
|
depends on VBOOT
|
2016-07-22 17:56:43 +02:00
|
|
|
help
|
|
|
|
This option ensures that the recovery request is not lost because of
|
|
|
|
reboots caused after vboot verification is run. e.g. reboots caused by
|
|
|
|
FSP components on Intel platforms.
|
2016-07-25 20:48:03 +02:00
|
|
|
|
|
|
|
config VBOOT_OPROM_MATTERS
|
|
|
|
bool "Video option ROM matters (= can skip display init)"
|
|
|
|
default n
|
|
|
|
depends on VBOOT
|
|
|
|
help
|
|
|
|
Set this option to indicate to vboot that this platform will skip its
|
|
|
|
display initialization on a normal (non-recovery, non-developer) boot.
|
|
|
|
Vboot calls this "oprom matters" because on x86 devices this
|
|
|
|
traditionally meant that the video option ROM will not be loaded, but
|
|
|
|
it works functionally the same for other platforms that can skip their
|
|
|
|
native display initialization code instead.
|
|
|
|
|
2016-11-08 08:47:11 +01:00
|
|
|
config VBOOT_HAS_REC_HASH_SPACE
|
|
|
|
bool
|
|
|
|
default n
|
|
|
|
depends on VBOOT
|
|
|
|
help
|
|
|
|
Set this option to indicate to vboot that recovery data hash space
|
|
|
|
is present in TPM.
|
|
|
|
|
2017-03-14 01:25:36 +01:00
|
|
|
config VBOOT_SOFT_REBOOT_WORKAROUND
|
|
|
|
bool
|
|
|
|
default n
|
|
|
|
|
2016-07-25 20:48:03 +02:00
|
|
|
config VBOOT
|
|
|
|
bool "Verify firmware with vboot."
|
|
|
|
default n
|
2016-08-16 01:10:27 +02:00
|
|
|
select TPM if !MAINBOARD_HAS_TPM2
|
|
|
|
select TPM2 if MAINBOARD_HAS_TPM2
|
|
|
|
select TPM_INIT_FAILURE_IS_FATAL if PC80_SYSTEM && LPC_TPM
|
|
|
|
select SKIP_TPM_STARTUP_ON_NORMAL_BOOT if PC80_SYSTEM && LPC_TPM
|
2016-07-25 20:48:03 +02:00
|
|
|
depends on HAVE_HARD_RESET
|
|
|
|
help
|
|
|
|
Enabling VBOOT will use vboot to verify the components of the firmware
|
|
|
|
(stages, payload, etc).
|