blob: 8309d1969aac605f385c5cfc6073a5539415086d [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##
14## You should have received a copy of the GNU General Public License
15## along with this program; if not, write to the Free Software
Patrick Georgib890a122015-03-26 15:17:45 +010016## Foundation, Inc.
Stefan Reinauerb89a7612012-03-30 01:01:51 +020017##
18
Kyösti Mälkkib1b9c932013-10-17 16:38:25 +030019config MAINBOARD_HAS_CHROMEOS
20 def_bool n
21
22menu "ChromeOS"
23 depends on MAINBOARD_HAS_CHROMEOS
24
Stefan Reinauerb89a7612012-03-30 01:01:51 +020025config CHROMEOS
Kyösti Mälkkib1b9c932013-10-17 16:38:25 +030026 bool "Build for ChromeOS"
Kyösti Mälkki04f5c4e2013-10-17 16:38:56 +030027 default n
Stefan Reinauerb89a7612012-03-30 01:01:51 +020028 select TPM
Vladimir Serbinenko0e90dae2015-05-18 10:29:06 +020029 select TPM_INIT_FAILURE_IS_FATAL
30 select SKIP_TPM_STARTUP_ON_NORMAL_BOOT
Kyösti Mälkki5687fc92013-11-28 18:11:49 +020031 select BOOTMODE_STRAPS
Patrick Georgicfba6092015-04-22 18:25:37 +020032 select ELOG
Stefan Reinauer4bddb752015-05-28 13:48:47 -070033 select COLLECT_TIMESTAMPS
Patrick Georgi463d6652015-06-25 17:01:26 +020034 select VBOOT_VERIFY_FIRMWARE
Stefan Reinauerb89a7612012-03-30 01:01:51 +020035 help
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070036 Enable ChromeOS specific features like the GPIO sub table in
37 the coreboot table. NOTE: Enabling this option on an unsupported
38 board will most likely break your build.
Stefan Reinauerb89a7612012-03-30 01:01:51 +020039
Kyösti Mälkkib1b9c932013-10-17 16:38:25 +030040if CHROMEOS
Stefan Reinauerf17789c2012-04-03 11:22:15 -070041
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070042config VBNV_OFFSET
43 hex
44 default 0x26
Stefan Reinauer3e4e3032013-03-20 14:08:04 -070045 depends on PC80_SYSTEM
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070046 help
47 CMOS offset for VbNv data. This value must match cmos.layout
48 in the mainboard directory, minus 14 bytes for the RTC.
Stefan Reinauerb89a7612012-03-30 01:01:51 +020049
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070050config VBNV_SIZE
51 hex
52 default 0x10
Stefan Reinauer3e4e3032013-03-20 14:08:04 -070053 depends on PC80_SYSTEM
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070054 help
55 CMOS storage size for VbNv data. This value must match cmos.layout
56 in the mainboard directory.
Stefan Reinauerb89a7612012-03-30 01:01:51 +020057
David Hendricksdad16b12014-08-22 15:40:15 -070058config CHROMEOS_VBNV_CMOS
59 bool "Vboot non-volatile storage in CMOS."
60 default n
61 help
62 VBNV is stored in CMOS
63
64config CHROMEOS_VBNV_EC
65 bool "Vboot non-volatile storage in EC."
66 default n
67 help
68 VBNV is stored in EC
69
Daisuke Nojiri477dd182014-10-08 11:32:23 -070070config CHROMEOS_VBNV_FLASH
71 def_bool n
72 help
73 VBNV is stored in flash storage
74
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070075config CHROMEOS_RAMOOPS
76 bool "Reserve space for Chrome OS ramoops"
77 default y
78
Aaron Durbin06ece7d2014-02-14 00:30:04 -060079config CHROMEOS_RAMOOPS_DYNAMIC
80 bool "Allocate RAM oops buffer in cbmem"
81 default n
Furquan Shaikhaed887f2014-11-08 17:32:38 -080082 depends on CHROMEOS_RAMOOPS && HAVE_ACPI_TABLES
Aaron Durbin06ece7d2014-02-14 00:30:04 -060083
Furquan Shaikhefb546d2014-11-08 17:34:27 -080084config CHROMEOS_RAMOOPS_NON_ACPI
85 bool "Allocate RAM oops buffer in cbmem passed through cb tables to payload"
86 default n
87 depends on CHROMEOS_RAMOOPS && !HAVE_ACPI_TABLES
88
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070089config CHROMEOS_RAMOOPS_RAM_START
90 hex "Physical address of preserved RAM"
91 default 0x00f00000
Aaron Durbin06ece7d2014-02-14 00:30:04 -060092 depends on CHROMEOS_RAMOOPS && !CHROMEOS_RAMOOPS_DYNAMIC
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070093
94config CHROMEOS_RAMOOPS_RAM_SIZE
95 hex "Size of preserved RAM"
96 default 0x00100000
97 depends on CHROMEOS_RAMOOPS
Stefan Reinauerf17789c2012-04-03 11:22:15 -070098
Aaron Durbinfd795622013-03-01 17:12:26 -060099config EC_SOFTWARE_SYNC
100 bool "Enable EC software sync"
101 default n
Aaron Durbin1124cec2015-04-22 10:41:42 -0500102 depends on VBOOT_VERIFY_FIRMWARE
Aaron Durbinfd795622013-03-01 17:12:26 -0600103 help
104 EC software sync is a mechanism where the AP helps the EC verify its
105 firmware similar to how vboot verifies the main system firmware. This
106 option selects whether depthcharge should support EC software sync.
107
Duncan Laurie338c6172014-10-16 17:00:23 -0700108config VBOOT_EC_SLOW_UPDATE
109 bool "EC is slow to update"
110 default n
111 depends on EC_SOFTWARE_SYNC
112 help
113 Whether the EC (or PD) is slow to update and needs to display a
114 screen that informs the user the update is happening.
115
116config VBOOT_OPROM_MATTERS
117 bool "Video option ROM matters"
118 default n
119 depends on VBOOT_VERIFY_FIRMWARE
120 help
121 Whether the video option ROM has run matters on this platform.
122
Aaron Durbinfd795622013-03-01 17:12:26 -0600123config VIRTUAL_DEV_SWITCH
124 bool "Virtual developer switch support"
125 default n
Aaron Durbin1124cec2015-04-22 10:41:42 -0500126 depends on VBOOT_VERIFY_FIRMWARE
Aaron Durbinfd795622013-03-01 17:12:26 -0600127 help
128 Whether this platform has a virtual developer switch.
129
Aaron Durbin6d65f792015-04-21 15:33:01 -0500130config VBOOT_VERIFY_FIRMWARE
131 bool "Verify firmware with vboot."
132 default n
Patrick Georgi463d6652015-06-25 17:01:26 +0200133 depends on HAVE_HARD_RESET
Aaron Durbin6d65f792015-04-21 15:33:01 -0500134 help
135 Enabling VBOOT_VERIFY_FIRMWARE will use vboot to verify the components
136 of the firmware (stages, payload, etc).
137
Stefan Reinauerc7fe2802012-09-19 11:10:15 -0700138config NO_TPM_RESUME
139 bool
140 default n
Stefan Reinauerc7fe2802012-09-19 11:10:15 -0700141 help
142 On some boards the TPM stays powered up in S3. On those
143 boards, booting Windows will break if the TPM resume command
144 is sent during an S3 resume.
Kyösti Mälkkib1b9c932013-10-17 16:38:25 +0300145
Daisuke Nojiri2624c8d2014-11-13 11:35:52 -0800146config PHYSICAL_REC_SWITCH
147 bool "Physical recovery switch is present"
148 default n
149 help
150 Whether this platform has a physical recovery switch
151
Patrick Georgiadd740a2015-05-28 12:02:00 +0200152config LID_SWITCH
153 bool "Lid switch is present"
154 default n
155 help
156 Whether this platform has a lid switch
157
Vadim Bendeburyfe4253c2015-03-12 19:22:51 -0700158config WIPEOUT_SUPPORTED
159 bool "User is able to request factory reset"
160 default n
161 help
162 When this option is enabled, the firmware provides the ability to
163 signal the application the need for factory reset (a.k.a. wipe
164 out) of the device
165
Daisuke Nojiri742fc8d2014-10-10 10:51:06 -0700166source src/vendorcode/google/chromeos/vboot2/Kconfig
167
168endif # CHROMEOS
Kyösti Mälkkib1b9c932013-10-17 16:38:25 +0300169endmenu