blob: 87fc024b61e4854c3037ba2a50141d6144c2fe75 [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
Stefan Reinauerb89a7612012-03-30 01:01:51 +020024 select TPM
Martin Roth4aac08a2015-11-19 18:24:30 -070025 select TPM_INIT_FAILURE_IS_FATAL if PC80_SYSTEM && LPC_TPM
26 select SKIP_TPM_STARTUP_ON_NORMAL_BOOT if PC80_SYSTEM && LPC_TPM
Kyösti Mälkki5687fc92013-11-28 18:11:49 +020027 select BOOTMODE_STRAPS
Martin Rothc7c30a82015-12-06 18:28:05 -070028 select ELOG if SPI_FLASH
Stefan Reinauer4bddb752015-05-28 13:48:47 -070029 select COLLECT_TIMESTAMPS
Patrick Georgi463d6652015-06-25 17:01:26 +020030 select VBOOT_VERIFY_FIRMWARE
Aaron Durbin6d720f32015-12-08 17:00:23 -060031 select MULTIPLE_CBFS_INSTANCES
Stefan Reinauerb89a7612012-03-30 01:01:51 +020032 help
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070033 Enable ChromeOS specific features like the GPIO sub table in
34 the coreboot table. NOTE: Enabling this option on an unsupported
35 board will most likely break your build.
Stefan Reinauerb89a7612012-03-30 01:01:51 +020036
Kyösti Mälkkib1b9c932013-10-17 16:38:25 +030037if CHROMEOS
Stefan Reinauerf17789c2012-04-03 11:22:15 -070038
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070039config VBNV_OFFSET
40 hex
41 default 0x26
Stefan Reinauer3e4e3032013-03-20 14:08:04 -070042 depends on PC80_SYSTEM
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070043 help
44 CMOS offset for VbNv data. This value must match cmos.layout
45 in the mainboard directory, minus 14 bytes for the RTC.
Stefan Reinauerb89a7612012-03-30 01:01:51 +020046
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070047config VBNV_SIZE
48 hex
49 default 0x10
Stefan Reinauer3e4e3032013-03-20 14:08:04 -070050 depends on PC80_SYSTEM
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070051 help
52 CMOS storage size for VbNv data. This value must match cmos.layout
53 in the mainboard directory.
Stefan Reinauerb89a7612012-03-30 01:01:51 +020054
David Hendricksdad16b12014-08-22 15:40:15 -070055config CHROMEOS_VBNV_CMOS
56 bool "Vboot non-volatile storage in CMOS."
57 default n
58 help
59 VBNV is stored in CMOS
60
61config CHROMEOS_VBNV_EC
62 bool "Vboot non-volatile storage in EC."
63 default n
64 help
65 VBNV is stored in EC
66
Daisuke Nojiri477dd182014-10-08 11:32:23 -070067config CHROMEOS_VBNV_FLASH
68 def_bool n
69 help
70 VBNV is stored in flash storage
71
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070072config CHROMEOS_RAMOOPS
73 bool "Reserve space for Chrome OS ramoops"
74 default y
75
Aaron Durbin06ece7d2014-02-14 00:30:04 -060076config CHROMEOS_RAMOOPS_DYNAMIC
77 bool "Allocate RAM oops buffer in cbmem"
78 default n
Furquan Shaikhaed887f2014-11-08 17:32:38 -080079 depends on CHROMEOS_RAMOOPS && HAVE_ACPI_TABLES
Aaron Durbin06ece7d2014-02-14 00:30:04 -060080
Furquan Shaikhefb546d2014-11-08 17:34:27 -080081config CHROMEOS_RAMOOPS_NON_ACPI
82 bool "Allocate RAM oops buffer in cbmem passed through cb tables to payload"
83 default n
84 depends on CHROMEOS_RAMOOPS && !HAVE_ACPI_TABLES
85
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070086config CHROMEOS_RAMOOPS_RAM_START
87 hex "Physical address of preserved RAM"
88 default 0x00f00000
Aaron Durbin06ece7d2014-02-14 00:30:04 -060089 depends on CHROMEOS_RAMOOPS && !CHROMEOS_RAMOOPS_DYNAMIC
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070090
91config CHROMEOS_RAMOOPS_RAM_SIZE
92 hex "Size of preserved RAM"
93 default 0x00100000
94 depends on CHROMEOS_RAMOOPS
Stefan Reinauerf17789c2012-04-03 11:22:15 -070095
Aaron Durbinfd795622013-03-01 17:12:26 -060096config EC_SOFTWARE_SYNC
97 bool "Enable EC software sync"
98 default n
Aaron Durbin1124cec2015-04-22 10:41:42 -050099 depends on VBOOT_VERIFY_FIRMWARE
Aaron Durbinfd795622013-03-01 17:12:26 -0600100 help
101 EC software sync is a mechanism where the AP helps the EC verify its
102 firmware similar to how vboot verifies the main system firmware. This
103 option selects whether depthcharge should support EC software sync.
104
Duncan Laurie338c6172014-10-16 17:00:23 -0700105config VBOOT_EC_SLOW_UPDATE
106 bool "EC is slow to update"
107 default n
108 depends on EC_SOFTWARE_SYNC
109 help
110 Whether the EC (or PD) is slow to update and needs to display a
111 screen that informs the user the update is happening.
112
113config VBOOT_OPROM_MATTERS
114 bool "Video option ROM matters"
115 default n
116 depends on VBOOT_VERIFY_FIRMWARE
117 help
118 Whether the video option ROM has run matters on this platform.
119
Aaron Durbinfd795622013-03-01 17:12:26 -0600120config VIRTUAL_DEV_SWITCH
121 bool "Virtual developer switch support"
122 default n
Aaron Durbin1124cec2015-04-22 10:41:42 -0500123 depends on VBOOT_VERIFY_FIRMWARE
Aaron Durbinfd795622013-03-01 17:12:26 -0600124 help
125 Whether this platform has a virtual developer switch.
126
Aaron Durbin6d65f792015-04-21 15:33:01 -0500127config VBOOT_VERIFY_FIRMWARE
128 bool "Verify firmware with vboot."
129 default n
Patrick Georgi463d6652015-06-25 17:01:26 +0200130 depends on HAVE_HARD_RESET
Aaron Durbin6d65f792015-04-21 15:33:01 -0500131 help
132 Enabling VBOOT_VERIFY_FIRMWARE will use vboot to verify the components
133 of the firmware (stages, payload, etc).
134
Stefan Reinauerc7fe2802012-09-19 11:10:15 -0700135config NO_TPM_RESUME
136 bool
137 default n
Stefan Reinauerc7fe2802012-09-19 11:10:15 -0700138 help
139 On some boards the TPM stays powered up in S3. On those
140 boards, booting Windows will break if the TPM resume command
141 is sent during an S3 resume.
Kyösti Mälkkib1b9c932013-10-17 16:38:25 +0300142
Daisuke Nojiri2624c8d2014-11-13 11:35:52 -0800143config PHYSICAL_REC_SWITCH
144 bool "Physical recovery switch is present"
145 default n
146 help
147 Whether this platform has a physical recovery switch
148
Patrick Georgiadd740a2015-05-28 12:02:00 +0200149config LID_SWITCH
150 bool "Lid switch is present"
151 default n
152 help
153 Whether this platform has a lid switch
154
Vadim Bendeburyfe4253c2015-03-12 19:22:51 -0700155config WIPEOUT_SUPPORTED
156 bool "User is able to request factory reset"
157 default n
158 help
159 When this option is enabled, the firmware provides the ability to
160 signal the application the need for factory reset (a.k.a. wipe
161 out) of the device
162
Daisuke Nojiri742fc8d2014-10-10 10:51:06 -0700163source src/vendorcode/google/chromeos/vboot2/Kconfig
164
165endif # CHROMEOS
Kyösti Mälkkib1b9c932013-10-17 16:38:25 +0300166endmenu