blob: 26ee31edc7abe8e1198902f795ec7bc583a61558 [file] [log] [blame]
Stefan Reinauerb89a7612012-03-30 01:01:51 +02001## This file is part of the coreboot project.
2##
3## Copyright (C) 2011 The ChromiumOS Authors. All rights reserved.
4##
5## This program is free software; you can redistribute it and/or modify
6## it under the terms of the GNU General Public License as published by
7## the Free Software Foundation; version 2 of the License.
8##
9## This program is distributed in the hope that it will be useful,
10## but WITHOUT ANY WARRANTY; without even the implied warranty of
11## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12## GNU General Public License for more details.
13##
Stefan Reinauerb89a7612012-03-30 01:01:51 +020014
Kyösti Mälkkib1b9c932013-10-17 16:38:25 +030015config MAINBOARD_HAS_CHROMEOS
16 def_bool n
17
18menu "ChromeOS"
19 depends on MAINBOARD_HAS_CHROMEOS
20
Stefan Reinauerb89a7612012-03-30 01:01:51 +020021config CHROMEOS
Kyösti Mälkkib1b9c932013-10-17 16:38:25 +030022 bool "Build for ChromeOS"
Kyösti Mälkki04f5c4e2013-10-17 16:38:56 +030023 default n
Aaron Durbind10f9d52016-08-10 11:37:14 -050024 select ELOG if BOOT_DEVICE_SUPPORTS_WRITES
Stefan Reinauer4bddb752015-05-28 13:48:47 -070025 select COLLECT_TIMESTAMPS
Furquan Shaikh2a12e2e2016-07-25 11:48:03 -070026 select VBOOT
Patrick Rudolph28cee592018-03-08 15:43:12 +010027 select VPD
Philipp Deppenwiesea558ca92018-07-28 23:30:49 +020028 select VBOOT_SLOTS_RW_AB
Stefan Reinauerb89a7612012-03-30 01:01:51 +020029 help
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070030 Enable ChromeOS specific features like the GPIO sub table in
31 the coreboot table. NOTE: Enabling this option on an unsupported
32 board will most likely break your build.
Stefan Reinauerb89a7612012-03-30 01:01:51 +020033
Kyösti Mälkkib1b9c932013-10-17 16:38:25 +030034if CHROMEOS
Stefan Reinauerf17789c2012-04-03 11:22:15 -070035
Aaron Durbineeb77372017-03-08 11:23:11 -060036config CR50_IMMEDIATELY_COMMIT_FW_SECDATA
37 bool
Philipp Deppenwiesec07f8fb2018-02-27 19:40:52 +010038 default y if TPM_CR50
Aaron Durbineeb77372017-03-08 11:23:11 -060039
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070040config CHROMEOS_RAMOOPS
41 bool "Reserve space for Chrome OS ramoops"
42 default y
43
Aaron Durbin06ece7d2014-02-14 00:30:04 -060044config CHROMEOS_RAMOOPS_DYNAMIC
45 bool "Allocate RAM oops buffer in cbmem"
46 default n
Furquan Shaikhaed887f2014-11-08 17:32:38 -080047 depends on CHROMEOS_RAMOOPS && HAVE_ACPI_TABLES
Aaron Durbin06ece7d2014-02-14 00:30:04 -060048
Furquan Shaikhefb546d2014-11-08 17:34:27 -080049config CHROMEOS_RAMOOPS_NON_ACPI
50 bool "Allocate RAM oops buffer in cbmem passed through cb tables to payload"
Julius Wernerc7740d62016-08-10 17:30:11 -070051 default y if !HAVE_ACPI_TABLES
Furquan Shaikhefb546d2014-11-08 17:34:27 -080052 depends on CHROMEOS_RAMOOPS && !HAVE_ACPI_TABLES
53
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070054config CHROMEOS_RAMOOPS_RAM_START
55 hex "Physical address of preserved RAM"
56 default 0x00f00000
Aaron Durbin06ece7d2014-02-14 00:30:04 -060057 depends on CHROMEOS_RAMOOPS && !CHROMEOS_RAMOOPS_DYNAMIC
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070058
59config CHROMEOS_RAMOOPS_RAM_SIZE
60 hex "Size of preserved RAM"
61 default 0x00100000
62 depends on CHROMEOS_RAMOOPS
Stefan Reinauerf17789c2012-04-03 11:22:15 -070063
Stefan Reinauerc7fe2802012-09-19 11:10:15 -070064config NO_TPM_RESUME
65 bool
66 default n
Stefan Reinauerc7fe2802012-09-19 11:10:15 -070067 help
68 On some boards the TPM stays powered up in S3. On those
69 boards, booting Windows will break if the TPM resume command
70 is sent during an S3 resume.
Kyösti Mälkkib1b9c932013-10-17 16:38:25 +030071
Felix Durairaj5d935b32015-11-20 16:18:42 -080072config HAVE_REGULATORY_DOMAIN
73 bool "Add regulatory domain methods"
74 default n
75 help
76 This option is needed to add ACPI regulatory domain methods
77
Aaron Durbinf56c7782017-01-10 17:44:42 -060078config CHROMEOS_DISABLE_PLATFORM_HIERARCHY_ON_RESUME
79 bool
80 default y
81 depends on TPM2 && RESUME_PATH_SAME_AS_BOOT
82 help
83 Disable the platform heirarchy on resume path if the firmware
84 is involved in resume. The hierarchy is disabled prior to jumping
85 to the OS. Note that this option is sepcific to TPM2 boards.
86 This option is auto selected if CHROMEOS because it matches with
87 vboot_reference model which disables the platform hierarchy in
88 the boot loader. However, those operations need to be symmetric
89 on normal boot as well as resume and coreboot is only involved
90 in the resume piece w.r.t. the platform hierarchy.
91
Daisuke Nojiri742fc8d2014-10-10 10:51:06 -070092endif # CHROMEOS
Kyösti Mälkkib1b9c932013-10-17 16:38:25 +030093endmenu