summaryrefslogtreecommitdiff
path: root/src/vendorcode/google/chromeos/Kconfig
blob: 0528d00fea6a692e6a0d1981abc050ddfb5fce9c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
## SPDX-License-Identifier: GPL-2.0-only

config MAINBOARD_HAS_CHROMEOS
	def_bool n

menu "ChromeOS"
	depends on MAINBOARD_HAS_CHROMEOS

config CHROMEOS
	bool "Build for ChromeOS"
	default n
	select ELOG if BOOT_DEVICE_SUPPORTS_WRITES
	select COLLECT_TIMESTAMPS
	select VBOOT
	select VPD
	select VBOOT_SLOTS_RW_AB
	help
	  Enable ChromeOS specific features like the GPIO sub table in
	  the coreboot table. NOTE: Enabling this option on an unsupported
	  board will most likely break your build.

if CHROMEOS

config CR50_IMMEDIATELY_COMMIT_FW_SECDATA
	bool
	default y if TPM_CR50

config CHROMEOS_RAMOOPS
	bool "Reserve space for Chrome OS ramoops"
	default y

config CHROMEOS_RAMOOPS_DYNAMIC
	bool "Allocate RAM oops buffer in cbmem"
	default n
	depends on CHROMEOS_RAMOOPS && HAVE_ACPI_TABLES

config CHROMEOS_RAMOOPS_NON_ACPI
	bool "Allocate RAM oops buffer in cbmem passed through cb tables to payload"
	default y if !HAVE_ACPI_TABLES
	depends on CHROMEOS_RAMOOPS && !HAVE_ACPI_TABLES

config CHROMEOS_RAMOOPS_RAM_START
	hex "Physical address of preserved RAM"
	default 0x00f00000
	depends on CHROMEOS_RAMOOPS && !CHROMEOS_RAMOOPS_DYNAMIC

config CHROMEOS_RAMOOPS_RAM_SIZE
	hex "Size of preserved RAM"
	default 0x00100000
	depends on CHROMEOS_RAMOOPS

config NO_TPM_RESUME
	bool
	default n
	help
	  On some boards the TPM stays powered up in S3. On those
	  boards, booting Windows will break if the TPM resume command
	  is sent during an S3 resume.

config HAVE_REGULATORY_DOMAIN
	bool "Add regulatory domain methods"
	default n
	help
	 This option is needed to add ACPI regulatory domain methods

config CHROMEOS_DISABLE_PLATFORM_HIERARCHY_ON_RESUME
	bool
	default y
	depends on TPM2 && RESUME_PATH_SAME_AS_BOOT
	help
	  Disable the platform heirarchy on resume path if the firmware
	  is involved in resume. The hierarchy is disabled prior to jumping
	  to the OS.  Note that this option is sepcific to TPM2 boards.
	  This option is auto selected if CHROMEOS because it matches with
	  vboot_reference model which disables the platform hierarchy in
	  the boot loader. However, those operations need to be symmetric
	  on normal boot as well as resume and coreboot is only involved
	  in the resume piece w.r.t. the platform hierarchy.

config CHROMEOS_USE_EC_WATCHDOG_FLAG
	bool
	default n
	help
	  Use the AP watchdog flag stored in EC.

config CHROMEOS_DSM_CALIB
	bool
	default n
	help
	  On some boards, there are calibrated parameters for Dynamic Speaker Management(DSM)
	  stored in VPD. Enable this config to read and parse these VPD values and write them
	  to ACPI DSD table in device driver. These parameters will be applied by kernel driver
	  through device property at boot.

config CHROMEOS_CSE_BOARD_RESET_OVERRIDE
	bool
	default n
	depends on SOC_INTEL_CSE_LITE_SKU
	help
	  On some boards that run old firmware version in cr50, Embedded Controller (EC) needs
	  to trigger the cold reset of Application Processor (AP) when CSE jumps from RO to RW
	  so that cr50 resets the TPM state. This is required on boards where the cr50 firmware
	  does not understand the new cr50 strap config (applicable only to boards using strap
	  config 0xe). Enabling this config will help to override the default global reset.

endif # CHROMEOS
endmenu