blob: 74e003d5affe06256426a14215bdb11002b1b8e4 [file] [log] [blame]
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -07001config SOC_INTEL_ELKHARTLAKE
2 bool
3 help
4 Intel Elkhartlake support
5
6if SOC_INTEL_ELKHARTLAKE
7
8config CPU_SPECIFIC_OPTIONS
9 def_bool y
10 select ACPI_INTEL_HARDWARE_SLEEP_VALUES
Angel Pons8e035e32021-06-22 12:58:20 +020011 select ARCH_X86
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070012 select BOOT_DEVICE_SUPPORTS_WRITES
13 select CACHE_MRC_SETTINGS
14 select CPU_INTEL_COMMON
15 select CPU_INTEL_FIRMWARE_INTERFACE_TABLE
Michael Niewöhnerfe6070f2020-10-04 15:16:04 +020016 select CPU_SUPPORTS_PM_TIMER_EMULATION
Subrata Banik34f26b22022-02-10 12:38:02 +053017 select DISPLAY_FSP_VERSION_INFO
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070018 select FSP_COMPRESS_FSP_S_LZ4
19 select FSP_M_XIP
Subrata Banik4ed9f9a2020-10-31 22:01:55 +053020 select FSP_STATUS_GLOBAL_RESET_REQUIRED_3
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070021 select GENERIC_GPIO_LIB
22 select HAVE_FSP_GOP
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070023 select HAVE_SMI_HANDLER
24 select IDT_IN_EVERY_STAGE
Subrata Banike9d06532022-01-28 23:06:58 +053025 select INTEL_CAR_NEM
Subrata Banik34f26b22022-02-10 12:38:02 +053026 select INTEL_DESCRIPTOR_MODE_CAPABLE
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070027 select INTEL_GMA_ACPI
28 select INTEL_GMA_ADD_VBT if RUN_FSP_GOP
Aamir Bohra30cca6c2021-02-04 20:57:51 +053029 select MP_SERVICES_PPI_V1
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070030 select MRC_SETTINGS_PROTECT
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070031 select PARALLEL_MP_AP_WORK
Tan, Lean Shengece0fe32020-09-03 07:32:48 -070032 select PLATFORM_USES_FSP2_1
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070033 select PMC_GLOBAL_RESET_ENABLE_LOCK
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070034 select SOC_INTEL_COMMON
35 select SOC_INTEL_COMMON_ACPI_WAKE_SOURCE
36 select SOC_INTEL_COMMON_BLOCK
37 select SOC_INTEL_COMMON_BLOCK_ACPI
Michael Niewöhner02275be2020-11-12 23:50:37 +010038 select SOC_INTEL_COMMON_BLOCK_ACPI_CPPC
Angel Pons98f672a2021-02-19 19:42:10 +010039 select SOC_INTEL_COMMON_BLOCK_ACPI_GPIO
Michael Niewöhner8a6c34e2021-01-01 21:26:42 +010040 select SOC_INTEL_COMMON_BLOCK_ACPI_LPIT
Tim Wawrzynczak46c5f8f2021-07-01 08:45:47 -060041 select SOC_INTEL_COMMON_BLOCK_ACPI_PEP
Subrata Banik21974ab2020-10-31 21:40:43 +053042 select SOC_INTEL_COMMON_BLOCK_CAR
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070043 select SOC_INTEL_COMMON_BLOCK_CHIP_CONFIG
44 select SOC_INTEL_COMMON_BLOCK_CPU
45 select SOC_INTEL_COMMON_BLOCK_CPU_MPINIT
Angel Ponsa4cd9112021-02-19 19:23:38 +010046 select SOC_INTEL_COMMON_BLOCK_CPU_SMMRELOCATE
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070047 select SOC_INTEL_COMMON_BLOCK_GPIO_DUAL_ROUTE_SUPPORT
48 select SOC_INTEL_COMMON_BLOCK_GSPI_VERSION_2
49 select SOC_INTEL_COMMON_BLOCK_HDA
Subrata Banik34f26b22022-02-10 12:38:02 +053050 select HAVE_INTEL_FSP_REPO
Subrata Banike49a6152022-01-28 23:03:55 +053051 select HECI_DISABLE_USING_SMM if DISABLE_HECI1_AT_PRE_BOOT
Lean Sheng Tan75020002021-06-30 01:47:48 -070052 select SOC_INTEL_COMMON_BLOCK_PMC_EPOC
53 select SOC_INTEL_COMMON_BLOCK_POWER_LIMIT
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070054 select SOC_INTEL_COMMON_BLOCK_SA
55 select SOC_INTEL_COMMON_BLOCK_SCS
56 select SOC_INTEL_COMMON_BLOCK_SMM
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070057 select SOC_INTEL_COMMON_BLOCK_SMM_IO_TRAP
Subrata Banik4ed9f9a2020-10-31 22:01:55 +053058 select SOC_INTEL_COMMON_FSP_RESET
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070059 select SOC_INTEL_COMMON_PCH_BASE
60 select SOC_INTEL_COMMON_RESET
Subrata Banikaf27ac22022-02-18 00:44:15 +053061 select SOC_INTEL_MEM_MAPPED_PM_CONFIGURATION
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070062 select SSE2
63 select SUPPORT_CPU_UCODE_IN_CBFS
64 select TSC_MONOTONIC_TIMER
65 select UDELAY_TSC
66 select UDK_202005_BINDING
Subrata Banik34f26b22022-02-10 12:38:02 +053067 select USE_FSP_NOTIFY_PHASE_POST_PCI_ENUM
Tan, Lean Shengece0fe32020-09-03 07:32:48 -070068
69config MAX_CPUS
70 int
71 default 4
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070072
73config DCACHE_RAM_BASE
74 default 0xfef00000
75
76config DCACHE_RAM_SIZE
Tan, Lean Shengece0fe32020-09-03 07:32:48 -070077 default 0xc0000
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070078 help
79 The size of the cache-as-ram region required during bootblock
80 and/or romstage.
81
82config DCACHE_BSP_STACK_SIZE
83 hex
Tan, Lean Shengece0fe32020-09-03 07:32:48 -070084 default 0x30000
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070085 help
86 The amount of anticipated stack usage in CAR by bootblock and
Tan, Lean Shengece0fe32020-09-03 07:32:48 -070087 other stages. In the case of FSP_USES_CB_STACK default value will be
88 sum of FSP-M stack requirement (192KiB) and CB romstage stack requirement (~1KiB).
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070089
90config FSP_TEMP_RAM_SIZE
91 hex
Tan, Lean Shengece0fe32020-09-03 07:32:48 -070092 default 0x40000
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -070093 help
94 The amount of anticipated heap usage in CAR by FSP.
95 Refer to Platform FSP integration guide document to know
96 the exact FSP requirement for Heap setup.
97
98config IFD_CHIPSET
99 string
100 default "ehl"
101
102config IED_REGION_SIZE
103 hex
Tan, Lean Shengece0fe32020-09-03 07:32:48 -0700104 default 0x0
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700105
106config HEAP_SIZE
107 hex
108 default 0x8000
109
110config MAX_ROOT_PORTS
111 int
Tan, Lean Shengece0fe32020-09-03 07:32:48 -0700112 default 7
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700113
Lean Sheng Tanc6c54432021-05-30 09:08:35 -0700114config MAX_SATA_PORTS
115 int
116 default 2
117
Rizwan Qureshia9794602021-04-08 20:31:47 +0530118config MAX_PCIE_CLOCK_SRC
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700119 int
120 default 6
121
122config SMM_TSEG_SIZE
123 hex
Tan, Lean Shengece0fe32020-09-03 07:32:48 -0700124 default 0x1000000
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700125
126config SMM_RESERVED_SIZE
127 hex
128 default 0x200000
129
130config PCR_BASE_ADDRESS
131 hex
132 default 0xfd000000
133 help
134 This option allows you to select MMIO Base Address of sideband bus.
135
Shelley Chen4e9bb332021-10-20 15:43:45 -0700136config ECAM_MMCONF_BASE_ADDRESS
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700137 default 0xc0000000
138
139config CPU_BCLK_MHZ
140 int
141 default 100
142
143config SOC_INTEL_COMMON_BLOCK_GSPI_CLOCK_MHZ
144 int
145 default 120
146
Michael Niewöhnerdadcbfb2020-10-04 14:48:05 +0200147config CPU_XTAL_HZ
148 default 38400000
149
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700150config DRIVERS_I2C_DESIGNWARE_CLOCK_MHZ
151 int
152 default 133
153
154config SOC_INTEL_COMMON_BLOCK_GSPI_MAX
155 int
156 default 3
157
158config SOC_INTEL_I2C_DEV_MAX
159 int
Tan, Lean Shengece0fe32020-09-03 07:32:48 -0700160 default 8
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700161
162config SOC_INTEL_UART_DEV_MAX
163 int
164 default 3
165
166config CONSOLE_UART_BASE_ADDRESS
167 hex
Tan, Lean Shengece0fe32020-09-03 07:32:48 -0700168 default 0xfe042000
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700169 depends on INTEL_LPSS_UART_FOR_CONSOLE
170
171# Clock divider parameters for 115200 baud rate
Lean Sheng Tan471dca72021-07-19 01:57:16 -0700172# Baudrate = (UART source clock * M) /(N *16)
173# EHL UART source clock: 120MHz
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700174config SOC_INTEL_COMMON_LPSS_UART_CLK_M_VAL
175 hex
Lean Sheng Tan471dca72021-07-19 01:57:16 -0700176 default 0x25a
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700177
178config SOC_INTEL_COMMON_LPSS_UART_CLK_N_VAL
179 hex
Lean Sheng Tan471dca72021-07-19 01:57:16 -0700180 default 0x7fff
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700181
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700182config VBOOT
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700183 select VBOOT_MUST_REQUEST_DISPLAY
184 select VBOOT_STARTS_IN_BOOTBLOCK
185 select VBOOT_VBNV_CMOS
186 select VBOOT_VBNV_CMOS_BACKUP_TO_FLASH
187
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700188config CBFS_SIZE
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700189 default 0x200000
190
191config FSP_HEADER_PATH
Lean Sheng Tan79fcadb2021-06-04 08:54:29 -0700192 default "3rdparty/fsp/ElkhartLakeFspBinPkg/Include/"
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700193
194config FSP_FD_PATH
Lean Sheng Tan79fcadb2021-06-04 08:54:29 -0700195 string
196 depends on FSP_USE_REPO
197 default "3rdparty/fsp/ElkhartLakeFspBinPkg/FspBin/FSPRel.bin"
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700198
Lean Sheng Tan5cd75792021-06-09 13:58:12 -0700199config PSE_ENABLE
200 bool "Enable PSE ARM controller"
201 help
202 Enable PSE IP. The PSE describes the integrated programmable
203 service engine that is designed together with x86 Atom cores
204 as an Asymmetric Multi-Processing (AMP) system.
205
206config ADD_PSE_IMAGE_TO_CBFS
207 bool "Add PSE Firmware to CBFS"
208 depends on PSE_ENABLE
209 default n
210 help
211 PSE FW binary is required to use PSE dedicated peripherals from
212 x86 subsystem. Once PSE is enabled, the FW will be loaded from
213 CBFS by FSP and executed.
214
215config PSE_IMAGE_FILE
216 string "PSE binary path and filename"
217 depends on ADD_PSE_IMAGE_TO_CBFS
218 help
219 The path and filename of the PSE binary.
220
221config PSE_FW_FILE_SIZE_KIB
222 hex "Memory buffer (KiB) for PSE FW image"
223 depends on ADD_PSE_IMAGE_TO_CBFS
224 default 0x200
225 help
226 It is recommended to allocate at least 512 KiB for PSE FW.
227
228config PSE_CONFIG_BUFFER_SIZE_KIB
229 hex "Memory buffer (KiB) for PSE config data"
230 depends on ADD_PSE_IMAGE_TO_CBFS
231 default 0x100
232 help
233 It is recommended to allocate at least 256 KiB for PSE config
234 data (FSP will append PSE config data to memory region right
235 after PSE FW memory region).
236
Mario Scheithauereda66c32022-04-26 13:50:52 +0200237config EHL_TSN_DRIVER
238 bool
239 default n
240 help
241 Enable TSN GbE driver to provide board specific settings in the GBE MAC.
242 As an example of a possible change, the MAC address could be adjusted.
243
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700244config SOC_INTEL_ELKHARTLAKE_DEBUG_CONSENT
245 int "Debug Consent for EHL"
246 # USB DBC is more common for developers so make this default to 3 if
247 # SOC_INTEL_DEBUG_CONSENT=y
248 default 3 if SOC_INTEL_DEBUG_CONSENT
249 default 0
250 help
251 This is to control debug interface on SOC.
252 Setting non-zero value will allow to use DBC or DCI to debug SOC.
253 PlatformDebugConsent in FspmUpd.h has the details.
254
255 Desired platform debug type are
256 0:Disabled, 1:Enabled (DCI OOB+[DbC]), 2:Enabled (DCI OOB),
257 3:Enabled (USB3 DbC), 4:Enabled (XDP/MIPI60), 5:Enabled (USB2 DbC),
258 6:Enable (2-wire DCI OOB), 7:Manual
259
260config PRERAM_CBMEM_CONSOLE_SIZE
261 hex
262 default 0x1400
Werner Zeh00998322022-01-18 12:31:08 +0100263
264config SOC_INTEL_ELKHARTLAKE_TCO_NO_REBOOT_EN
265 bool "Disable reset on second TCO expiration"
266 depends on SOC_INTEL_COMMON_BLOCK_TCO
267 default n
268 help
269 Setting this option will prevent a host reset if the TCO timer expires
270 for the second time. Since this feature is not exposed to the OS in the
271 standard TCO interface, this setting can be enabled on firmware level.
272 This might be useful depending on the TCO policy.
Tan, Lean Sheng05dfe312020-08-25 20:40:17 -0700273endif